mycq::QueueManager Class Reference
Manages queues of a MyCQ Server.
More...
#include <QueueManager.h>
List of all members.
Detailed Description
Manages queues of a MyCQ Server.
#include <iostream>
#include <string>
#include <sstream>
#include <vector>
#include "../MyCQClientCPP/MyCQClient.h"
using namespace mycq;
void examSetQueueSchema1(QueueSchema* queueSchema)
{
queueSchema->addBoolean("boolean");
queueSchema->addByte("byte");
queueSchema->addShort("short");
queueSchema->addUShort("ushort");
queueSchema->addInt("int");
queueSchema->addLong("long");
queueSchema->addFloat("float");
queueSchema->addDouble("double");
queueSchema->addDate("date");
queueSchema->addTime("time");
queueSchema->addDateTime("datetime");
queueSchema->addString("string", 100);
queueSchema->addVarString("varstring");
queueSchema->addBinary("binary", 100);
queueSchema->addVarBinary("varbinary");
}
void examQueueManager()
{
MyCQClient* client = MyCQFactory::getMyCQClient();
try
{
client->connect("localhost", 3030, "root", "1234");
QueueManager* queueManager = client->getQueueManager();
queueManager->deleteAllQueues();
QueueSchema* queueSchema = MyCQFactory::getQueueSchema();
examSetQueueSchema1(queueSchema);
queueManager->createP2PQueue("p2pQueue", queueSchema, 100);
P2PQueue* p2pQueue = queueManager->getP2PQueue("p2pQueue");
queueManager->close(p2pQueue);
queueManager->deleteQueue("p2pQueue");
queueManager->createTopicQueue("topicQueue", queueSchema, 100);
TopicQueue* topicQueue = queueManager->getTopicQueue("topicQueue");
queueManager->close(topicQueue);
queueManager->deleteQueue("topicQueue");
for(int i=0; i<100; i++)
{
std::stringstream temp;
temp << "p2pQueue";
temp << i;
queueManager->createP2PQueue(temp.str(), queueSchema, 100);
temp.str("");
temp << "topicQueue";
temp << i;
queueManager->createTopicQueue(temp.str(), queueSchema, 100);
}
P2PQueue* p2pQueues[100];
TopicQueue* topicQueues[100];
for(int i=0; i<100; i++)
{
std::stringstream temp;
temp << "p2pQueue";
temp << i;
p2pQueues[i] = queueManager->getP2PQueue(temp.str());
temp.str("");
temp << "topicQueue";
temp << i;
topicQueues[i] = queueManager->getTopicQueue(temp.str());
}
for(int i=0; i<100; i++)
{
queueManager->close(p2pQueues[i]);
queueManager->close(topicQueues[i]);
}
vector<string> result;
result = queueManager->getAllQueueNames();
for(size_t i=0; i<result.size(); i++)
{
std::cout << result[i] << std::endl;
}
result = queueManager->getAllP2PQueueNames();
for(size_t i=0; i<result.size(); i++)
{
std::cout << result[i] << std::endl;
}
result = queueManager->getAllTopicQueueNames();
for(size_t i=0; i<result.size(); i++)
{
std::cout << result[i] << std::endl;
}
queueManager->deleteAllQueues();
MyCQFactory::close(queueSchema);
}
catch(MyCQException& ex)
{
std::cout << "code:" << ex.getCode() << ", message:" << ex.getMessage();
}
client->close();
MyCQFactory::close(client);
}
Member Function Documentation
virtual void mycq::QueueManager::close |
( |
CQResultQueue * |
queue |
) |
[pure virtual] |
Close a cq result queue.
- Parameters:
-
| queue | A reference of a cq result queue. |
- Exceptions:
-
virtual void mycq::QueueManager::close |
( |
TopicQueue * |
queue |
) |
[pure virtual] |
Close a topic queue.
- Parameters:
-
| queue | A reference of a topic queue. |
- Exceptions:
-
virtual void mycq::QueueManager::close |
( |
P2PQueue * |
queue |
) |
[pure virtual] |
Close a p2p queue.
- Parameters:
-
| queue | A reference of a p2p queue. |
- Exceptions:
-
virtual void mycq::QueueManager::createP2PQueue |
( |
string |
queueName, |
|
|
QueueSchema * |
queueSchema, |
|
|
int |
queueSize | |
|
) |
| | [pure virtual] |
Create a p2p queue.
- Parameters:
-
| queueName | A queue name of a p2p queue to create. (size:= under 64). A queue name is a combination of alphabets and numerics which starts with alphabet character. |
| queueSchema | A reference of a queue schema, that will be the queue schema of a p2p queue to create. |
| queueSize | An integer greater than zero that will be the size of a p2p queue to create. |
- Exceptions:
-
virtual void mycq::QueueManager::createTopicQueue |
( |
string |
queueName, |
|
|
QueueSchema * |
queueSchema, |
|
|
int |
queueSize | |
|
) |
| | [pure virtual] |
Create a topic queue.
- Parameters:
-
| queueName | A queue name of a topic queue to create. (size:= under 64). A queue name is a combination of alphabets and numerics which starts with alphabet character. |
| queueSchema | A reference of a queue schema, that will be the queue schema of a topic queue to create. |
| queueSize | An integer greater than zero that will be the size of a topic queue to create. |
- Exceptions:
-
| MyCQException | An error occurred while creating a new topic queue. |
virtual void mycq::QueueManager::deleteAllQueues |
( |
|
) |
[pure virtual] |
Delete all queues in a MyCQ Server.
- Exceptions:
-
virtual void mycq::QueueManager::deleteQueue |
( |
string |
queueName |
) |
[pure virtual] |
Delete a queue in a MyCQ Server.
- Parameters:
-
| queueName | A queue name to delete. |
- Exceptions:
-
virtual vector<string> mycq::QueueManager::getAllCQResultQueueNames |
( |
|
) |
[pure virtual] |
Get all the cq result queue names of a MyCQ Server.
- Returns:
- Queue name list.
- Exceptions:
-
| MyCQException | An error occurred while getting the queue name list. |
virtual vector<string> mycq::QueueManager::getAllP2PQueueNames |
( |
|
) |
[pure virtual] |
Get all the p2p queue names of a MyCQ Server.
- Returns:
- Queue name list.
- Exceptions:
-
| MyCQException | An error occurred while getting the queue name list. |
virtual vector<string> mycq::QueueManager::getAllQueueNames |
( |
|
) |
[pure virtual] |
Get all the queue names of a MyCQ Server.
- Returns:
- Queue name list.
- Exceptions:
-
| MyCQException | An error occurred while getting the queue name list. |
virtual vector<string> mycq::QueueManager::getAllTopicQueueNames |
( |
|
) |
[pure virtual] |
Get all the topic queue names of a MyCQ Server.
- Returns:
- Queue name list.
- Exceptions:
-
| MyCQException | An error occurred while getting the queue name list. |
virtual CQResultQueue* mycq::QueueManager::getCQResultQueue |
( |
string |
queueName |
) |
[pure virtual] |
Get a cq result queue.
- Parameters:
-
| queueName | A queue name of a cq result queue to get. |
- Returns:
- A reference of a cq result queue.
- Exceptions:
-
virtual P2PQueue* mycq::QueueManager::getP2PQueue |
( |
string |
queueName |
) |
[pure virtual] |
Get a p2p queue.
- Parameters:
-
| queueName | A queue name of a p2p queue to get. |
- Returns:
- A reference of a p2p queue.
- Exceptions:
-
virtual TopicQueue* mycq::QueueManager::getTopicQueue |
( |
string |
queueName |
) |
[pure virtual] |
Get a topic queue.
- Parameters:
-
| queueName | A queue name of a topic queue to get. |
- Returns:
- A reference of a topic queue.
- Exceptions:
-
The documentation for this class was generated from the following file: