You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: developer_manual/digging_deeper/task_processing.rst
+38-1Lines changed: 38 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -347,7 +347,7 @@ A **Task processing provider** will usually be a class that implements the inter
347
347
use OCP\TaskProcessing\SummaryTaskType;
348
348
use OCP\IL10N;
349
349
350
-
class Provider implements ISynchrounousProvider {
350
+
class Provider implements ISynchronousProvider {
351
351
352
352
public function __construct(
353
353
private IL10N $l,
@@ -417,6 +417,43 @@ Important to note here is that ``Image``, ``Audio``, ``Video`` and ``File`` slot
417
417
418
418
This class would typically be saved into a file in ``lib/TaskProcessing`` of your app but you are free to put it elsewhere as long as it's loadable by Nextcloud's :ref:`dependency injection container<dependency-injection>`.
419
419
420
+
Implementing an advanced TaskProcessing provider
421
+
------------------------------------------------
422
+
423
+
The ``\OCP\TaskProcessing\ISynchronousOptionsAwareProvider`` interface is available if you want your provider
424
+
to support watermarking or streaming. If your provider implements ``\OCP\TaskProcessing\ISynchronousOptionsAwareProvider``,
Copy file name to clipboardExpand all lines: developer_manual/release_notes/new.rst
+16Lines changed: 16 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -34,3 +34,19 @@ but they might be required to have a fully working instance later on.
34
34
Expensive repair steps are only executed when explicitly requested by the administrator.
35
35
36
36
See :ref:`migration-repair-steps` for details.
37
+
38
+
Added APIs
39
+
^^^^^^^^^^
40
+
41
+
- There is a new TaskProcessing provider interface: ``\OCP\TaskProcessing\ISynchronousOptionsAwareProvider``. It takes a ``\OCP\TaskProcessing\SynchronousProviderOptions`` option object that contains includeWatermarks, preferStreaming and the callback to report intermediate output.
42
+
43
+
Changed APIs
44
+
^^^^^^^^^^^^
45
+
46
+
- The ``\OCP\TaskProcessing\Task`` class now has ``getPreferStreaming`` and ``setPreferStreaming`` methods for indicating whether the provider should report the output progressively if it supports it.
47
+
- The TaskProcessing OCS API now also accepts the ``preferStreaming`` flag when scheduling tasks.
48
+
49
+
Deprecated APIs
50
+
^^^^^^^^^^^^^^^
51
+
52
+
- ``\OCP\TaskProcessing\ISynchronousWatermarkingProvider`` is now deprecated. ``\OCP\TaskProcessing\ISynchronousOptionsAwareProvider`` should now be used instead.
0 commit comments