summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/console
diff options
context:
space:
mode:
authorStephen D. Huston <shuston@apache.org>2009-03-12 20:55:34 +0000
committerStephen D. Huston <shuston@apache.org>2009-03-12 20:55:34 +0000
commit0398410e8894287da530cfb63d6344817445bfc2 (patch)
treee4d789cd965f25c8fb0a51e1cf71df0a5330e73b /cpp/src/qpid/console
parent47db7ebfc533d2dc8a3dfc3b9d1273730b8779e6 (diff)
downloadqpid-python-0398410e8894287da530cfb63d6344817445bfc2.tar.gz
Changes to build DLLs instead of static libs on Windows; primarily added decorators to exported names. Fixes QPID-1673
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@753014 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/console')
-rw-r--r--cpp/src/qpid/console/Agent.h5
-rw-r--r--cpp/src/qpid/console/Broker.h12
-rw-r--r--cpp/src/qpid/console/ClassKey.h5
-rw-r--r--cpp/src/qpid/console/ConsoleImportExport.h33
-rw-r--r--cpp/src/qpid/console/ConsoleListener.h3
-rw-r--r--cpp/src/qpid/console/Event.h33
-rw-r--r--cpp/src/qpid/console/Object.h64
-rw-r--r--cpp/src/qpid/console/ObjectId.h5
-rw-r--r--cpp/src/qpid/console/Package.h1
-rw-r--r--cpp/src/qpid/console/SequenceManager.h5
-rw-r--r--cpp/src/qpid/console/SessionManager.h32
11 files changed, 126 insertions, 72 deletions
diff --git a/cpp/src/qpid/console/Agent.h b/cpp/src/qpid/console/Agent.h
index 3307a1b44b..884d4c92bd 100644
--- a/cpp/src/qpid/console/Agent.h
+++ b/cpp/src/qpid/console/Agent.h
@@ -22,6 +22,7 @@
#define _QPID_CONSOLE_AGENT_H_
#include "Broker.h"
+#include "ConsoleImportExport.h"
namespace qpid {
namespace console {
@@ -30,7 +31,7 @@ namespace console {
*
* \ingroup qmfconsoleapi
*/
- class Agent {
+ class QPID_CONSOLE_EXTERN Agent {
public:
typedef std::vector<Agent*> Vector;
@@ -49,7 +50,7 @@ namespace console {
const std::string label;
};
- std::ostream& operator<<(std::ostream& o, const Agent& agent);
+ QPID_CONSOLE_EXTERN std::ostream& operator<<(std::ostream& o, const Agent& agent);
}
}
diff --git a/cpp/src/qpid/console/Broker.h b/cpp/src/qpid/console/Broker.h
index 9df2380dff..ddbd973dfe 100644
--- a/cpp/src/qpid/console/Broker.h
+++ b/cpp/src/qpid/console/Broker.h
@@ -21,6 +21,7 @@
#ifndef _QPID_CONSOLE_BROKER_H_
#define _QPID_CONSOLE_BROKER_H_
+#include "ConsoleImportExport.h"
#include "qpid/client/Connection.h"
#include "qpid/client/ConnectionSettings.h"
#include "qpid/client/SubscriptionManager.h"
@@ -50,8 +51,9 @@ namespace console {
*/
class Broker : public client::MessageListener {
public:
- Broker(SessionManager& sm, client::ConnectionSettings& settings);
- ~Broker();
+ QPID_CONSOLE_EXTERN Broker(SessionManager& sm,
+ client::ConnectionSettings& settings);
+ QPID_CONSOLE_EXTERN ~Broker();
bool isConnected() const { return connected; }
const std::string& getError() const { return error; }
@@ -61,7 +63,7 @@ namespace console {
void addBinding(const std::string& key) {
connThreadBody.bindExchange("qpid.management", key);
}
- std::string getUrl() const;
+ QPID_CONSOLE_EXTERN std::string getUrl() const;
private:
friend class SessionManager;
@@ -120,10 +122,10 @@ namespace console {
void setBrokerId(const framing::Uuid& id) { brokerId = id; }
void appendAgents(std::vector<Agent*>& agents) const;
- friend std::ostream& operator<<(std::ostream& o, const Broker& k);
+ friend QPID_CONSOLE_EXTERN std::ostream& operator<<(std::ostream& o, const Broker& k);
};
- std::ostream& operator<<(std::ostream& o, const Broker& k);
+ QPID_CONSOLE_EXTERN std::ostream& operator<<(std::ostream& o, const Broker& k);
}
}
diff --git a/cpp/src/qpid/console/ClassKey.h b/cpp/src/qpid/console/ClassKey.h
index f6617e22d5..821b01c4ef 100644
--- a/cpp/src/qpid/console/ClassKey.h
+++ b/cpp/src/qpid/console/ClassKey.h
@@ -22,6 +22,7 @@
#define _QPID_CONSOLE_CLASSKEY_H_
#include <string>
+#include "ConsoleImportExport.h"
#include "Package.h"
#include "qpid/framing/Buffer.h"
@@ -32,7 +33,7 @@ namespace console {
*
* \ingroup qmfconsoleapi
*/
- class ClassKey {
+ class QPID_CONSOLE_EXTERN ClassKey {
public:
static const int HASH_SIZE = 16;
@@ -57,7 +58,7 @@ namespace console {
uint8_t hash[HASH_SIZE];
};
- std::ostream& operator<<(std::ostream& o, const ClassKey& k);
+ QPID_CONSOLE_EXTERN std::ostream& operator<<(std::ostream& o, const ClassKey& k);
}
}
diff --git a/cpp/src/qpid/console/ConsoleImportExport.h b/cpp/src/qpid/console/ConsoleImportExport.h
new file mode 100644
index 0000000000..e2d0af9db3
--- /dev/null
+++ b/cpp/src/qpid/console/ConsoleImportExport.h
@@ -0,0 +1,33 @@
+#ifndef QPID_CONSOLE_IMPORT_EXPORT_H
+#define QPID_CONSOLE_IMPORT_EXPORT_H
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ */
+
+#if defined(WIN32) && !defined(QPID_DECLARE_STATIC)
+#if defined(CONSOLE_EXPORT)
+#define QPID_CONSOLE_EXTERN __declspec(dllexport)
+#else
+#define QPID_CONSOLE_EXTERN __declspec(dllimport)
+#endif
+#else
+#define QPID_CONSOLE_EXTERN
+#endif
+
+#endif
diff --git a/cpp/src/qpid/console/ConsoleListener.h b/cpp/src/qpid/console/ConsoleListener.h
index d0db6034f6..d661c63120 100644
--- a/cpp/src/qpid/console/ConsoleListener.h
+++ b/cpp/src/qpid/console/ConsoleListener.h
@@ -22,6 +22,7 @@
#define _QPID_CONSOLE_CONSOLE_LISTENER_H_
#include <string>
+#include "ConsoleImportExport.h"
#include "Broker.h"
#include "ClassKey.h"
#include "Object.h"
@@ -36,7 +37,7 @@ namespace console {
*
* \ingroup qmfconsoleapi
*/
- class ConsoleListener{
+ class QPID_CONSOLE_EXTERN ConsoleListener{
public:
virtual ~ConsoleListener() {};
diff --git a/cpp/src/qpid/console/Event.h b/cpp/src/qpid/console/Event.h
index 14f5a64716..4d51708965 100644
--- a/cpp/src/qpid/console/Event.h
+++ b/cpp/src/qpid/console/Event.h
@@ -21,6 +21,7 @@
#ifndef _QPID_CONSOLE_EVENT_H_
#define _QPID_CONSOLE_EVENT_H_
+#include "ConsoleImportExport.h"
#include "Object.h"
#include "qpid/framing/Uuid.h"
#include "qpid/framing/FieldTable.h"
@@ -46,26 +47,28 @@ namespace console {
SEV_WARNING = 4, SEV_NOTICE = 5, SEV_INFO = 6, SEV_DEBUG = 7
} Severity;
- Event(Broker* broker, SchemaClass* schemaClass, framing::Buffer& buffer);
+ QPID_CONSOLE_EXTERN Event(Broker* broker,
+ SchemaClass* schemaClass,
+ framing::Buffer& buffer);
Broker* getBroker() const { return broker; }
- const ClassKey& getClassKey() const;
+ QPID_CONSOLE_EXTERN const ClassKey& getClassKey() const;
SchemaClass* getSchema() const { return schema; }
const Object::AttributeMap& getAttributes() const { return attributes; }
uint64_t getTimestamp() const { return timestamp; }
uint8_t getSeverity() const { return severity; }
- std::string getSeverityString() const;
+ QPID_CONSOLE_EXTERN std::string getSeverityString() const;
- ObjectId attrRef(const std::string& key) const;
- uint32_t attrUint(const std::string& key) const;
- int32_t attrInt(const std::string& key) const;
- uint64_t attrUint64(const std::string& key) const;
- int64_t attrInt64(const std::string& key) const;
- std::string attrString(const std::string& key) const;
- bool attrBool(const std::string& key) const;
- float attrFloat(const std::string& key) const;
- double attrDouble(const std::string& key) const;
- framing::Uuid attrUuid(const std::string& key) const;
- framing::FieldTable attrMap(const std::string& key) const;
+ QPID_CONSOLE_EXTERN ObjectId attrRef(const std::string& key) const;
+ QPID_CONSOLE_EXTERN uint32_t attrUint(const std::string& key) const;
+ QPID_CONSOLE_EXTERN int32_t attrInt(const std::string& key) const;
+ QPID_CONSOLE_EXTERN uint64_t attrUint64(const std::string& key) const;
+ QPID_CONSOLE_EXTERN int64_t attrInt64(const std::string& key) const;
+ QPID_CONSOLE_EXTERN std::string attrString(const std::string& key) const;
+ QPID_CONSOLE_EXTERN bool attrBool(const std::string& key) const;
+ QPID_CONSOLE_EXTERN float attrFloat(const std::string& key) const;
+ QPID_CONSOLE_EXTERN double attrDouble(const std::string& key) const;
+ QPID_CONSOLE_EXTERN framing::Uuid attrUuid(const std::string& key) const;
+ QPID_CONSOLE_EXTERN framing::FieldTable attrMap(const std::string& key) const;
private:
Broker* broker;
@@ -75,7 +78,7 @@ namespace console {
Object::AttributeMap attributes;
};
- std::ostream& operator<<(std::ostream& o, const Event& event);
+ QPID_CONSOLE_EXTERN std::ostream& operator<<(std::ostream& o, const Event& event);
}
}
diff --git a/cpp/src/qpid/console/Object.h b/cpp/src/qpid/console/Object.h
index 2c6993fc8a..d2fb09ecca 100644
--- a/cpp/src/qpid/console/Object.h
+++ b/cpp/src/qpid/console/Object.h
@@ -21,6 +21,7 @@
#ifndef _QPID_CONSOLE_OBJECT_H_
#define _QPID_CONSOLE_OBJECT_H_
+#include "ConsoleImportExport.h"
#include "ObjectId.h"
#include "qpid/framing/Uuid.h"
#include "qpid/framing/FieldTable.h"
@@ -55,47 +56,50 @@ namespace console {
public:
typedef std::vector<Object> Vector;
struct AttributeMap : public std::map<std::string, boost::shared_ptr<Value> > {
- void addRef(const std::string& key, const ObjectId& val);
- void addUint(const std::string& key, uint32_t val);
- void addInt(const std::string& key, int32_t val);
- void addUint64(const std::string& key, uint64_t val);
- void addInt64(const std::string& key, int64_t val);
- void addString(const std::string& key, const std::string& val);
- void addBool(const std::string& key, bool val);
- void addFloat(const std::string& key, float val);
- void addDouble(const std::string& key, double val);
- void addUuid(const std::string& key, const framing::Uuid& val);
- void addMap(const std::string& key, const framing::FieldTable& val);
+ QPID_CONSOLE_EXTERN void addRef(const std::string& key, const ObjectId& val);
+ QPID_CONSOLE_EXTERN void addUint(const std::string& key, uint32_t val);
+ QPID_CONSOLE_EXTERN void addInt(const std::string& key, int32_t val);
+ QPID_CONSOLE_EXTERN void addUint64(const std::string& key, uint64_t val);
+ QPID_CONSOLE_EXTERN void addInt64(const std::string& key, int64_t val);
+ QPID_CONSOLE_EXTERN void addString(const std::string& key, const std::string& val);
+ QPID_CONSOLE_EXTERN void addBool(const std::string& key, bool val);
+ QPID_CONSOLE_EXTERN void addFloat(const std::string& key, float val);
+ QPID_CONSOLE_EXTERN void addDouble(const std::string& key, double val);
+ QPID_CONSOLE_EXTERN void addUuid(const std::string& key, const framing::Uuid& val);
+ QPID_CONSOLE_EXTERN void addMap(const std::string& key, const framing::FieldTable& val);
};
- Object(Broker* broker, SchemaClass* schemaClass, framing::Buffer& buffer, bool prop, bool stat);
- ~Object();
+ QPID_CONSOLE_EXTERN Object(Broker* broker, SchemaClass* schemaClass, framing::Buffer& buffer, bool prop, bool stat);
+ QPID_CONSOLE_EXTERN ~Object();
Broker* getBroker() const { return broker; }
const ObjectId& getObjectId() const { return objectId; }
- const ClassKey& getClassKey() const;
+ QPID_CONSOLE_EXTERN const ClassKey& getClassKey() const;
SchemaClass* getSchema() const { return schema; }
uint64_t getCurrentTime() const { return currentTime; }
uint64_t getCreateTime() const { return createTime; }
uint64_t getDeleteTime() const { return deleteTime; }
bool isDeleted() const { return deleteTime != 0; }
- std::string getIndex() const;
- void mergeUpdate(const Object& updated);
+ QPID_CONSOLE_EXTERN std::string getIndex() const;
+ QPID_CONSOLE_EXTERN void mergeUpdate(const Object& updated);
const AttributeMap& getAttributes() const { return attributes; }
- void invokeMethod(const std::string name, const AttributeMap& args, MethodResponse& result);
- void handleMethodResp(framing::Buffer& buffer, uint32_t sequence);
+ QPID_CONSOLE_EXTERN void invokeMethod(const std::string name,
+ const AttributeMap& args,
+ MethodResponse& result);
+ QPID_CONSOLE_EXTERN void handleMethodResp(framing::Buffer& buffer,
+ uint32_t sequence);
- ObjectId attrRef(const std::string& key) const;
- uint32_t attrUint(const std::string& key) const;
- int32_t attrInt(const std::string& key) const;
- uint64_t attrUint64(const std::string& key) const;
- int64_t attrInt64(const std::string& key) const;
- std::string attrString(const std::string& key) const;
- bool attrBool(const std::string& key) const;
- float attrFloat(const std::string& key) const;
- double attrDouble(const std::string& key) const;
- framing::Uuid attrUuid(const std::string& key) const;
- framing::FieldTable attrMap(const std::string& key) const;
+ QPID_CONSOLE_EXTERN ObjectId attrRef(const std::string& key) const;
+ QPID_CONSOLE_EXTERN uint32_t attrUint(const std::string& key) const;
+ QPID_CONSOLE_EXTERN int32_t attrInt(const std::string& key) const;
+ QPID_CONSOLE_EXTERN uint64_t attrUint64(const std::string& key) const;
+ QPID_CONSOLE_EXTERN int64_t attrInt64(const std::string& key) const;
+ QPID_CONSOLE_EXTERN std::string attrString(const std::string& key) const;
+ QPID_CONSOLE_EXTERN bool attrBool(const std::string& key) const;
+ QPID_CONSOLE_EXTERN float attrFloat(const std::string& key) const;
+ QPID_CONSOLE_EXTERN double attrDouble(const std::string& key) const;
+ QPID_CONSOLE_EXTERN framing::Uuid attrUuid(const std::string& key) const;
+ QPID_CONSOLE_EXTERN framing::FieldTable attrMap(const std::string& key) const;
private:
Broker* broker;
@@ -111,7 +115,7 @@ namespace console {
void parsePresenceMasks(framing::Buffer& buffer, std::set<std::string>& excludeList);
};
- std::ostream& operator<<(std::ostream& o, const Object& object);
+ QPID_CONSOLE_EXTERN std::ostream& operator<<(std::ostream& o, const Object& object);
}
}
diff --git a/cpp/src/qpid/console/ObjectId.h b/cpp/src/qpid/console/ObjectId.h
index 73304ca306..ac0e8d8b03 100644
--- a/cpp/src/qpid/console/ObjectId.h
+++ b/cpp/src/qpid/console/ObjectId.h
@@ -22,6 +22,7 @@
#define _QPID_CONSOLE_OBJECTID_H
#include <iostream>
+#include "ConsoleImportExport.h"
#include "qpid/sys/IntegerTypes.h"
namespace qpid {
@@ -34,7 +35,7 @@ namespace console {
*
* \ingroup qmfconsoleapi
*/
- class ObjectId {
+ class QPID_CONSOLE_EXTERN ObjectId {
public:
ObjectId() : first(0), second(0) {}
ObjectId(framing::Buffer& buffer);
@@ -61,7 +62,7 @@ namespace console {
uint64_t second;
};
- std::ostream& operator<<(std::ostream& o, const ObjectId& id);
+ QPID_CONSOLE_EXTERN std::ostream& operator<<(std::ostream& o, const ObjectId& id);
}
}
diff --git a/cpp/src/qpid/console/Package.h b/cpp/src/qpid/console/Package.h
index 18203cb807..3cc63c8b75 100644
--- a/cpp/src/qpid/console/Package.h
+++ b/cpp/src/qpid/console/Package.h
@@ -23,6 +23,7 @@
#include <string>
#include <map>
+#include "ConsoleImportExport.h"
#include "qpid/sys/IntegerTypes.h"
namespace qpid {
diff --git a/cpp/src/qpid/console/SequenceManager.h b/cpp/src/qpid/console/SequenceManager.h
index c7a8c20fe6..5a041f530b 100644
--- a/cpp/src/qpid/console/SequenceManager.h
+++ b/cpp/src/qpid/console/SequenceManager.h
@@ -21,6 +21,7 @@
#ifndef _QPID_CONSOLE_SEQUENCEMANAGER_H_
#define _QPID_CONSOLE_SEQUENCEMANAGER_H_
+#include "ConsoleImportExport.h"
#include "qpid/sys/Mutex.h"
#include <map>
#include <string>
@@ -38,8 +39,8 @@ namespace console {
typedef std::set<uint32_t> set;
SequenceManager() : sequence(0) {}
- uint32_t reserve(const std::string& context = "");
- std::string release(uint32_t seq);
+ QPID_CONSOLE_EXTERN uint32_t reserve(const std::string& context = "");
+ QPID_CONSOLE_EXTERN std::string release(uint32_t seq);
private:
sys::Mutex lock;
diff --git a/cpp/src/qpid/console/SessionManager.h b/cpp/src/qpid/console/SessionManager.h
index ab6e111caa..4341fe317c 100644
--- a/cpp/src/qpid/console/SessionManager.h
+++ b/cpp/src/qpid/console/SessionManager.h
@@ -22,6 +22,7 @@
*
*/
+#include "ConsoleImportExport.h"
#include "Broker.h"
#include "Package.h"
#include "SequenceManager.h"
@@ -80,8 +81,8 @@ class SessionManager
* and bindClass methods. If userBindings is false, the listener will receive
* updates for all object classes.
*/
- SessionManager(ConsoleListener* listener = 0,
- Settings settings = Settings());
+ QPID_CONSOLE_EXTERN SessionManager(ConsoleListener* listener = 0,
+ Settings settings = Settings());
/** Connect a broker to the console session
*
@@ -89,32 +90,33 @@ class SessionManager
*@return broker object if operation is successful
* an exception shall be thrown.
*/
- Broker* addBroker(client::ConnectionSettings& settings);
+ QPID_CONSOLE_EXTERN Broker* addBroker(client::ConnectionSettings& settings);
/** Disconnect a broker from the console session
*
*@param broker The broker object returned from an earlier call to addBroker.
*/
- void delBroker(Broker* broker);
+ QPID_CONSOLE_EXTERN void delBroker(Broker* broker);
/** Get a list of known management packages
*
*@param packages Vector of package names returned by the session manager.
*/
- void getPackages(NameVector& packages);
+ QPID_CONSOLE_EXTERN void getPackages(NameVector& packages);
/** Get a list of class keys associated with a package
*
*@param classKeys List of class keys returned by the session manager.
*@param packageName Name of package being queried.
*/
- void getClasses(KeyVector& classKeys, const std::string& packageName);
+ QPID_CONSOLE_EXTERN void getClasses(KeyVector& classKeys,
+ const std::string& packageName);
/** Get the schema of a class given its class key
*
*@param classKey Class key of the desired schema.
*/
- SchemaClass& getSchema(const ClassKey& classKey);
+ QPID_CONSOLE_EXTERN SchemaClass& getSchema(const ClassKey& classKey);
/** Request that updates be received for all classes within a package
*
@@ -123,7 +125,7 @@ class SessionManager
*
*@param packageName Name of the package to which to bind.
*/
- void bindPackage(const std::string& packageName);
+ QPID_CONSOLE_EXTERN void bindPackage(const std::string& packageName);
/** Request update to be received for a particular class
*
@@ -132,8 +134,9 @@ class SessionManager
*
*@param classKey Class key of class to which to bind.
*/
- void bindClass(const ClassKey& classKey);
- void bindClass(const std::string& packageName, const std::string& className);
+ QPID_CONSOLE_EXTERN void bindClass(const ClassKey& classKey);
+ QPID_CONSOLE_EXTERN void bindClass(const std::string& packageName,
+ const std::string& className);
/** Get a list of qmf agents known to the session manager.
*
@@ -141,7 +144,8 @@ class SessionManager
*@param broker Return agents registered with this broker only. If NULL, return agents
* from all connected brokers.
*/
- void getAgents(Agent::Vector& agents, Broker* broker = 0);
+ QPID_CONSOLE_EXTERN void getAgents(Agent::Vector& agents,
+ Broker* broker = 0);
/** Get objects from agents. There are four variants of this method with different ways of
* specifying from which class objects are being queried.
@@ -153,8 +157,10 @@ class SessionManager
*@param broker Restrict the query to this broker, or all brokers if NULL.
*@param agent Restrict the query to this agent, or all agents if NULL.
*/
- void getObjects(Object::Vector& objects, const std::string& className,
- Broker* broker = 0, Agent* agent = 0);
+ QPID_CONSOLE_EXTERN void getObjects(Object::Vector& objects,
+ const std::string& className,
+ Broker* broker = 0,
+ Agent* agent = 0);
//void getObjects(Object::Vector& objects, const ClassKey& classKey,
// Broker* broker = 0, Agent* agent = 0);
//void getObjects(Object::Vector& objects, const ObjectId& objectId,