diff options
author | Robin Appelman <icewind@owncloud.com> | 2015-02-17 16:49:14 +0100 |
---|---|---|
committer | Robin Appelman <icewind@owncloud.com> | 2015-02-25 15:08:40 +0100 |
commit | 74ae7b8929a7fd3f539fd15efb9533424114a480 (patch) | |
tree | 4388660851beff515a0ec78a2bea199c9a057fb2 /lib/private/command/commandjob.php | |
parent | f5b62267325415b307cf2d47b69d11d4337536e4 (diff) | |
download | nextcloud-server-74ae7b8929a7fd3f539fd15efb9533424114a480.tar.gz nextcloud-server-74ae7b8929a7fd3f539fd15efb9533424114a480.zip |
Add async command system to handle asynchronous operations
Diffstat (limited to 'lib/private/command/commandjob.php')
-rw-r--r-- | lib/private/command/commandjob.php | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/lib/private/command/commandjob.php b/lib/private/command/commandjob.php new file mode 100644 index 00000000000..b2c7d30ee56 --- /dev/null +++ b/lib/private/command/commandjob.php @@ -0,0 +1,26 @@ +<?php +/** + * Copyright (c) 2015 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Command; + +use OC\BackgroundJob\QueuedJob; +use OCP\Command\ICommand; + +/** + * Wrap a command in the background job interface + */ +class CommandJob extends QueuedJob { + protected function run($serializedCommand) { + $command = unserialize($serializedCommand); + if ($command instanceof ICommand) { + $command->handle(); + } else { + throw new \InvalidArgumentException('Invalid serialized command'); + } + } +} |