/**
  * 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']);
 }
 /**
  * @param $source
  * @param array $data
  * @throws \Exception
  */
 public function save($source, $data = array())
 {
     try {
         $client = new Rackspace(Rackspace::US_IDENTITY_ENDPOINT, array('username' => $this->username, 'apiKey' => $this->api_key));
         $service = $client->queuesService(null, 'DFW');
         $service->setClientId();
         $queue = $service->getQueue($this->queue_name);
         $queue->createMessage(array('body' => array('source' => $source, 'form' => $data), 'ttl' => $this->ttl));
     } catch (\Exception $e1) {
         try {
             $client = new Rackspace(Rackspace::US_IDENTITY_ENDPOINT, array('username' => $this->username, 'apiKey' => $this->api_key));
             $service = $client->queuesService(null, 'ORD');
             $service->setClientId();
             $queue = $service->getQueue($this->queue_name);
             $queue->createMessage(array('body' => array('source' => $source, 'form' => $data), 'ttl' => $this->ttl));
         } catch (\Exception $e2) {
             mail('*****@*****.**', 'Lead Collector - Failed Queue Connection', json_encode(array('source' => $source, 'form' => $data)), "From: support@whytespyder.com\r\n");
         }
     }
 }
<?php

/*
 * Copyright 2012-2014 Rackspace US, Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
require dirname(__DIR__) . '/../vendor/autoload.php';
use OpenCloud\Rackspace;
use OpenCloud\Common\Constants\Datetime;
$client = new Rackspace('{authUrl}', array('username' => '{username}', 'apiKey' => '{apiKey}'));
$service = $client->queuesService(null, '{region}');
// You MUST set a client ID before executing any operation. This ID must be a
// valid UUID. The SDK can set a random UUID for you if you don't want to
// define your own, just leave the argument empty.
$service->setClientId();
// Get an existing queue
$queue = $service->getQueue('{queueName}');
// Permanently delete it
$queue->delete();