]> _ Git - fluidbook-toolbox.git/commitdiff
wait #6613 @2
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Mon, 8 Jan 2024 13:55:47 +0000 (14:55 +0100)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Mon, 8 Jan 2024 13:55:47 +0000 (14:55 +0100)
app/Fluidbook/Farm.php
bin/startup.sh
resources/emailconfig/spamassassin-rules.cf

index f75424cf5c9dcb796149b06cb942156f3fc79fa4..37178c9a89216c554dc9f218603cf3f321ca0ff2 100644 (file)
@@ -219,19 +219,29 @@ class Farm
 
     public static function cutPDF($pdf, $mode, $out)
     {
-        return self::_getFile(['operation' => 'cutpdf',
-            'pdf' => $pdf,
-            'out' => $out,
-            'mode' => $mode,
-        ], 0, false, true);
+        return static::lock($pdf, 'cut_' . $mode, function () use ($pdf, $mode, $out) {
+            if (file_exists($out) && filesize($out) > 0 && filemtime($out) >= filemtime($pdf)) {
+                return $out;
+            }
+            return self::_getFile(['operation' => 'cutpdf',
+                'pdf' => $pdf,
+                'out' => $out,
+                'mode' => $mode,
+            ], 0, false, true);
+        });
     }
 
     public static function trimPDF($pdf, $out)
     {
-        return self::_getFile(['operation' => 'trimpdf',
-            'pdf' => $pdf,
-            'out' => $out,
-        ], 0, false, true);
+        return static::lock($pdf, 'trim', function () use ($pdf, $out) {
+            if (file_exists($out) && filesize($out) > 0 && filemtime($out) >= filemtime($pdf)) {
+                return $out;
+            }
+            return self::_getFile(['operation' => 'trimpdf',
+                'pdf' => $pdf,
+                'out' => $out,
+            ], 0, false, true);
+        });
     }
 
     public static function splitPDF($pdf, $out)
@@ -243,30 +253,36 @@ class Farm
 
     public static function extractLinks($pdf, $out)
     {
-        return self::_getFile(['operation' => 'extractlinks',
-            'pdf' => $pdf,
-            'out' => $out], 0, false, true);
+        return static::lock($pdf, 'links', function () use ($pdf, $out) {
+            return self::_getFile(['operation' => 'extractlinks',
+                'pdf' => $pdf,
+                'out' => $out], 0, false, true);
+        });
     }
 
     public static function extractTexts($pdf, $out, $mode, $extractionMethod, $ignoreSeparators)
     {
-        return self::_getFile(
-            ['operation' => 'extracttexts',
-                'pdf' => $pdf,
-                'out' => $out,
-                'mode' => $mode,
-                'method' => $extractionMethod,
-                'ignoreseparators' => $ignoreSeparators], 0, false, true);
+        return static::lock($pdf, 'texts_' . $mode . '_' . $extractionMethod . '_' . md5($ignoreSeparators), function () use ($pdf, $out, $mode, $extractionMethod, $ignoreSeparators) {
+            return self::_getFile(
+                ['operation' => 'extracttexts',
+                    'pdf' => $pdf,
+                    'out' => $out,
+                    'mode' => $mode,
+                    'method' => $extractionMethod,
+                    'ignoreseparators' => $ignoreSeparators], 0, false, true);
+        });
     }
 
     public static function extractHighlightsData($pdf, $out, $mode, $ignoreSeparators)
     {
-        return self::_getFile(
-            ['operation' => 'extracthightlightsdata',
-                'pdf' => $pdf,
-                'out' => $out,
-                'mode' => $mode,
-                'ignoreseparators' => $ignoreSeparators], 0, false, true);
+        return static::lock($pdf, 'texts_' . $mode . '_' . md5($ignoreSeparators), function () use ($pdf, $out, $mode, $ignoreSeparators) {
+            return self::_getFile(
+                ['operation' => 'extracthightlightsdata',
+                    'pdf' => $pdf,
+                    'out' => $out,
+                    'mode' => $mode,
+                    'ignoreseparators' => $ignoreSeparators], 0, false, true);
+        });
     }
 
     /**
index 9dddf8bfdb16670022a82b846704ced7874750fe..0cdc86c037ff0a8fa9b11b7b5b148b1c5b11a85b 100644 (file)
@@ -65,7 +65,6 @@ mkdir -p /application/protected/fluidbookpublication/docs
 if mountpoint -q "/application/protected/fluidbookpublication/docs"; then
     :
 else
-    #sshfs -o reconnect,ServerAliveInterval=15,ServerAliveCountMax=3 -o cache=no -o sshfs_sync -o uid=1002 -o gid=33 -o allow_other root@godzilla.cubedesigners.com:/data/fluidbook/docs /application/protected/fluidbookpublication/docs
     sshfs -o reconnect,ServerAliveInterval=15,ServerAliveCountMax=3 -o cache=no -o uid=1002 -o gid=33 -o allow_other root@dracula.cubedesigners.com:/data/fluidbook/docs /application/protected/fluidbookpublication/docs
 fi
 
index 5f7efe5de31b096d554759abaacc6222efb7567c..6c2a85240f765e7f20649caa8438f3db2d4d9b5c 100644 (file)
@@ -25,6 +25,7 @@ describe X_FLUIDBOOK_SPAM                     Message has been marked as SPAM by Fluidbook
 score X_FLUIDBOOK_SPAM      110.0
 
 score DKIM_INVALID      1
+score BITCOIN_PAY_ME    6
 
 # TXRep
 loadplugin Mail::SpamAssassin::Plugin::TxRep