You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by nd...@apache.org on 2015/05/01 23:32:56 UTC
[09/57] [partial] airavata-php-gateway git commit: AIRAVATA 1632 +
Job Description for Admin Dashboard
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Pagination/composer.json
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Pagination/composer.json b/vendor/laravel/framework/src/Illuminate/Pagination/composer.json
new file mode 100755
index 0000000..432459c
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Pagination/composer.json
@@ -0,0 +1,30 @@
+{
+ "name": "illuminate/pagination",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Taylor Otwell",
+ "email": "taylorotwell@gmail.com"
+ }
+ ],
+ "require": {
+ "php": ">=5.4.0",
+ "illuminate/http": "4.2.*",
+ "illuminate/support": "4.2.*",
+ "illuminate/view": "4.2.*",
+ "symfony/http-foundation": "2.5.*",
+ "symfony/translation": "2.5.*"
+ },
+ "autoload": {
+ "psr-0": {
+ "Illuminate\\Pagination": ""
+ }
+ },
+ "target-dir": "Illuminate/Pagination",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "4.2-dev"
+ }
+ },
+ "minimum-stability": "dev"
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Pagination/views/simple.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Pagination/views/simple.php b/vendor/laravel/framework/src/Illuminate/Pagination/views/simple.php
new file mode 100755
index 0000000..3a13482
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Pagination/views/simple.php
@@ -0,0 +1,15 @@
+<?php
+ $presenter = new Illuminate\Pagination\BootstrapPresenter($paginator);
+
+ $trans = $environment->getTranslator();
+?>
+
+<?php if ($paginator->getLastPage() > 1): ?>
+ <ul class="pager">
+ <?php
+ echo $presenter->getPrevious($trans->trans('pagination.previous'));
+
+ echo $presenter->getNext($trans->trans('pagination.next'));
+ ?>
+ </ul>
+<?php endif; ?>
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Pagination/views/slider-3.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Pagination/views/slider-3.php b/vendor/laravel/framework/src/Illuminate/Pagination/views/slider-3.php
new file mode 100755
index 0000000..5757e6c
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Pagination/views/slider-3.php
@@ -0,0 +1,9 @@
+<?php
+ $presenter = new Illuminate\Pagination\BootstrapPresenter($paginator);
+?>
+
+<?php if ($paginator->getLastPage() > 1): ?>
+ <ul class="pagination">
+ <?php echo $presenter->render(); ?>
+ </ul>
+<?php endif; ?>
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Pagination/views/slider.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Pagination/views/slider.php b/vendor/laravel/framework/src/Illuminate/Pagination/views/slider.php
new file mode 100755
index 0000000..2344162
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Pagination/views/slider.php
@@ -0,0 +1,11 @@
+<?php
+ $presenter = new Illuminate\Pagination\BootstrapPresenter($paginator);
+?>
+
+<?php if ($paginator->getLastPage() > 1): ?>
+ <div class="pagination">
+ <ul>
+ <?php echo $presenter->render(); ?>
+ </ul>
+ </div>
+<?php endif; ?>
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/BeanstalkdQueue.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/BeanstalkdQueue.php b/vendor/laravel/framework/src/Illuminate/Queue/BeanstalkdQueue.php
new file mode 100755
index 0000000..0fe29f6
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/BeanstalkdQueue.php
@@ -0,0 +1,142 @@
+<?php namespace Illuminate\Queue;
+
+use Pheanstalk_Job;
+use Pheanstalk_Pheanstalk as Pheanstalk;
+use Illuminate\Queue\Jobs\BeanstalkdJob;
+
+class BeanstalkdQueue extends Queue implements QueueInterface {
+
+ /**
+ * The Pheanstalk instance.
+ *
+ * @var \Pheanstalk_Pheanstalk
+ */
+ protected $pheanstalk;
+
+ /**
+ * The name of the default tube.
+ *
+ * @var string
+ */
+ protected $default;
+
+ /**
+ * The "time to run" for all pushed jobs.
+ *
+ * @var int
+ */
+ protected $timeToRun;
+
+ /**
+ * Create a new Beanstalkd queue instance.
+ *
+ * @param \Pheanstalk_Pheanstalk $pheanstalk
+ * @param string $default
+ * @param int $timeToRun
+ * @return void
+ */
+ public function __construct(Pheanstalk $pheanstalk, $default, $timeToRun)
+ {
+ $this->default = $default;
+ $this->timeToRun = $timeToRun;
+ $this->pheanstalk = $pheanstalk;
+ }
+
+ /**
+ * Push a new job onto the queue.
+ *
+ * @param string $job
+ * @param mixed $data
+ * @param string $queue
+ * @return mixed
+ */
+ public function push($job, $data = '', $queue = null)
+ {
+ return $this->pushRaw($this->createPayload($job, $data), $queue);
+ }
+
+ /**
+ * Push a raw payload onto the queue.
+ *
+ * @param string $payload
+ * @param string $queue
+ * @param array $options
+ * @return mixed
+ */
+ public function pushRaw($payload, $queue = null, array $options = array())
+ {
+ return $this->pheanstalk->useTube($this->getQueue($queue))->put(
+ $payload, Pheanstalk::DEFAULT_PRIORITY, Pheanstalk::DEFAULT_DELAY, $this->timeToRun
+ );
+ }
+
+ /**
+ * Push a new job onto the queue after a delay.
+ *
+ * @param \DateTime|int $delay
+ * @param string $job
+ * @param mixed $data
+ * @param string $queue
+ * @return mixed
+ */
+ public function later($delay, $job, $data = '', $queue = null)
+ {
+ $payload = $this->createPayload($job, $data);
+
+ $pheanstalk = $this->pheanstalk->useTube($this->getQueue($queue));
+
+ return $pheanstalk->put($payload, Pheanstalk::DEFAULT_PRIORITY, $this->getSeconds($delay), $this->timeToRun);
+ }
+
+ /**
+ * Pop the next job off of the queue.
+ *
+ * @param string $queue
+ * @return \Illuminate\Queue\Jobs\Job|null
+ */
+ public function pop($queue = null)
+ {
+ $queue = $this->getQueue($queue);
+
+ $job = $this->pheanstalk->watchOnly($queue)->reserve(0);
+
+ if ($job instanceof Pheanstalk_Job)
+ {
+ return new BeanstalkdJob($this->container, $this->pheanstalk, $job, $queue);
+ }
+ }
+
+ /**
+ * Delete a message from the Beanstalk queue.
+ *
+ * @param string $queue
+ * @param string $id
+ * @return void
+ */
+ public function deleteMessage($queue, $id)
+ {
+ $this->pheanstalk->useTube($this->getQueue($queue))->delete($id);
+ }
+
+ /**
+ * Get the queue or return the default.
+ *
+ * @param string|null $queue
+ * @return string
+ */
+ public function getQueue($queue)
+ {
+ return $queue ?: $this->default;
+ }
+
+ /**
+ * Get the underlying Pheanstalk instance.
+ *
+ * @return \Pheanstalk_Pheanstalk
+ */
+ public function getPheanstalk()
+ {
+ return $this->pheanstalk;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Capsule/Manager.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Capsule/Manager.php b/vendor/laravel/framework/src/Illuminate/Queue/Capsule/Manager.php
new file mode 100644
index 0000000..a182ede
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Capsule/Manager.php
@@ -0,0 +1,182 @@
+<?php namespace Illuminate\Queue\Capsule;
+
+use Illuminate\Queue\QueueManager;
+use Illuminate\Container\Container;
+use Illuminate\Queue\QueueServiceProvider;
+use Illuminate\Support\Traits\CapsuleManagerTrait;
+
+class Manager {
+
+ use CapsuleManagerTrait;
+
+ /**
+ * The queue manager instance.
+ *
+ * @var \Illuminate\Queue\QueueManager
+ */
+ protected $manager;
+
+ /**
+ * Create a new queue capsule manager.
+ *
+ * @param \Illuminate\Container\Container $container
+ * @return void
+ */
+ public function __construct(Container $container = null)
+ {
+ $this->setupContainer($container);
+
+ // Once we have the container setup, we will setup the default configuration
+ // options in the container "config" bindings. This just makes this queue
+ // manager behave correctly since all the correct binding are in place.
+ $this->setupDefaultConfiguration();
+
+ $this->setupManager();
+
+ $this->registerConnectors();
+ }
+
+ /**
+ * Setup the default queue configuration options.
+ *
+ * @return void
+ */
+ protected function setupDefaultConfiguration()
+ {
+ $this->container['config']['queue.default'] = 'default';
+ }
+
+ /**
+ * Build the queue manager instance.
+ *
+ * @return void
+ */
+ protected function setupManager()
+ {
+ $this->manager = new QueueManager($this->container);
+ }
+
+ /**
+ * Register the default connectors that the component ships with.
+ *
+ * @return void
+ */
+ protected function registerConnectors()
+ {
+ $provider = new QueueServiceProvider($this->container);
+
+ $provider->registerConnectors($this->manager);
+ }
+
+ /**
+ * Get a connection instance from the global manager.
+ *
+ * @param string $connection
+ * @return \Illuminate\Queue\QueueInterface
+ */
+ public static function connection($connection = null)
+ {
+ return static::$instance->getConnection($connection);
+ }
+
+ /**
+ * Push a new job onto the queue.
+ *
+ * @param string $job
+ * @param mixed $data
+ * @param string $queue
+ * @param string $connection
+ * @return mixed
+ */
+ public static function push($job, $data = '', $queue = null, $connection = null)
+ {
+ return static::$instance->connection($connection)->push($job, $data, $queue);
+ }
+
+ /**
+ * Push a new an array of jobs onto the queue.
+ *
+ * @param array $jobs
+ * @param mixed $data
+ * @param string $queue
+ * @param string $connection
+ * @return mixed
+ */
+ public static function bulk($jobs, $data = '', $queue = null, $connection = null)
+ {
+ return static::$instance->connection($connection)->bulk($jobs, $data, $queue);
+ }
+
+ /**
+ * Push a new job onto the queue after a delay.
+ *
+ * @param \DateTime|int $delay
+ * @param string $job
+ * @param mixed $data
+ * @param string $queue
+ * @param string $connection
+ * @return mixed
+ */
+ public static function later($delay, $job, $data = '', $queue = null, $connection = null)
+ {
+ return static::$instance->connection($connection)->later($delay, $job, $data, $queue);
+ }
+
+ /**
+ * Get a registered connection instance.
+ *
+ * @param string $name
+ * @return \Illuminate\Queue\QueueInterface
+ */
+ public function getConnection($name = null)
+ {
+ return $this->manager->connection($name);
+ }
+
+ /**
+ * Register a connection with the manager.
+ *
+ * @param array $config
+ * @param string $name
+ * @return void
+ */
+ public function addConnection(array $config, $name = 'default')
+ {
+ $this->container['config']["queue.connections.{$name}"] = $config;
+ }
+
+ /**
+ * Get the queue manager instance.
+ *
+ * @return \Illuminate\Queue\QueueManager
+ */
+ public function getQueueManager()
+ {
+ return $this->manager;
+ }
+
+ /**
+ * Pass dynamic instance methods to the manager.
+ *
+ * @param string $method
+ * @param array $parameters
+ * @return mixed
+ */
+ public function __call($method, $parameters)
+ {
+ return call_user_func_array(array($this->manager, $method), $parameters);
+ }
+
+ /**
+ * Dynamically pass methods to the default connection.
+ *
+ * @param string $method
+ * @param array $parameters
+ * @return mixed
+ */
+ public static function __callStatic($method, $parameters)
+ {
+ return call_user_func_array(array(static::connection(), $method), $parameters);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Connectors/BeanstalkdConnector.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Connectors/BeanstalkdConnector.php b/vendor/laravel/framework/src/Illuminate/Queue/Connectors/BeanstalkdConnector.php
new file mode 100755
index 0000000..12607cd
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Connectors/BeanstalkdConnector.php
@@ -0,0 +1,24 @@
+<?php namespace Illuminate\Queue\Connectors;
+
+use Illuminate\Queue\BeanstalkdQueue;
+use Pheanstalk_Pheanstalk as Pheanstalk;
+use Pheanstalk_PheanstalkInterface as PheanstalkInterface;
+
+class BeanstalkdConnector implements ConnectorInterface {
+
+ /**
+ * Establish a queue connection.
+ *
+ * @param array $config
+ * @return \Illuminate\Queue\QueueInterface
+ */
+ public function connect(array $config)
+ {
+ $pheanstalk = new Pheanstalk($config['host'], array_get($config, 'port', PheanstalkInterface::DEFAULT_PORT));
+
+ return new BeanstalkdQueue(
+ $pheanstalk, $config['queue'], array_get($config, 'ttr', Pheanstalk::DEFAULT_TTR)
+ );
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Connectors/ConnectorInterface.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Connectors/ConnectorInterface.php b/vendor/laravel/framework/src/Illuminate/Queue/Connectors/ConnectorInterface.php
new file mode 100755
index 0000000..e952833
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Connectors/ConnectorInterface.php
@@ -0,0 +1,13 @@
+<?php namespace Illuminate\Queue\Connectors;
+
+interface ConnectorInterface {
+
+ /**
+ * Establish a queue connection.
+ *
+ * @param array $config
+ * @return \Illuminate\Queue\QueueInterface
+ */
+ public function connect(array $config);
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Connectors/IronConnector.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Connectors/IronConnector.php b/vendor/laravel/framework/src/Illuminate/Queue/Connectors/IronConnector.php
new file mode 100755
index 0000000..071c657
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Connectors/IronConnector.php
@@ -0,0 +1,59 @@
+<?php namespace Illuminate\Queue\Connectors;
+
+use IronMQ;
+use Illuminate\Http\Request;
+use Illuminate\Queue\IronQueue;
+use Illuminate\Encryption\Encrypter;
+
+class IronConnector implements ConnectorInterface {
+
+ /**
+ * The encrypter instance.
+ *
+ * @var \Illuminate\Encryption\Encrypter
+ */
+ protected $crypt;
+
+ /**
+ * The current request instance.
+ *
+ * @var \Illuminate\Http\Request
+ */
+ protected $request;
+
+ /**
+ * Create a new Iron connector instance.
+ *
+ * @param \Illuminate\Encryption\Encrypter $crypt
+ * @param \Illuminate\Http\Request $request
+ * @return void
+ */
+ public function __construct(Encrypter $crypt, Request $request)
+ {
+ $this->crypt = $crypt;
+ $this->request = $request;
+ }
+
+ /**
+ * Establish a queue connection.
+ *
+ * @param array $config
+ * @return \Illuminate\Queue\QueueInterface
+ */
+ public function connect(array $config)
+ {
+ $ironConfig = array('token' => $config['token'], 'project_id' => $config['project']);
+
+ if (isset($config['host'])) $ironConfig['host'] = $config['host'];
+
+ $iron = new IronMQ($ironConfig);
+
+ if (isset($config['ssl_verifypeer']))
+ {
+ $iron->ssl_verifypeer = $config['ssl_verifypeer'];
+ }
+
+ return new IronQueue($iron, $this->request, $config['queue'], $config['encrypt']);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Connectors/RedisConnector.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Connectors/RedisConnector.php b/vendor/laravel/framework/src/Illuminate/Queue/Connectors/RedisConnector.php
new file mode 100644
index 0000000..59821fd
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Connectors/RedisConnector.php
@@ -0,0 +1,52 @@
+<?php namespace Illuminate\Queue\Connectors;
+
+use Illuminate\Redis\Database;
+use Illuminate\Queue\RedisQueue;
+
+class RedisConnector implements ConnectorInterface {
+
+ /**
+ * The Redis database instance.
+ *
+ * @var \Illuminate\Redis\Database
+ */
+ protected $redis;
+
+ /**
+ * The connection name.
+ *
+ * @var string
+ */
+ protected $connection;
+
+ /**
+ * Create a new Redis queue connector instance.
+ *
+ * @param \Illuminate\Redis\Database $redis
+ * @param string|null $connection
+ * @return void
+ */
+ public function __construct(Database $redis, $connection = null)
+ {
+ $this->redis = $redis;
+ $this->connection = $connection;
+ }
+
+ /**
+ * Establish a queue connection.
+ *
+ * @param array $config
+ * @return \Illuminate\Queue\QueueInterface
+ */
+ public function connect(array $config)
+ {
+ $queue = new RedisQueue(
+ $this->redis, $config['queue'], array_get($config, 'connection', $this->connection)
+ );
+
+ $queue->setExpire(array_get($config, 'expire', 60));
+
+ return $queue;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Connectors/SqsConnector.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Connectors/SqsConnector.php b/vendor/laravel/framework/src/Illuminate/Queue/Connectors/SqsConnector.php
new file mode 100755
index 0000000..86aeeca
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Connectors/SqsConnector.php
@@ -0,0 +1,21 @@
+<?php namespace Illuminate\Queue\Connectors;
+
+use Aws\Sqs\SqsClient;
+use Illuminate\Queue\SqsQueue;
+
+class SqsConnector implements ConnectorInterface {
+
+ /**
+ * Establish a queue connection.
+ *
+ * @param array $config
+ * @return \Illuminate\Queue\QueueInterface
+ */
+ public function connect(array $config)
+ {
+ $sqs = SqsClient::factory($config);
+
+ return new SqsQueue($sqs, $config['queue']);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Connectors/SyncConnector.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Connectors/SyncConnector.php b/vendor/laravel/framework/src/Illuminate/Queue/Connectors/SyncConnector.php
new file mode 100755
index 0000000..1c3ae66
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Connectors/SyncConnector.php
@@ -0,0 +1,18 @@
+<?php namespace Illuminate\Queue\Connectors;
+
+use Illuminate\Queue\SyncQueue;
+
+class SyncConnector implements ConnectorInterface {
+
+ /**
+ * Establish a queue connection.
+ *
+ * @param array $config
+ * @return \Illuminate\Queue\QueueInterface
+ */
+ public function connect(array $config)
+ {
+ return new SyncQueue;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Console/FailedTableCommand.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Console/FailedTableCommand.php b/vendor/laravel/framework/src/Illuminate/Queue/Console/FailedTableCommand.php
new file mode 100644
index 0000000..0b485dd
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Console/FailedTableCommand.php
@@ -0,0 +1,70 @@
+<?php namespace Illuminate\Queue\Console;
+
+use Illuminate\Console\Command;
+use Illuminate\Filesystem\Filesystem;
+
+class FailedTableCommand extends Command {
+
+ /**
+ * The console command name.
+ *
+ * @var string
+ */
+ protected $name = 'queue:failed-table';
+
+ /**
+ * The console command description.
+ *
+ * @var string
+ */
+ protected $description = 'Create a migration for the failed queue jobs database table';
+
+ /**
+ * The filesystem instance.
+ *
+ * @var \Illuminate\Filesystem\Filesystem
+ */
+ protected $files;
+
+ /**
+ * Create a new session table command instance.
+ *
+ * @param \Illuminate\Filesystem\Filesystem $files
+ * @return void
+ */
+ public function __construct(Filesystem $files)
+ {
+ parent::__construct();
+
+ $this->files = $files;
+ }
+
+ /**
+ * Execute the console command.
+ *
+ * @return void
+ */
+ public function fire()
+ {
+ $fullPath = $this->createBaseMigration();
+
+ $this->files->put($fullPath, $this->files->get(__DIR__.'/stubs/failed_jobs.stub'));
+
+ $this->info('Migration created successfully!');
+ }
+
+ /**
+ * Create a base migration file for the table.
+ *
+ * @return string
+ */
+ protected function createBaseMigration()
+ {
+ $name = 'create_failed_jobs_table';
+
+ $path = $this->laravel['path'].'/database/migrations';
+
+ return $this->laravel['migration.creator']->create($name, $path);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Console/FlushFailedCommand.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Console/FlushFailedCommand.php b/vendor/laravel/framework/src/Illuminate/Queue/Console/FlushFailedCommand.php
new file mode 100644
index 0000000..0ece99b
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Console/FlushFailedCommand.php
@@ -0,0 +1,33 @@
+<?php namespace Illuminate\Queue\Console;
+
+use Illuminate\Console\Command;
+
+class FlushFailedCommand extends Command {
+
+ /**
+ * The console command name.
+ *
+ * @var string
+ */
+ protected $name = 'queue:flush';
+
+ /**
+ * The console command description.
+ *
+ * @var string
+ */
+ protected $description = 'Flush all of the failed queue jobs';
+
+ /**
+ * Execute the console command.
+ *
+ * @return void
+ */
+ public function fire()
+ {
+ $this->laravel['queue.failer']->flush();
+
+ $this->info('All failed jobs deleted successfully!');
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Console/ForgetFailedCommand.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Console/ForgetFailedCommand.php b/vendor/laravel/framework/src/Illuminate/Queue/Console/ForgetFailedCommand.php
new file mode 100644
index 0000000..fef76f0
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Console/ForgetFailedCommand.php
@@ -0,0 +1,51 @@
+<?php namespace Illuminate\Queue\Console;
+
+use Illuminate\Console\Command;
+use Symfony\Component\Console\Input\InputArgument;
+
+class ForgetFailedCommand extends Command {
+
+ /**
+ * The console command name.
+ *
+ * @var string
+ */
+ protected $name = 'queue:forget';
+
+ /**
+ * The console command description.
+ *
+ * @var string
+ */
+ protected $description = 'Delete a failed queue job';
+
+ /**
+ * Execute the console command.
+ *
+ * @return void
+ */
+ public function fire()
+ {
+ if ($this->laravel['queue.failer']->forget($this->argument('id')))
+ {
+ $this->info('Failed job deleted successfully!');
+ }
+ else
+ {
+ $this->error('No failed job matches the given ID.');
+ }
+ }
+
+ /**
+ * Get the console command arguments.
+ *
+ * @return array
+ */
+ protected function getArguments()
+ {
+ return array(
+ array('id', InputArgument::REQUIRED, 'The ID of the failed job'),
+ );
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Console/ListFailedCommand.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Console/ListFailedCommand.php b/vendor/laravel/framework/src/Illuminate/Queue/Console/ListFailedCommand.php
new file mode 100644
index 0000000..03bc411
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Console/ListFailedCommand.php
@@ -0,0 +1,62 @@
+<?php namespace Illuminate\Queue\Console;
+
+use Illuminate\Console\Command;
+
+class ListFailedCommand extends Command {
+
+ /**
+ * The console command name.
+ *
+ * @var string
+ */
+ protected $name = 'queue:failed';
+
+ /**
+ * The console command description.
+ *
+ * @var string
+ */
+ protected $description = 'List all of the failed queue jobs';
+
+ /**
+ * Execute the console command.
+ *
+ * @return void
+ */
+ public function fire()
+ {
+ $rows = array();
+
+ foreach ($this->laravel['queue.failer']->all() as $failed)
+ {
+ $rows[] = $this->parseFailedJob((array) $failed);
+ }
+
+ if (count($rows) == 0)
+ {
+ return $this->info('No failed jobs!');
+ }
+
+ $table = $this->getHelperSet()->get('table');
+
+ $table->setHeaders(array('ID', 'Connection', 'Queue', 'Class', 'Failed At'))
+ ->setRows($rows)
+ ->render($this->output);
+ }
+
+ /**
+ * Parse the failed job row.
+ *
+ * @param array $failed
+ * @return array
+ */
+ protected function parseFailedJob(array $failed)
+ {
+ $row = array_values(array_except($failed, array('payload')));
+
+ array_splice($row, 3, 0, array_get(json_decode($failed['payload'], true), 'job'));
+
+ return $row;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Console/ListenCommand.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Console/ListenCommand.php b/vendor/laravel/framework/src/Illuminate/Queue/Console/ListenCommand.php
new file mode 100755
index 0000000..f138b3c
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Console/ListenCommand.php
@@ -0,0 +1,145 @@
+<?php namespace Illuminate\Queue\Console;
+
+use Illuminate\Queue\Listener;
+use Illuminate\Console\Command;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Input\InputArgument;
+
+class ListenCommand extends Command {
+
+ /**
+ * The console command name.
+ *
+ * @var string
+ */
+ protected $name = 'queue:listen';
+
+ /**
+ * The console command description.
+ *
+ * @var string
+ */
+ protected $description = 'Listen to a given queue';
+
+ /**
+ * The queue listener instance.
+ *
+ * @var \Illuminate\Queue\Listener
+ */
+ protected $listener;
+
+ /**
+ * Create a new queue listen command.
+ *
+ * @param \Illuminate\Queue\Listener $listener
+ * @return void
+ */
+ public function __construct(Listener $listener)
+ {
+ parent::__construct();
+
+ $this->listener = $listener;
+ }
+
+ /**
+ * Execute the console command.
+ *
+ * @return void
+ */
+ public function fire()
+ {
+ $this->setListenerOptions();
+
+ $delay = $this->input->getOption('delay');
+
+ // The memory limit is the amount of memory we will allow the script to occupy
+ // before killing it and letting a process manager restart it for us, which
+ // is to protect us against any memory leaks that will be in the scripts.
+ $memory = $this->input->getOption('memory');
+
+ $connection = $this->input->getArgument('connection');
+
+ $timeout = $this->input->getOption('timeout');
+
+ // We need to get the right queue for the connection which is set in the queue
+ // configuration file for the application. We will pull it based on the set
+ // connection being run for the queue operation currently being executed.
+ $queue = $this->getQueue($connection);
+
+ $this->listener->listen(
+ $connection, $queue, $delay, $memory, $timeout
+ );
+ }
+
+ /**
+ * Get the name of the queue connection to listen on.
+ *
+ * @param string $connection
+ * @return string
+ */
+ protected function getQueue($connection)
+ {
+ if (is_null($connection))
+ {
+ $connection = $this->laravel['config']['queue.default'];
+ }
+
+ $queue = $this->laravel['config']->get("queue.connections.{$connection}.queue", 'default');
+
+ return $this->input->getOption('queue') ?: $queue;
+ }
+
+ /**
+ * Set the options on the queue listener.
+ *
+ * @return void
+ */
+ protected function setListenerOptions()
+ {
+ $this->listener->setEnvironment($this->laravel->environment());
+
+ $this->listener->setSleep($this->option('sleep'));
+
+ $this->listener->setMaxTries($this->option('tries'));
+
+ $this->listener->setOutputHandler(function($type, $line)
+ {
+ $this->output->write($line);
+ });
+ }
+
+ /**
+ * Get the console command arguments.
+ *
+ * @return array
+ */
+ protected function getArguments()
+ {
+ return array(
+ array('connection', InputArgument::OPTIONAL, 'The name of connection'),
+ );
+ }
+
+ /**
+ * Get the console command options.
+ *
+ * @return array
+ */
+ protected function getOptions()
+ {
+ return array(
+ array('queue', null, InputOption::VALUE_OPTIONAL, 'The queue to listen on', null),
+
+ array('delay', null, InputOption::VALUE_OPTIONAL, 'Amount of time to delay failed jobs', 0),
+
+ array('memory', null, InputOption::VALUE_OPTIONAL, 'The memory limit in megabytes', 128),
+
+ array('timeout', null, InputOption::VALUE_OPTIONAL, 'Seconds a job may run before timing out', 60),
+
+ array('sleep', null, InputOption::VALUE_OPTIONAL, 'Seconds to wait before checking queue for jobs', 3),
+
+ array('tries', null, InputOption::VALUE_OPTIONAL, 'Number of times to attempt a job before logging it failed', 0),
+ );
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Console/RestartCommand.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Console/RestartCommand.php b/vendor/laravel/framework/src/Illuminate/Queue/Console/RestartCommand.php
new file mode 100644
index 0000000..de02cd7
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Console/RestartCommand.php
@@ -0,0 +1,33 @@
+<?php namespace Illuminate\Queue\Console;
+
+use Illuminate\Console\Command;
+
+class RestartCommand extends Command {
+
+ /**
+ * The console command name.
+ *
+ * @var string
+ */
+ protected $name = 'queue:restart';
+
+ /**
+ * The console command description.
+ *
+ * @var string
+ */
+ protected $description = "Restart queue worker daemons after their current job.";
+
+ /**
+ * Execute the console command.
+ *
+ * @return void
+ */
+ public function fire()
+ {
+ $this->laravel['cache']->forever('illuminate:queue:restart', time());
+
+ $this->info('Broadcasting queue restart signal.');
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Console/RetryCommand.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Console/RetryCommand.php b/vendor/laravel/framework/src/Illuminate/Queue/Console/RetryCommand.php
new file mode 100644
index 0000000..454b56d
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Console/RetryCommand.php
@@ -0,0 +1,74 @@
+<?php namespace Illuminate\Queue\Console;
+
+use Illuminate\Console\Command;
+use Symfony\Component\Console\Input\InputArgument;
+
+class RetryCommand extends Command {
+
+ /**
+ * The console command name.
+ *
+ * @var string
+ */
+ protected $name = 'queue:retry';
+
+ /**
+ * The console command description.
+ *
+ * @var string
+ */
+ protected $description = 'Retry a failed queue job';
+
+ /**
+ * Execute the console command.
+ *
+ * @return void
+ */
+ public function fire()
+ {
+ $failed = $this->laravel['queue.failer']->find($this->argument('id'));
+
+ if ( ! is_null($failed))
+ {
+ $failed->payload = $this->resetAttempts($failed->payload);
+
+ $this->laravel['queue']->connection($failed->connection)->pushRaw($failed->payload, $failed->queue);
+
+ $this->laravel['queue.failer']->forget($failed->id);
+
+ $this->info('The failed job has been pushed back onto the queue!');
+ }
+ else
+ {
+ $this->error('No failed job matches the given ID.');
+ }
+ }
+
+ /**
+ * Reset the payload attempts.
+ *
+ * @param string $payload
+ * @return string
+ */
+ protected function resetAttempts($payload)
+ {
+ $payload = json_decode($payload, true);
+
+ if (isset($payload['attempts'])) $payload['attempts'] = 0;
+
+ return json_encode($payload);
+ }
+
+ /**
+ * Get the console command arguments.
+ *
+ * @return array
+ */
+ protected function getArguments()
+ {
+ return array(
+ array('id', InputArgument::REQUIRED, 'The ID of the failed job'),
+ );
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Console/SubscribeCommand.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Console/SubscribeCommand.php b/vendor/laravel/framework/src/Illuminate/Queue/Console/SubscribeCommand.php
new file mode 100755
index 0000000..89c4209
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Console/SubscribeCommand.php
@@ -0,0 +1,153 @@
+<?php namespace Illuminate\Queue\Console;
+
+use RuntimeException;
+use Illuminate\Queue\IronQueue;
+use Illuminate\Console\Command;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Input\InputArgument;
+
+class SubscribeCommand extends Command {
+
+ /**
+ * The console command name.
+ *
+ * @var string
+ */
+ protected $name = 'queue:subscribe';
+
+ /**
+ * The console command description.
+ *
+ * @var string
+ */
+ protected $description = 'Subscribe a URL to an Iron.io push queue';
+
+ /**
+ * The queue meta information from Iron.io.
+ *
+ * @var object
+ */
+ protected $meta;
+
+ /**
+ * Execute the console command.
+ *
+ * @return void
+ *
+ * @throws \RuntimeException
+ */
+ public function fire()
+ {
+ $iron = $this->laravel['queue']->connection();
+
+ if ( ! $iron instanceof IronQueue)
+ {
+ throw new RuntimeException("Iron.io based queue must be default.");
+ }
+
+ $iron->getIron()->updateQueue($this->argument('queue'), $this->getQueueOptions());
+
+ $this->line('<info>Queue subscriber added:</info> <comment>'.$this->argument('url').'</comment>');
+ }
+
+ /**
+ * Get the queue options.
+ *
+ * @return array
+ */
+ protected function getQueueOptions()
+ {
+ return array(
+ 'push_type' => $this->getPushType(), 'subscribers' => $this->getSubscriberList()
+ );
+ }
+
+ /**
+ * Get the push type for the queue.
+ *
+ * @return string
+ */
+ protected function getPushType()
+ {
+ if ($this->option('type')) return $this->option('type');
+
+ try
+ {
+ return $this->getQueue()->push_type;
+ }
+ catch (\Exception $e)
+ {
+ return 'multicast';
+ }
+ }
+
+ /**
+ * Get the current subscribers for the queue.
+ *
+ * @return array
+ */
+ protected function getSubscriberList()
+ {
+ $subscribers = $this->getCurrentSubscribers();
+
+ $subscribers[] = array('url' => $this->argument('url'));
+
+ return $subscribers;
+ }
+
+ /**
+ * Get the current subscriber list.
+ *
+ * @return array
+ */
+ protected function getCurrentSubscribers()
+ {
+ try
+ {
+ return $this->getQueue()->subscribers;
+ }
+ catch (\Exception $e)
+ {
+ return array();
+ }
+ }
+
+ /**
+ * Get the queue information from Iron.io.
+ *
+ * @return object
+ */
+ protected function getQueue()
+ {
+ if (isset($this->meta)) return $this->meta;
+
+ return $this->meta = $this->laravel['queue']->getIron()->getQueue($this->argument('queue'));
+ }
+
+ /**
+ * Get the console command arguments.
+ *
+ * @return array
+ */
+ protected function getArguments()
+ {
+ return array(
+ array('queue', InputArgument::REQUIRED, 'The name of Iron.io queue.'),
+
+ array('url', InputArgument::REQUIRED, 'The URL to be subscribed.'),
+ );
+ }
+
+ /**
+ * Get the console command options.
+ *
+ * @return array
+ */
+ protected function getOptions()
+ {
+ return array(
+ array('type', null, InputOption::VALUE_OPTIONAL, 'The push type for the queue.'),
+ );
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php b/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php
new file mode 100755
index 0000000..859cc63
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php
@@ -0,0 +1,175 @@
+<?php namespace Illuminate\Queue\Console;
+
+use Illuminate\Queue\Worker;
+use Illuminate\Queue\Jobs\Job;
+use Illuminate\Console\Command;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Input\InputArgument;
+
+class WorkCommand extends Command {
+
+ /**
+ * The console command name.
+ *
+ * @var string
+ */
+ protected $name = 'queue:work';
+
+ /**
+ * The console command description.
+ *
+ * @var string
+ */
+ protected $description = 'Process the next job on a queue';
+
+ /**
+ * The queue worker instance.
+ *
+ * @var \Illuminate\Queue\Worker
+ */
+ protected $worker;
+
+ /**
+ * Create a new queue listen command.
+ *
+ * @param \Illuminate\Queue\Worker $worker
+ * @return void
+ */
+ public function __construct(Worker $worker)
+ {
+ parent::__construct();
+
+ $this->worker = $worker;
+ }
+
+ /**
+ * Execute the console command.
+ *
+ * @return void
+ */
+ public function fire()
+ {
+ if ($this->downForMaintenance() && ! $this->option('daemon')) return;
+
+ $queue = $this->option('queue');
+
+ $delay = $this->option('delay');
+
+ // The memory limit is the amount of memory we will allow the script to occupy
+ // before killing it and letting a process manager restart it for us, which
+ // is to protect us against any memory leaks that will be in the scripts.
+ $memory = $this->option('memory');
+
+ $connection = $this->argument('connection');
+
+ $response = $this->runWorker(
+ $connection, $queue, $delay, $memory, $this->option('daemon')
+ );
+
+ // If a job was fired by the worker, we'll write the output out to the console
+ // so that the developer can watch live while the queue runs in the console
+ // window, which will also of get logged if stdout is logged out to disk.
+ if ( ! is_null($response['job']))
+ {
+ $this->writeOutput($response['job'], $response['failed']);
+ }
+ }
+
+ /**
+ * Run the worker instance.
+ *
+ * @param string $connection
+ * @param string $queue
+ * @param int $delay
+ * @param int $memory
+ * @param bool $daemon
+ * @return array
+ */
+ protected function runWorker($connection, $queue, $delay, $memory, $daemon = false)
+ {
+ if ($daemon)
+ {
+ $this->worker->setCache($this->laravel['cache']->driver());
+
+ $this->worker->setDaemonExceptionHandler($this->laravel['exception']);
+
+ return $this->worker->daemon(
+ $connection, $queue, $delay, $memory,
+ $this->option('sleep'), $this->option('tries')
+ );
+ }
+
+ return $this->worker->pop(
+ $connection, $queue, $delay,
+ $this->option('sleep'), $this->option('tries')
+ );
+ }
+
+ /**
+ * Write the status output for the queue worker.
+ *
+ * @param \Illuminate\Queue\Jobs\Job $job
+ * @param bool $failed
+ * @return void
+ */
+ protected function writeOutput(Job $job, $failed)
+ {
+ if ($failed)
+ {
+ $this->output->writeln('<error>Failed:</error> '.$job->getName());
+ }
+ else
+ {
+ $this->output->writeln('<info>Processed:</info> '.$job->getName());
+ }
+ }
+
+ /**
+ * Determine if the worker should run in maintenance mode.
+ *
+ * @return bool
+ */
+ protected function downForMaintenance()
+ {
+ if ($this->option('force')) return false;
+
+ return $this->laravel->isDownForMaintenance();
+ }
+
+ /**
+ * Get the console command arguments.
+ *
+ * @return array
+ */
+ protected function getArguments()
+ {
+ return array(
+ array('connection', InputArgument::OPTIONAL, 'The name of connection', null),
+ );
+ }
+
+ /**
+ * Get the console command options.
+ *
+ * @return array
+ */
+ protected function getOptions()
+ {
+ return array(
+ array('queue', null, InputOption::VALUE_OPTIONAL, 'The queue to listen on'),
+
+ array('daemon', null, InputOption::VALUE_NONE, 'Run the worker in daemon mode'),
+
+ array('delay', null, InputOption::VALUE_OPTIONAL, 'Amount of time to delay failed jobs', 0),
+
+ array('force', null, InputOption::VALUE_NONE, 'Force the worker to run even in maintenance mode'),
+
+ array('memory', null, InputOption::VALUE_OPTIONAL, 'The memory limit in megabytes', 128),
+
+ array('sleep', null, InputOption::VALUE_OPTIONAL, 'Number of seconds to sleep when no job is available', 3),
+
+ array('tries', null, InputOption::VALUE_OPTIONAL, 'Number of times to attempt a job before logging it failed', 0),
+ );
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Console/stubs/failed_jobs.stub
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Console/stubs/failed_jobs.stub b/vendor/laravel/framework/src/Illuminate/Queue/Console/stubs/failed_jobs.stub
new file mode 100644
index 0000000..61efc17
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Console/stubs/failed_jobs.stub
@@ -0,0 +1,35 @@
+<?php
+
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Database\Migrations\Migration;
+
+class CreateFailedJobsTable extends Migration {
+
+ /**
+ * Run the migrations.
+ *
+ * @return void
+ */
+ public function up()
+ {
+ Schema::create('failed_jobs', function(Blueprint $table)
+ {
+ $table->increments('id');
+ $table->text('connection');
+ $table->text('queue');
+ $table->text('payload');
+ $table->timestamp('failed_at');
+ });
+ }
+
+ /**
+ * Reverse the migrations.
+ *
+ * @return void
+ */
+ public function down()
+ {
+ Schema::drop('failed_jobs');
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/FailConsoleServiceProvider.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/FailConsoleServiceProvider.php b/vendor/laravel/framework/src/Illuminate/Queue/FailConsoleServiceProvider.php
new file mode 100644
index 0000000..6551877
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/FailConsoleServiceProvider.php
@@ -0,0 +1,69 @@
+<?php namespace Illuminate\Queue;
+
+use Illuminate\Support\ServiceProvider;
+use Illuminate\Queue\Console\RetryCommand;
+use Illuminate\Queue\Console\ListFailedCommand;
+use Illuminate\Queue\Console\FlushFailedCommand;
+use Illuminate\Queue\Console\FailedTableCommand;
+use Illuminate\Queue\Console\ForgetFailedCommand;
+
+class FailConsoleServiceProvider extends ServiceProvider {
+
+ /**
+ * Indicates if loading of the provider is deferred.
+ *
+ * @var bool
+ */
+ protected $defer = true;
+
+ /**
+ * Register the service provider.
+ *
+ * @return void
+ */
+ public function register()
+ {
+ $this->app->bindShared('command.queue.failed', function()
+ {
+ return new ListFailedCommand;
+ });
+
+ $this->app->bindShared('command.queue.retry', function()
+ {
+ return new RetryCommand;
+ });
+
+ $this->app->bindShared('command.queue.forget', function()
+ {
+ return new ForgetFailedCommand;
+ });
+
+ $this->app->bindShared('command.queue.flush', function()
+ {
+ return new FlushFailedCommand;
+ });
+
+ $this->app->bindShared('command.queue.failed-table', function($app)
+ {
+ return new FailedTableCommand($app['files']);
+ });
+
+ $this->commands(
+ 'command.queue.failed', 'command.queue.retry', 'command.queue.forget',
+ 'command.queue.flush', 'command.queue.failed-table'
+ );
+ }
+
+ /**
+ * Get the services provided by the provider.
+ *
+ * @return array
+ */
+ public function provides()
+ {
+ return array(
+ 'command.queue.failed', 'command.queue.retry', 'command.queue.forget', 'command.queue.flush', 'command.queue.failed-table',
+ );
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Failed/DatabaseFailedJobProvider.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Failed/DatabaseFailedJobProvider.php b/vendor/laravel/framework/src/Illuminate/Queue/Failed/DatabaseFailedJobProvider.php
new file mode 100644
index 0000000..1fbf6f1
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Failed/DatabaseFailedJobProvider.php
@@ -0,0 +1,111 @@
+<?php namespace Illuminate\Queue\Failed;
+
+use Carbon\Carbon;
+use Illuminate\Database\ConnectionResolverInterface;
+
+class DatabaseFailedJobProvider implements FailedJobProviderInterface {
+
+ /**
+ * The connection resolver implementation.
+ *
+ * @var \Illuminate\Database\ConnectionResolverInterface
+ */
+ protected $resolver;
+
+ /**
+ * The database connection name.
+ *
+ * @var string
+ */
+ protected $database;
+
+ /**
+ * The database table.
+ *
+ * @var string
+ */
+ protected $table;
+
+ /**
+ * Create a new database failed job provider.
+ *
+ * @param \Illuminate\Database\ConnectionResolverInterface $resolver
+ * @param string $database
+ * @param string $table
+ * @return void
+ */
+ public function __construct(ConnectionResolverInterface $resolver, $database, $table)
+ {
+ $this->table = $table;
+ $this->resolver = $resolver;
+ $this->database = $database;
+ }
+
+ /**
+ * Log a failed job into storage.
+ *
+ * @param string $connection
+ * @param string $queue
+ * @param string $payload
+ * @return void
+ */
+ public function log($connection, $queue, $payload)
+ {
+ $failed_at = Carbon::now();
+
+ $this->getTable()->insert(compact('connection', 'queue', 'payload', 'failed_at'));
+ }
+
+ /**
+ * Get a list of all of the failed jobs.
+ *
+ * @return array
+ */
+ public function all()
+ {
+ return $this->getTable()->orderBy('id', 'desc')->get();
+ }
+
+ /**
+ * Get a single failed job.
+ *
+ * @param mixed $id
+ * @return array
+ */
+ public function find($id)
+ {
+ return $this->getTable()->find($id);
+ }
+
+ /**
+ * Delete a single failed job from storage.
+ *
+ * @param mixed $id
+ * @return bool
+ */
+ public function forget($id)
+ {
+ return $this->getTable()->where('id', $id)->delete() > 0;
+ }
+
+ /**
+ * Flush all of the failed jobs from storage.
+ *
+ * @return void
+ */
+ public function flush()
+ {
+ $this->getTable()->delete();
+ }
+
+ /**
+ * Get a new query builder instance for the table.
+ *
+ * @return \Illuminate\Database\Query\Builder
+ */
+ protected function getTable()
+ {
+ return $this->resolver->connection($this->database)->table($this->table);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Failed/FailedJobProviderInterface.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Failed/FailedJobProviderInterface.php b/vendor/laravel/framework/src/Illuminate/Queue/Failed/FailedJobProviderInterface.php
new file mode 100644
index 0000000..7db652e
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Failed/FailedJobProviderInterface.php
@@ -0,0 +1,45 @@
+<?php namespace Illuminate\Queue\Failed;
+
+interface FailedJobProviderInterface {
+
+ /**
+ * Log a failed job into storage.
+ *
+ * @param string $connection
+ * @param string $queue
+ * @param string $payload
+ * @return void
+ */
+ public function log($connection, $queue, $payload);
+
+ /**
+ * Get a list of all of the failed jobs.
+ *
+ * @return array
+ */
+ public function all();
+
+ /**
+ * Get a single failed job.
+ *
+ * @param mixed $id
+ * @return array
+ */
+ public function find($id);
+
+ /**
+ * Delete a single failed job from storage.
+ *
+ * @param mixed $id
+ * @return bool
+ */
+ public function forget($id);
+
+ /**
+ * Flush all of the failed jobs from storage.
+ *
+ * @return void
+ */
+ public function flush();
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/IlluminateQueueClosure.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/IlluminateQueueClosure.php b/vendor/laravel/framework/src/Illuminate/Queue/IlluminateQueueClosure.php
new file mode 100755
index 0000000..21056c6
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/IlluminateQueueClosure.php
@@ -0,0 +1,39 @@
+<?php
+
+use Illuminate\Encryption\Encrypter;
+
+class IlluminateQueueClosure {
+
+ /**
+ * The encrypter instance.
+ *
+ * @var \Illuminate\Encryption\Encrypter $crypt
+ */
+ protected $crypt;
+
+ /**
+ * Create a new queued Closure job.
+ *
+ * @param \Illuminate\Encryption\Encrypter $crypt
+ * @return void
+ */
+ public function __construct(Encrypter $crypt)
+ {
+ $this->crypt = $crypt;
+ }
+
+ /**
+ * Fire the Closure based queue job.
+ *
+ * @param \Illuminate\Queue\Jobs\Job $job
+ * @param array $data
+ * @return void
+ */
+ public function fire($job, $data)
+ {
+ $closure = unserialize($this->crypt->decrypt($data['closure']));
+
+ $closure($job);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/IronQueue.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/IronQueue.php b/vendor/laravel/framework/src/Illuminate/Queue/IronQueue.php
new file mode 100755
index 0000000..1c05b3a
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/IronQueue.php
@@ -0,0 +1,258 @@
+<?php namespace Illuminate\Queue;
+
+use IronMQ;
+use Illuminate\Http\Request;
+use Illuminate\Http\Response;
+use Illuminate\Queue\Jobs\IronJob;
+
+class IronQueue extends Queue implements QueueInterface {
+
+ /**
+ * The IronMQ instance.
+ *
+ * @var IronMQ
+ */
+ protected $iron;
+
+ /**
+ * The current request instance.
+ *
+ * @var \Illuminate\Http\Request
+ */
+ protected $request;
+
+ /**
+ * The name of the default tube.
+ *
+ * @var string
+ */
+ protected $default;
+
+ /**
+ * Indicates if the messages should be encrypted.
+ *
+ * @var bool
+ */
+ protected $shouldEncrypt;
+
+ /**
+ * Create a new IronMQ queue instance.
+ *
+ * @param \IronMQ $iron
+ * @param \Illuminate\Http\Request $request
+ * @param string $default
+ * @param bool $shouldEncrypt
+ * @return void
+ */
+ public function __construct(IronMQ $iron, Request $request, $default, $shouldEncrypt = false)
+ {
+ $this->iron = $iron;
+ $this->request = $request;
+ $this->default = $default;
+ $this->shouldEncrypt = $shouldEncrypt;
+ }
+
+ /**
+ * Push a new job onto the queue.
+ *
+ * @param string $job
+ * @param mixed $data
+ * @param string $queue
+ * @return mixed
+ */
+ public function push($job, $data = '', $queue = null)
+ {
+ return $this->pushRaw($this->createPayload($job, $data, $queue), $queue);
+ }
+
+ /**
+ * Push a raw payload onto the queue.
+ *
+ * @param string $payload
+ * @param string $queue
+ * @param array $options
+ * @return mixed
+ */
+ public function pushRaw($payload, $queue = null, array $options = array())
+ {
+ if ($this->shouldEncrypt) $payload = $this->crypt->encrypt($payload);
+
+ return $this->iron->postMessage($this->getQueue($queue), $payload, $options)->id;
+ }
+
+ /**
+ * Push a raw payload onto the queue after encrypting the payload.
+ *
+ * @param string $payload
+ * @param string $queue
+ * @param int $delay
+ * @return mixed
+ */
+ public function recreate($payload, $queue = null, $delay)
+ {
+ $options = array('delay' => $this->getSeconds($delay));
+
+ return $this->pushRaw($payload, $queue, $options);
+ }
+
+ /**
+ * Push a new job onto the queue after a delay.
+ *
+ * @param \DateTime|int $delay
+ * @param string $job
+ * @param mixed $data
+ * @param string $queue
+ * @return mixed
+ */
+ public function later($delay, $job, $data = '', $queue = null)
+ {
+ $delay = $this->getSeconds($delay);
+
+ $payload = $this->createPayload($job, $data, $queue);
+
+ return $this->pushRaw($payload, $queue, compact('delay'));
+ }
+
+ /**
+ * Pop the next job off of the queue.
+ *
+ * @param string $queue
+ * @return \Illuminate\Queue\Jobs\Job|null
+ */
+ public function pop($queue = null)
+ {
+ $queue = $this->getQueue($queue);
+
+ $job = $this->iron->getMessage($queue);
+
+ // If we were able to pop a message off of the queue, we will need to decrypt
+ // the message body, as all Iron.io messages are encrypted, since the push
+ // queues will be a security hazard to unsuspecting developers using it.
+ if ( ! is_null($job))
+ {
+ $job->body = $this->parseJobBody($job->body);
+
+ return new IronJob($this->container, $this, $job);
+ }
+ }
+
+ /**
+ * Delete a message from the Iron queue.
+ *
+ * @param string $queue
+ * @param string $id
+ * @return void
+ */
+ public function deleteMessage($queue, $id)
+ {
+ $this->iron->deleteMessage($queue, $id);
+ }
+
+ /**
+ * Marshal a push queue request and fire the job.
+ *
+ * @return \Illuminate\Http\Response
+ */
+ public function marshal()
+ {
+ $this->createPushedIronJob($this->marshalPushedJob())->fire();
+
+ return new Response('OK');
+ }
+
+ /**
+ * Marshal out the pushed job and payload.
+ *
+ * @return object
+ */
+ protected function marshalPushedJob()
+ {
+ $r = $this->request;
+
+ $body = $this->parseJobBody($r->getContent());
+
+ return (object) array(
+ 'id' => $r->header('iron-message-id'), 'body' => $body, 'pushed' => true,
+ );
+ }
+
+ /**
+ * Create a new IronJob for a pushed job.
+ *
+ * @param object $job
+ * @return \Illuminate\Queue\Jobs\IronJob
+ */
+ protected function createPushedIronJob($job)
+ {
+ return new IronJob($this->container, $this, $job, true);
+ }
+
+ /**
+ * Create a payload string from the given job and data.
+ *
+ * @param string $job
+ * @param mixed $data
+ * @param string $queue
+ * @return string
+ */
+ protected function createPayload($job, $data = '', $queue = null)
+ {
+ $payload = $this->setMeta(parent::createPayload($job, $data), 'attempts', 1);
+
+ return $this->setMeta($payload, 'queue', $this->getQueue($queue));
+ }
+
+ /**
+ * Parse the job body for firing.
+ *
+ * @param string $body
+ * @return string
+ */
+ protected function parseJobBody($body)
+ {
+ return $this->shouldEncrypt ? $this->crypt->decrypt($body) : $body;
+ }
+
+ /**
+ * Get the queue or return the default.
+ *
+ * @param string|null $queue
+ * @return string
+ */
+ public function getQueue($queue)
+ {
+ return $queue ?: $this->default;
+ }
+
+ /**
+ * Get the underlying IronMQ instance.
+ *
+ * @return \IronMQ
+ */
+ public function getIron()
+ {
+ return $this->iron;
+ }
+
+ /**
+ * Get the request instance.
+ *
+ * @return \Symfony\Component\HttpFoundation\Request
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ /**
+ * Set the request instance.
+ *
+ * @param \Symfony\Component\HttpFoundation\Request $request
+ * @return void
+ */
+ public function setRequest(Request $request)
+ {
+ $this->request = $request;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Jobs/BeanstalkdJob.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Jobs/BeanstalkdJob.php b/vendor/laravel/framework/src/Illuminate/Queue/Jobs/BeanstalkdJob.php
new file mode 100755
index 0000000..2ae99dc
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Jobs/BeanstalkdJob.php
@@ -0,0 +1,150 @@
+<?php namespace Illuminate\Queue\Jobs;
+
+use Pheanstalk_Job;
+use Illuminate\Container\Container;
+use Pheanstalk_Pheanstalk as Pheanstalk;
+
+class BeanstalkdJob extends Job {
+
+ /**
+ * The Pheanstalk instance.
+ *
+ * @var \Pheanstalk_Pheanstalk
+ */
+ protected $pheanstalk;
+
+ /**
+ * The Pheanstalk job instance.
+ *
+ * @var \Pheanstalk_Job
+ */
+ protected $job;
+
+ /**
+ * Create a new job instance.
+ *
+ * @param \Illuminate\Container\Container $container
+ * @param \Pheanstalk_Pheanstalk $pheanstalk
+ * @param \Pheanstalk_Job $job
+ * @param string $queue
+ * @return void
+ */
+ public function __construct(Container $container,
+ Pheanstalk $pheanstalk,
+ Pheanstalk_Job $job,
+ $queue)
+ {
+ $this->job = $job;
+ $this->queue = $queue;
+ $this->container = $container;
+ $this->pheanstalk = $pheanstalk;
+ }
+
+ /**
+ * Fire the job.
+ *
+ * @return void
+ */
+ public function fire()
+ {
+ $this->resolveAndFire(json_decode($this->getRawBody(), true));
+ }
+
+ /**
+ * Get the raw body string for the job.
+ *
+ * @return string
+ */
+ public function getRawBody()
+ {
+ return $this->job->getData();
+ }
+
+ /**
+ * Delete the job from the queue.
+ *
+ * @return void
+ */
+ public function delete()
+ {
+ parent::delete();
+
+ $this->pheanstalk->delete($this->job);
+ }
+
+ /**
+ * Release the job back into the queue.
+ *
+ * @param int $delay
+ * @return void
+ */
+ public function release($delay = 0)
+ {
+ $priority = Pheanstalk::DEFAULT_PRIORITY;
+
+ $this->pheanstalk->release($this->job, $priority, $delay);
+ }
+
+ /**
+ * Bury the job in the queue.
+ *
+ * @return void
+ */
+ public function bury()
+ {
+ $this->pheanstalk->bury($this->job);
+ }
+
+ /**
+ * Get the number of times the job has been attempted.
+ *
+ * @return int
+ */
+ public function attempts()
+ {
+ $stats = $this->pheanstalk->statsJob($this->job);
+
+ return (int) $stats->reserves;
+ }
+
+ /**
+ * Get the job identifier.
+ *
+ * @return string
+ */
+ public function getJobId()
+ {
+ return $this->job->getId();
+ }
+
+ /**
+ * Get the IoC container instance.
+ *
+ * @return \Illuminate\Container\Container
+ */
+ public function getContainer()
+ {
+ return $this->container;
+ }
+
+ /**
+ * Get the underlying Pheanstalk instance.
+ *
+ * @return \Pheanstalk_Pheanstalk
+ */
+ public function getPheanstalk()
+ {
+ return $this->pheanstalk;
+ }
+
+ /**
+ * Get the underlying Pheanstalk job.
+ *
+ * @return \Pheanstalk_Job
+ */
+ public function getPheanstalkJob()
+ {
+ return $this->job;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Jobs/IronJob.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Jobs/IronJob.php b/vendor/laravel/framework/src/Illuminate/Queue/Jobs/IronJob.php
new file mode 100755
index 0000000..2265768
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Jobs/IronJob.php
@@ -0,0 +1,171 @@
+<?php namespace Illuminate\Queue\Jobs;
+
+use Illuminate\Queue\IronQueue;
+use Illuminate\Container\Container;
+
+class IronJob extends Job {
+
+ /**
+ * The Iron queue instance.
+ *
+ * @var \Illuminate\Queue\IronQueue
+ */
+ protected $iron;
+
+ /**
+ * The IronMQ message instance.
+ *
+ * @var object
+ */
+ protected $job;
+
+ /**
+ * Indicates if the message was a push message.
+ *
+ * @var bool
+ */
+ protected $pushed = false;
+
+ /**
+ * Create a new job instance.
+ *
+ * @param \Illuminate\Container\Container $container
+ * @param \Illuminate\Queue\IronQueue $iron
+ * @param object $job
+ * @param bool $pushed
+ * @return void
+ */
+ public function __construct(Container $container,
+ IronQueue $iron,
+ $job,
+ $pushed = false)
+ {
+ $this->job = $job;
+ $this->iron = $iron;
+ $this->pushed = $pushed;
+ $this->container = $container;
+ }
+
+ /**
+ * Fire the job.
+ *
+ * @return void
+ */
+ public function fire()
+ {
+ $this->resolveAndFire(json_decode($this->getRawBody(), true));
+ }
+
+ /**
+ * Get the raw body string for the job.
+ *
+ * @return string
+ */
+ public function getRawBody()
+ {
+ return $this->job->body;
+ }
+
+ /**
+ * Delete the job from the queue.
+ *
+ * @return void
+ */
+ public function delete()
+ {
+ parent::delete();
+
+ if (isset($this->job->pushed)) return;
+
+ $this->iron->deleteMessage($this->getQueue(), $this->job->id);
+ }
+
+ /**
+ * Release the job back into the queue.
+ *
+ * @param int $delay
+ * @return void
+ */
+ public function release($delay = 0)
+ {
+ if ( ! $this->pushed) $this->delete();
+
+ $this->recreateJob($delay);
+ }
+
+ /**
+ * Release a pushed job back onto the queue.
+ *
+ * @param int $delay
+ * @return void
+ */
+ protected function recreateJob($delay)
+ {
+ $payload = json_decode($this->job->body, true);
+
+ array_set($payload, 'attempts', array_get($payload, 'attempts', 1) + 1);
+
+ $this->iron->recreate(json_encode($payload), $this->getQueue(), $delay);
+ }
+
+ /**
+ * Get the number of times the job has been attempted.
+ *
+ * @return int
+ */
+ public function attempts()
+ {
+ return array_get(json_decode($this->job->body, true), 'attempts', 1);
+ }
+
+ /**
+ * Get the job identifier.
+ *
+ * @return string
+ */
+ public function getJobId()
+ {
+ return $this->job->id;
+ }
+
+ /**
+ * Get the IoC container instance.
+ *
+ * @return \Illuminate\Container\Container
+ */
+ public function getContainer()
+ {
+ return $this->container;
+ }
+
+ /**
+ * Get the underlying Iron queue instance.
+ *
+ * @return \Illuminate\Queue\IronQueue
+ */
+ public function getIron()
+ {
+ return $this->iron;
+ }
+
+ /**
+ * Get the underlying IronMQ job.
+ *
+ * @return array
+ */
+ public function getIronJob()
+ {
+ return $this->job;
+ }
+
+ /**
+ * Get the name of the queue the job belongs to.
+ *
+ * @return string
+ */
+ public function getQueue()
+ {
+ return array_get(json_decode($this->job->body, true), 'queue');
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Jobs/Job.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Jobs/Job.php b/vendor/laravel/framework/src/Illuminate/Queue/Jobs/Job.php
new file mode 100755
index 0000000..89bde25
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Jobs/Job.php
@@ -0,0 +1,179 @@
+<?php namespace Illuminate\Queue\Jobs;
+
+use DateTime;
+
+abstract class Job {
+
+ /**
+ * The job handler instance.
+ *
+ * @var mixed
+ */
+ protected $instance;
+
+ /**
+ * The IoC container instance.
+ *
+ * @var \Illuminate\Container\Container
+ */
+ protected $container;
+
+ /**
+ * The name of the queue the job belongs to.
+ *
+ * @var string
+ */
+ protected $queue;
+
+ /**
+ * Indicates if the job has been deleted.
+ *
+ * @var bool
+ */
+ protected $deleted = false;
+
+ /**
+ * Fire the job.
+ *
+ * @return void
+ */
+ abstract public function fire();
+
+ /**
+ * Delete the job from the queue.
+ *
+ * @return void
+ */
+ public function delete()
+ {
+ $this->deleted = true;
+ }
+
+ /**
+ * Determine if the job has been deleted.
+ *
+ * @return bool
+ */
+ public function isDeleted()
+ {
+ return $this->deleted;
+ }
+
+ /**
+ * Release the job back into the queue.
+ *
+ * @param int $delay
+ * @return void
+ */
+ abstract public function release($delay = 0);
+
+ /**
+ * Get the number of times the job has been attempted.
+ *
+ * @return int
+ */
+ abstract public function attempts();
+
+ /**
+ * Get the raw body string for the job.
+ *
+ * @return string
+ */
+ abstract public function getRawBody();
+
+ /**
+ * Resolve and fire the job handler method.
+ *
+ * @param array $payload
+ * @return void
+ */
+ protected function resolveAndFire(array $payload)
+ {
+ list($class, $method) = $this->parseJob($payload['job']);
+
+ $this->instance = $this->resolve($class);
+
+ $this->instance->{$method}($this, $payload['data']);
+ }
+
+ /**
+ * Resolve the given job handler.
+ *
+ * @param string $class
+ * @return mixed
+ */
+ protected function resolve($class)
+ {
+ return $this->container->make($class);
+ }
+
+ /**
+ * Parse the job declaration into class and method.
+ *
+ * @param string $job
+ * @return array
+ */
+ protected function parseJob($job)
+ {
+ $segments = explode('@', $job);
+
+ return count($segments) > 1 ? $segments : array($segments[0], 'fire');
+ }
+
+ /**
+ * Determine if job should be auto-deleted.
+ *
+ * @return bool
+ */
+ public function autoDelete()
+ {
+ return isset($this->instance->delete);
+ }
+
+ /**
+ * Calculate the number of seconds with the given delay.
+ *
+ * @param \DateTime|int $delay
+ * @return int
+ */
+ protected function getSeconds($delay)
+ {
+ if ($delay instanceof DateTime)
+ {
+ return max(0, $delay->getTimestamp() - $this->getTime());
+ }
+
+ return (int) $delay;
+ }
+
+ /**
+ * Get the current system time.
+ *
+ * @return int
+ */
+ protected function getTime()
+ {
+ return time();
+ }
+
+ /**
+ * Get the name of the queued job class.
+ *
+ * @return string
+ */
+ public function getName()
+ {
+ return json_decode($this->getRawBody(), true)['job'];
+ }
+
+ /**
+ * Get the name of the queue the job belongs to.
+ *
+ * @return string
+ */
+ public function getQueue()
+ {
+ return $this->queue;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Jobs/RedisJob.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Jobs/RedisJob.php b/vendor/laravel/framework/src/Illuminate/Queue/Jobs/RedisJob.php
new file mode 100644
index 0000000..93fba74
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Jobs/RedisJob.php
@@ -0,0 +1,134 @@
+<?php namespace Illuminate\Queue\Jobs;
+
+use Illuminate\Queue\RedisQueue;
+use Illuminate\Container\Container;
+
+class RedisJob extends Job {
+
+ /**
+ * The Redis queue instance.
+ *
+ * @var \Illuminate\Queue\RedisQueue
+ */
+ protected $redis;
+
+ /**
+ * The Redis job payload.
+ *
+ * @var string
+ */
+ protected $job;
+
+ /**
+ * Create a new job instance.
+ *
+ * @param \Illuminate\Container\Container $container
+ * @param \Illuminate\Queue\RedisQueue $redis
+ * @param string $job
+ * @param string $queue
+ * @return void
+ */
+ public function __construct(Container $container, RedisQueue $redis, $job, $queue)
+ {
+ $this->job = $job;
+ $this->redis = $redis;
+ $this->queue = $queue;
+ $this->container = $container;
+ }
+
+ /**
+ * Fire the job.
+ *
+ * @return void
+ */
+ public function fire()
+ {
+ $this->resolveAndFire(json_decode($this->getRawBody(), true));
+ }
+
+ /**
+ * Get the raw body string for the job.
+ *
+ * @return string
+ */
+ public function getRawBody()
+ {
+ return $this->job;
+ }
+
+ /**
+ * Delete the job from the queue.
+ *
+ * @return void
+ */
+ public function delete()
+ {
+ parent::delete();
+
+ $this->redis->deleteReserved($this->queue, $this->job);
+ }
+
+ /**
+ * Release the job back into the queue.
+ *
+ * @param int $delay
+ * @return void
+ */
+ public function release($delay = 0)
+ {
+ $this->delete();
+
+ $this->redis->release($this->queue, $this->job, $delay, $this->attempts() + 1);
+ }
+
+ /**
+ * Get the number of times the job has been attempted.
+ *
+ * @return int
+ */
+ public function attempts()
+ {
+ return array_get(json_decode($this->job, true), 'attempts');
+ }
+
+ /**
+ * Get the job identifier.
+ *
+ * @return string
+ */
+ public function getJobId()
+ {
+ return array_get(json_decode($this->job, true), 'id');
+ }
+
+ /**
+ * Get the IoC container instance.
+ *
+ * @return \Illuminate\Container\Container
+ */
+ public function getContainer()
+ {
+ return $this->container;
+ }
+
+ /**
+ * Get the underlying queue driver instance.
+ *
+ * @return \Illuminate\Redis\Database
+ */
+ public function getRedisQueue()
+ {
+ return $this->redis;
+ }
+
+ /**
+ * Get the underlying Redis job.
+ *
+ * @return string
+ */
+ public function getRedisJob()
+ {
+ return $this->job;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Jobs/SqsJob.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Jobs/SqsJob.php b/vendor/laravel/framework/src/Illuminate/Queue/Jobs/SqsJob.php
new file mode 100755
index 0000000..0e666bd
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Jobs/SqsJob.php
@@ -0,0 +1,139 @@
+<?php namespace Illuminate\Queue\Jobs;
+
+use Aws\Sqs\SqsClient;
+use Illuminate\Container\Container;
+
+class SqsJob extends Job {
+
+ /**
+ * The Amazon SQS client instance.
+ *
+ * @var \Aws\Sqs\SqsClient
+ */
+ protected $sqs;
+
+ /**
+ * The Amazon SQS job instance.
+ *
+ * @var array
+ */
+ protected $job;
+
+ /**
+ * Create a new job instance.
+ *
+ * @param \Illuminate\Container\Container $container
+ * @param \Aws\Sqs\SqsClient $sqs
+ * @param string $queue
+ * @param array $job
+ * @return void
+ */
+ public function __construct(Container $container,
+ SqsClient $sqs,
+ $queue,
+ array $job)
+ {
+ $this->sqs = $sqs;
+ $this->job = $job;
+ $this->queue = $queue;
+ $this->container = $container;
+ }
+
+ /**
+ * Fire the job.
+ *
+ * @return void
+ */
+ public function fire()
+ {
+ $this->resolveAndFire(json_decode($this->getRawBody(), true));
+ }
+
+ /**
+ * Get the raw body string for the job.
+ *
+ * @return string
+ */
+ public function getRawBody()
+ {
+ return $this->job['Body'];
+ }
+
+ /**
+ * Delete the job from the queue.
+ *
+ * @return void
+ */
+ public function delete()
+ {
+ parent::delete();
+
+ $this->sqs->deleteMessage(array(
+
+ 'QueueUrl' => $this->queue, 'ReceiptHandle' => $this->job['ReceiptHandle'],
+
+ ));
+ }
+
+ /**
+ * Release the job back into the queue.
+ *
+ * @param int $delay
+ * @return void
+ */
+ public function release($delay = 0)
+ {
+ // SQS job releases are handled by the server configuration...
+ }
+
+ /**
+ * Get the number of times the job has been attempted.
+ *
+ * @return int
+ */
+ public function attempts()
+ {
+ return (int) $this->job['Attributes']['ApproximateReceiveCount'];
+ }
+
+ /**
+ * Get the job identifier.
+ *
+ * @return string
+ */
+ public function getJobId()
+ {
+ return $this->job['MessageId'];
+ }
+
+ /**
+ * Get the IoC container instance.
+ *
+ * @return \Illuminate\Container\Container
+ */
+ public function getContainer()
+ {
+ return $this->container;
+ }
+
+ /**
+ * Get the underlying SQS client instance.
+ *
+ * @return \Aws\Sqs\SqsClient
+ */
+ public function getSqs()
+ {
+ return $this->sqs;
+ }
+
+ /**
+ * Get the underlying raw SQS job.
+ *
+ * @return array
+ */
+ public function getSqsJob()
+ {
+ return $this->job;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Jobs/SyncJob.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Jobs/SyncJob.php b/vendor/laravel/framework/src/Illuminate/Queue/Jobs/SyncJob.php
new file mode 100755
index 0000000..fe02312
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Jobs/SyncJob.php
@@ -0,0 +1,97 @@
+<?php namespace Illuminate\Queue\Jobs;
+
+use Closure;
+use Illuminate\Container\Container;
+
+class SyncJob extends Job {
+
+ /**
+ * The class name of the job.
+ *
+ * @var string
+ */
+ protected $job;
+
+ /**
+ * The queue message data.
+ *
+ * @var string
+ */
+ protected $data;
+
+ /**
+ * Create a new job instance.
+ *
+ * @param \Illuminate\Container\Container $container
+ * @param string $job
+ * @param string $data
+ * @return void
+ */
+ public function __construct(Container $container, $job, $data = '')
+ {
+ $this->job = $job;
+ $this->data = $data;
+ $this->container = $container;
+ }
+
+ /**
+ * Fire the job.
+ *
+ * @return void
+ */
+ public function fire()
+ {
+ $data = json_decode($this->data, true);
+
+ if ($this->job instanceof Closure)
+ {
+ call_user_func($this->job, $this, $data);
+ }
+ else
+ {
+ $this->resolveAndFire(array('job' => $this->job, 'data' => $data));
+ }
+ }
+
+ /**
+ * Get the raw body string for the job.
+ *
+ * @return string
+ */
+ public function getRawBody()
+ {
+ //
+ }
+
+ /**
+ * Release the job back into the queue.
+ *
+ * @param int $delay
+ * @return void
+ */
+ public function release($delay = 0)
+ {
+ //
+ }
+
+ /**
+ * Get the number of times the job has been attempted.
+ *
+ * @return int
+ */
+ public function attempts()
+ {
+ return 1;
+ }
+
+ /**
+ * Get the job identifier.
+ *
+ * @return string
+ */
+ public function getJobId()
+ {
+ return '';
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Listener.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Listener.php b/vendor/laravel/framework/src/Illuminate/Queue/Listener.php
new file mode 100755
index 0000000..edf3cda
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Listener.php
@@ -0,0 +1,238 @@
+<?php namespace Illuminate\Queue;
+
+use Closure;
+use Symfony\Component\Process\Process;
+
+class Listener {
+
+ /**
+ * The command working path.
+ *
+ * @var string
+ */
+ protected $commandPath;
+
+ /**
+ * The environment the workers should run under.
+ *
+ * @var string
+ */
+ protected $environment;
+
+ /**
+ * The amount of seconds to wait before polling the queue.
+ *
+ * @var int
+ */
+ protected $sleep = 3;
+
+ /**
+ * The amount of times to try a job before logging it failed.
+ *
+ * @var int
+ */
+ protected $maxTries = 0;
+
+ /**
+ * The queue worker command line.
+ *
+ * @var string
+ */
+ protected $workerCommand;
+
+ /**
+ * The output handler callback.
+ *
+ * @var \Closure|null
+ */
+ protected $outputHandler;
+
+ /**
+ * Create a new queue listener.
+ *
+ * @param string $commandPath
+ * @return void
+ */
+ public function __construct($commandPath)
+ {
+ $this->commandPath = $commandPath;
+ $this->workerCommand = '"'.PHP_BINARY.'" artisan queue:work %s --queue="%s" --delay=%s --memory=%s --sleep=%s --tries=%s';
+ }
+
+ /**
+ * Listen to the given queue connection.
+ *
+ * @param string $connection
+ * @param string $queue
+ * @param string $delay
+ * @param string $memory
+ * @param int $timeout
+ * @return void
+ */
+ public function listen($connection, $queue, $delay, $memory, $timeout = 60)
+ {
+ $process = $this->makeProcess($connection, $queue, $delay, $memory, $timeout);
+
+ while(true)
+ {
+ $this->runProcess($process, $memory);
+ }
+ }
+
+ /**
+ * Run the given process.
+ *
+ * @param \Symfony\Component\Process\Process $process
+ * @param int $memory
+ * @return void
+ */
+ public function runProcess(Process $process, $memory)
+ {
+ $process->run(function($type, $line)
+ {
+ $this->handleWorkerOutput($type, $line);
+ });
+
+ // Once we have run the job we'll go check if the memory limit has been
+ // exceeded for the script. If it has, we will kill this script so a
+ // process managers will restart this with a clean slate of memory.
+ if ($this->memoryExceeded($memory))
+ {
+ $this->stop(); return;
+ }
+ }
+
+ /**
+ * Create a new Symfony process for the worker.
+ *
+ * @param string $connection
+ * @param string $queue
+ * @param int $delay
+ * @param int $memory
+ * @param int $timeout
+ * @return \Symfony\Component\Process\Process
+ */
+ public function makeProcess($connection, $queue, $delay, $memory, $timeout)
+ {
+ $string = $this->workerCommand;
+
+ // If the environment is set, we will append it to the command string so the
+ // workers will run under the specified environment. Otherwise, they will
+ // just run under the production environment which is not always right.
+ if (isset($this->environment))
+ {
+ $string .= ' --env='.$this->environment;
+ }
+
+ // Next, we will just format out the worker commands with all of the various
+ // options available for the command. This will produce the final command
+ // line that we will pass into a Symfony process object for processing.
+ $command = sprintf(
+ $string, $connection, $queue, $delay,
+ $memory, $this->sleep, $this->maxTries
+ );
+
+ return new Process($command, $this->commandPath, null, null, $timeout);
+ }
+
+ /**
+ * Handle output from the worker process.
+ *
+ * @param int $type
+ * @param string $line
+ * @return void
+ */
+ protected function handleWorkerOutput($type, $line)
+ {
+ if (isset($this->outputHandler))
+ {
+ call_user_func($this->outputHandler, $type, $line);
+ }
+ }
+
+ /**
+ * Determine if the memory limit has been exceeded.
+ *
+ * @param int $memoryLimit
+ * @return bool
+ */
+ public function memoryExceeded($memoryLimit)
+ {
+ return (memory_get_usage() / 1024 / 1024) >= $memoryLimit;
+ }
+
+ /**
+ * Stop listening and bail out of the script.
+ *
+ * @return void
+ */
+ public function stop()
+ {
+ die;
+ }
+
+ /**
+ * Set the output handler callback.
+ *
+ * @param \Closure $outputHandler
+ * @return void
+ */
+ public function setOutputHandler(Closure $outputHandler)
+ {
+ $this->outputHandler = $outputHandler;
+ }
+
+ /**
+ * Get the current listener environment.
+ *
+ * @return string
+ */
+ public function getEnvironment()
+ {
+ return $this->environment;
+ }
+
+ /**
+ * Set the current environment.
+ *
+ * @param string $environment
+ * @return void
+ */
+ public function setEnvironment($environment)
+ {
+ $this->environment = $environment;
+ }
+
+ /**
+ * Get the amount of seconds to wait before polling the queue.
+ *
+ * @return int
+ */
+ public function getSleep()
+ {
+ return $this->sleep;
+ }
+
+ /**
+ * Set the amount of seconds to wait before polling the queue.
+ *
+ * @param int $sleep
+ * @return void
+ */
+ public function setSleep($sleep)
+ {
+ $this->sleep = $sleep;
+ }
+
+ /**
+ * Set the amount of times to try a job before logging it failed.
+ *
+ * @param int $tries
+ * @return void
+ */
+ public function setMaxTries($tries)
+ {
+ $this->maxTries = $tries;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/Queue.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/Queue.php b/vendor/laravel/framework/src/Illuminate/Queue/Queue.php
new file mode 100755
index 0000000..e6cd428
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/Queue.php
@@ -0,0 +1,139 @@
+<?php namespace Illuminate\Queue;
+
+use Closure;
+use DateTime;
+use Illuminate\Container\Container;
+use Illuminate\Encryption\Encrypter;
+use Illuminate\Support\SerializableClosure;
+
+abstract class Queue {
+
+ /**
+ * The IoC container instance.
+ *
+ * @var \Illuminate\Container\Container
+ */
+ protected $container;
+
+ /**
+ * Marshal a push queue request and fire the job.
+ *
+ * @throws \RuntimeException
+ */
+ public function marshal()
+ {
+ throw new \RuntimeException("Push queues only supported by Iron.");
+ }
+
+ /**
+ * Push an array of jobs onto the queue.
+ *
+ * @param array $jobs
+ * @param mixed $data
+ * @param string $queue
+ * @return mixed
+ */
+ public function bulk($jobs, $data = '', $queue = null)
+ {
+ foreach ((array) $jobs as $job)
+ {
+ $this->push($job, $data, $queue);
+ }
+ }
+
+ /**
+ * Create a payload string from the given job and data.
+ *
+ * @param string $job
+ * @param mixed $data
+ * @param string $queue
+ * @return string
+ */
+ protected function createPayload($job, $data = '', $queue = null)
+ {
+ if ($job instanceof Closure)
+ {
+ return json_encode($this->createClosurePayload($job, $data));
+ }
+
+ return json_encode(array('job' => $job, 'data' => $data));
+ }
+
+ /**
+ * Create a payload string for the given Closure job.
+ *
+ * @param \Closure $job
+ * @param mixed $data
+ * @return string
+ */
+ protected function createClosurePayload($job, $data)
+ {
+ $closure = $this->crypt->encrypt(serialize(new SerializableClosure($job)));
+
+ return array('job' => 'IlluminateQueueClosure', 'data' => compact('closure'));
+ }
+
+ /**
+ * Set additional meta on a payload string.
+ *
+ * @param string $payload
+ * @param string $key
+ * @param string $value
+ * @return string
+ */
+ protected function setMeta($payload, $key, $value)
+ {
+ $payload = json_decode($payload, true);
+
+ return json_encode(array_set($payload, $key, $value));
+ }
+
+ /**
+ * Calculate the number of seconds with the given delay.
+ *
+ * @param \DateTime|int $delay
+ * @return int
+ */
+ protected function getSeconds($delay)
+ {
+ if ($delay instanceof DateTime)
+ {
+ return max(0, $delay->getTimestamp() - $this->getTime());
+ }
+
+ return (int) $delay;
+ }
+
+ /**
+ * Get the current UNIX timestamp.
+ *
+ * @return int
+ */
+ public function getTime()
+ {
+ return time();
+ }
+
+ /**
+ * Set the IoC container instance.
+ *
+ * @param \Illuminate\Container\Container $container
+ * @return void
+ */
+ public function setContainer(Container $container)
+ {
+ $this->container = $container;
+ }
+
+ /**
+ * Set the encrypter instance.
+ *
+ * @param \Illuminate\Encryption\Encrypter $crypt
+ * @return void
+ */
+ public function setEncrypter(Encrypter $crypt)
+ {
+ $this->crypt = $crypt;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/01413d65/vendor/laravel/framework/src/Illuminate/Queue/QueueInterface.php
----------------------------------------------------------------------
diff --git a/vendor/laravel/framework/src/Illuminate/Queue/QueueInterface.php b/vendor/laravel/framework/src/Illuminate/Queue/QueueInterface.php
new file mode 100755
index 0000000..69f9241
--- /dev/null
+++ b/vendor/laravel/framework/src/Illuminate/Queue/QueueInterface.php
@@ -0,0 +1,44 @@
+<?php namespace Illuminate\Queue;
+
+interface QueueInterface {
+
+ /**
+ * Push a new job onto the queue.
+ *
+ * @param string $job
+ * @param mixed $data
+ * @param string $queue
+ * @return mixed
+ */
+ public function push($job, $data = '', $queue = null);
+
+ /**
+ * Push a raw payload onto the queue.
+ *
+ * @param string $payload
+ * @param string $queue
+ * @param array $options
+ * @return mixed
+ */
+ public function pushRaw($payload, $queue = null, array $options = array());
+
+ /**
+ * Push a new job onto the queue after a delay.
+ *
+ * @param \DateTime|int $delay
+ * @param string $job
+ * @param mixed $data
+ * @param string $queue
+ * @return mixed
+ */
+ public function later($delay, $job, $data = '', $queue = null);
+
+ /**
+ * Pop the next job off of the queue.
+ *
+ * @param string $queue
+ * @return \Illuminate\Queue\Jobs\Job|null
+ */
+ public function pop($queue = null);
+
+}