diff options
| author | Stephen D. Huston <shuston@apache.org> | 2009-03-12 20:55:34 +0000 |
|---|---|---|
| committer | Stephen D. Huston <shuston@apache.org> | 2009-03-12 20:55:34 +0000 |
| commit | 0398410e8894287da530cfb63d6344817445bfc2 (patch) | |
| tree | e4d789cd965f25c8fb0a51e1cf71df0a5330e73b /cpp/src/qpid/console | |
| parent | 47db7ebfc533d2dc8a3dfc3b9d1273730b8779e6 (diff) | |
| download | qpid-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.h | 5 | ||||
| -rw-r--r-- | cpp/src/qpid/console/Broker.h | 12 | ||||
| -rw-r--r-- | cpp/src/qpid/console/ClassKey.h | 5 | ||||
| -rw-r--r-- | cpp/src/qpid/console/ConsoleImportExport.h | 33 | ||||
| -rw-r--r-- | cpp/src/qpid/console/ConsoleListener.h | 3 | ||||
| -rw-r--r-- | cpp/src/qpid/console/Event.h | 33 | ||||
| -rw-r--r-- | cpp/src/qpid/console/Object.h | 64 | ||||
| -rw-r--r-- | cpp/src/qpid/console/ObjectId.h | 5 | ||||
| -rw-r--r-- | cpp/src/qpid/console/Package.h | 1 | ||||
| -rw-r--r-- | cpp/src/qpid/console/SequenceManager.h | 5 | ||||
| -rw-r--r-- | cpp/src/qpid/console/SessionManager.h | 32 |
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, |
