/** * Get the queue or return the default. * @param $queue * @return OpenCloudQueue * @throws \OpenCloud\Common\Exceptions\InvalidArgumentError */ protected function getQueue($queue) { if (is_null($queue)) { return $this->queue; } return $this->openCloudService->createQueue($queue); }
/** * @param $queue * * @return \OpenCloud\Queues\Resource\Queue */ private function createQueue($queue) { if (!empty($queue)) { $this->queue = $this->openCloudService->createQueue($queue); } else { $this->queue = $this->openCloudService->createQueue($this->default); } return $this->queue; }
/** * Establish a queue connection. * * @param array $config * * @return \Faulker\RackspaceCloudQueue\Queue\RackspaceCloudQueue */ public function connect(array $config) { switch ($config['endpoint']) { case 'US': $endpoint = Rackspace::US_IDENTITY_ENDPOINT; break; case 'UK': default: $endpoint = Rackspace::UK_IDENTITY_ENDPOINT; } if ($this->connection == null) { $this->connection = new Rackspace($endpoint, array('username' => $config['username'], 'apiKey' => $config['apiKey'])); } if ($this->service === null) { $this->service = $this->connection->queuesService(Service::DEFAULT_NAME, $config['region'], $config['urlType']); } $this->service->setClientId(); return new RackspaceCloudQueue($this->service, $config['queue']); }