bool listQueues (SQSConnectionPtr aSQS, std::string aQueueNamePrefix = "") { try { ListQueuesResponsePtr lRes = aSQS->listQueues (aQueueNamePrefix); std::cout << "queues listed sucessfully" << std::endl; lRes->open(); std::string lQueueURL; while (lRes->next (lQueueURL)) { std::cout << " Queue Name: " << lQueueURL << "\n"; } lRes->close(); } catch (CreateBucketException &e) { std::cerr << e.what() << std::endl; return false; } return true; }
bool deleteAllQueues (SQSConnectionPtr aSQS) { try { std::cout << "start deleting queues:" << std::endl; ListQueuesResponsePtr lListQueues = aSQS->listQueues(); lListQueues->open(); std::string lQueueURL; while (lListQueues->next (lQueueURL)) { DeleteQueueResponsePtr lDelete = aSQS->deleteQueue (lQueueURL); std::cout << " deleted queue: " << lQueueURL << std::endl; } lListQueues->close(); std::cout << "all queues successfully deleted." << std::endl; } catch (ListBucketException &e) { std::cerr << e.what() << std::endl; return false; } return true; }
int testQueues(SQSConnection* lSQSCon) { { try { // test create queue CreateQueueResponsePtr lCreateQueue = lSQSCon->createQueue("aQueue"); std::string lAQueueURL = lCreateQueue->getQueueUrl(); std::cout << "Bucket created successfully. QueueUrl: " << lAQueueURL << std::endl; lCreateQueue = lSQSCon->createQueue("bQueue"); std::string lBQueueURL = lCreateQueue->getQueueUrl(); std::cout << "Bucket created successfully. QueueUrl: " << lBQueueURL << std::endl; // test list queues without prefix ListQueuesResponsePtr lListQueues = lSQSCon->listQueues(); lListQueues->open(); std::string lName; int lCount = 0; while (lListQueues->next(lName)) { std::cout << "Queue Name: " << lName << std::endl; lCount++; } lListQueues->close(); if (lCount != 2) { std::cout << "Wrong number of queues (exp. 2): " << lCount << std::endl; return 1; } // test list queues with prefix lCount = 0; lListQueues = lSQSCon->listQueues("a"); lListQueues->open(); while (lListQueues->next(lName)) { std::cout << "Queue Name: " << lName << std::endl; lCount++; } lListQueues->close(); if (lCount != 1) { std::cout << "Wrong number of queues (exp. 1): " << lCount << std::endl; return 1; } // test delete queue DeleteQueueResponsePtr lDeleteQueue = lSQSCon->deleteQueue(lAQueueURL); std::cout << "Queue " << lAQueueURL << " has been deleted" << std::endl; lDeleteQueue = lSQSCon->deleteQueue(lBQueueURL); std::cout << "Queue " << lBQueueURL << " has been deleted" << std::endl; // test list queues (should be empty now) lCount = 0; lListQueues = lSQSCon->listQueues(); lListQueues->open(); while (lListQueues->next(lName)) { std::cout << "Queue Name: " << lName << std::endl; lCount++; } lListQueues->close(); if (lCount != 0) { std::cout << "Wrong number of queues (exp. 0): " << lCount << std::endl; return 1; } } catch (CreateBucketException& e) { std::cerr << "Couldn't create bucket" << std::endl; std::cerr << e.what() << std::endl; return 1; } } return 0; }