Author: aconway
Date: Mon Feb 20 20:45:22 2012
New Revision: 1291436

URL: http://svn.apache.org/viewvc?rev=1291436&view=rev
Log:
NO-JIRA: Fix missing EXTERN declarations, broke windows build.

Added:
    qpid/trunk/qpid/cpp/src/qmf/BrokerImportExport.h   (with props)
Modified:
    qpid/trunk/qpid/cpp/include/qpid/framing/SequenceNumber.h
    qpid/trunk/qpid/cpp/include/qpid/framing/SequenceSet.h
    qpid/trunk/qpid/cpp/include/qpid/types/Variant.h
    qpid/trunk/qpid/cpp/managementgen/qmfgen/schema.py
    qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Class.h
    qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Event.h
    qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Package.h
    qpid/trunk/qpid/cpp/src/qpid/broker/Broker.h
    qpid/trunk/qpid/cpp/src/qpid/broker/ExchangeRegistry.h
    qpid/trunk/qpid/cpp/src/qpid/broker/Link.h
    qpid/trunk/qpid/cpp/src/qpid/broker/LinkRegistry.cpp
    qpid/trunk/qpid/cpp/src/qpid/broker/LinkRegistry.h
    qpid/trunk/qpid/cpp/src/qpid/broker/Queue.h
    qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.h
    qpid/trunk/qpid/cpp/src/qpid/ha/ReplicatingSubscription.h

Modified: qpid/trunk/qpid/cpp/include/qpid/framing/SequenceNumber.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/include/qpid/framing/SequenceNumber.h?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/include/qpid/framing/SequenceNumber.h (original)
+++ qpid/trunk/qpid/cpp/include/qpid/framing/SequenceNumber.h Mon Feb 20 
20:45:22 2012
@@ -52,9 +52,9 @@ boost::equality_comparable<
     uint32_t getValue() const { return uint32_t(value); }
     operator uint32_t() const { return uint32_t(value); }
 
-    void encode(Buffer& buffer) const;
-    void decode(Buffer& buffer);
-    uint32_t encodedSize() const;
+    QPID_COMMON_EXTERN void encode(Buffer& buffer) const;
+    QPID_COMMON_EXTERN void decode(Buffer& buffer);
+    QPID_COMMON_EXTERN uint32_t encodedSize() const;
 
     template <class S> void serialize(S& s) { s(value); }
 

Modified: qpid/trunk/qpid/cpp/include/qpid/framing/SequenceSet.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/include/qpid/framing/SequenceSet.h?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/include/qpid/framing/SequenceSet.h (original)
+++ qpid/trunk/qpid/cpp/include/qpid/framing/SequenceSet.h Mon Feb 20 20:45:22 
2012
@@ -38,9 +38,9 @@ class QPID_COMMON_CLASS_EXTERN SequenceS
     SequenceSet(const SequenceNumber& start, const SequenceNumber finish) { 
add(start,finish); }
 
 
-    void encode(Buffer& buffer) const;
-    void decode(Buffer& buffer);
-    uint32_t encodedSize() const;
+    QPID_COMMON_EXTERN void encode(Buffer& buffer) const;
+    QPID_COMMON_EXTERN void decode(Buffer& buffer);
+    QPID_COMMON_EXTERN uint32_t encodedSize() const;
 
     QPID_COMMON_EXTERN bool contains(const SequenceNumber& s) const;
     QPID_COMMON_EXTERN void add(const SequenceNumber& s);

Modified: qpid/trunk/qpid/cpp/include/qpid/types/Variant.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/include/qpid/types/Variant.h?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/include/qpid/types/Variant.h (original)
+++ qpid/trunk/qpid/cpp/include/qpid/types/Variant.h Mon Feb 20 20:45:22 2012
@@ -60,9 +60,9 @@ enum VariantType {
     VAR_UUID
 };
 
-std::string getTypeName(VariantType type);
+QPID_TYPES_EXTERN std::string getTypeName(VariantType type);
 
-bool isIntegerType(VariantType type);
+QPID_TYPES_EXTERN bool isIntegerType(VariantType type);
 
 class VariantImpl;
 

Modified: qpid/trunk/qpid/cpp/managementgen/qmfgen/schema.py
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/managementgen/qmfgen/schema.py?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/managementgen/qmfgen/schema.py (original)
+++ qpid/trunk/qpid/cpp/managementgen/qmfgen/schema.py Mon Feb 20 20:45:22 2012
@@ -1471,7 +1471,7 @@ class SchemaClass:
   def genMethodIdDeclarations (self, stream, variables):
     number = 1
     for method in self.methods:
-      stream.write ("    static const uint32_t METHOD_" + 
method.getName().upper() +\
+      stream.write ("    QPID_BROKER_EXTERN static const uint32_t METHOD_" + 
method.getName().upper() +\
                     " = %d;\n" % number)
       number = number + 1
 

Modified: qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Class.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Class.h?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Class.h (original)
+++ qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Class.h Mon Feb 20 
20:45:22 2012
@@ -24,6 +24,7 @@
 /*MGEN:Root.Disclaimer*/
 
 #include "qpid/management/ManagementObject.h"
+#include "qmf/BrokerImportExport.h"
 
 namespace qpid {
     namespace management {
@@ -34,7 +35,7 @@ namespace qpid {
 namespace qmf {
 /*MGEN:Class.OpenNamespaces*/
 
-class /*MGEN:Class.NameCap*/ : public ::qpid::management::ManagementObject
+QPID_BROKER_CLASS_EXTERN class /*MGEN:Class.NameCap*/ : public 
::qpid::management::ManagementObject
 {
   private:
 
@@ -72,25 +73,25 @@ class /*MGEN:Class.NameCap*/ : public ::
     void aggregatePerThreadStats(struct PerThreadStats*) const;
 /*MGEN:ENDIF*/
   public:
-    static void writeSchema(std::string& schema);
-    void mapEncodeValues(::qpid::types::Variant::Map& map,
-                         bool includeProperties=true,
-                         bool includeStatistics=true);
-    void mapDecodeValues(const ::qpid::types::Variant::Map& map);
-    void doMethod(std::string&           methodName,
-                  const ::qpid::types::Variant::Map& inMap,
-                  ::qpid::types::Variant::Map& outMap,
-                  const std::string& userId);
-    std::string getKey() const;
+    QPID_BROKER_EXTERN static void writeSchema(std::string& schema);
+    QPID_BROKER_EXTERN void mapEncodeValues(::qpid::types::Variant::Map& map,
+                                          bool includeProperties=true,
+                                          bool includeStatistics=true);
+    QPID_BROKER_EXTERN void mapDecodeValues(const ::qpid::types::Variant::Map& 
map);
+    QPID_BROKER_EXTERN void doMethod(std::string&           methodName,
+                                   const ::qpid::types::Variant::Map& inMap,
+                                   ::qpid::types::Variant::Map& outMap,
+                                   const std::string& userId);
+    QPID_BROKER_EXTERN std::string getKey() const;
 /*MGEN:IF(Root.GenQMFv1)*/
-    uint32_t writePropertiesSize() const;
-    void readProperties(const std::string& buf);
-    void writeProperties(std::string& buf) const;
-    void writeStatistics(std::string& buf, bool skipHeaders = false);
-    void doMethod(std::string& methodName,
-                  const std::string& inBuf,
-                  std::string& outBuf,
-                  const std::string& userId);
+    QPID_BROKER_EXTERN uint32_t writePropertiesSize() const;
+    QPID_BROKER_EXTERN void readProperties(const std::string& buf);
+    QPID_BROKER_EXTERN void writeProperties(std::string& buf) const;
+    QPID_BROKER_EXTERN void writeStatistics(std::string& buf, bool skipHeaders 
= false);
+    QPID_BROKER_EXTERN void doMethod(std::string& methodName,
+                                   const std::string& inBuf,
+                                   std::string& outBuf,
+                                   const std::string& userId);
 /*MGEN:ENDIF*/
 
     writeSchemaCall_t getWriteSchemaCall() { return writeSchema; }
@@ -100,13 +101,17 @@ class /*MGEN:Class.NameCap*/ : public ::
     bool hasInst() { return false; }
 /*MGEN:ENDIF*/
 
-    /*MGEN:Class.NameCap*/(::qpid::management::ManagementAgent* agent,
-                            ::qpid::management::Manageable* 
coreObject/*MGEN:Class.ParentArg*//*MGEN:Class.ConstructorArgs*/);
-    ~/*MGEN:Class.NameCap*/();
+    QPID_BROKER_EXTERN /*MGEN:Class.NameCap*/(
+        ::qpid::management::ManagementAgent* agent,
+        ::qpid::management::Manageable* 
coreObject/*MGEN:Class.ParentArg*//*MGEN:Class.ConstructorArgs*/);
+
+    QPID_BROKER_EXTERN ~/*MGEN:Class.NameCap*/();
 
     /*MGEN:Class.SetGeneralReferenceDeclaration*/
 
-    static void registerSelf(::qpid::management::ManagementAgent* agent);
+    QPID_BROKER_EXTERN static void registerSelf(
+        ::qpid::management::ManagementAgent* agent);
+
     std::string& getPackageName() const { return packageName; }
     std::string& getClassName() const { return className; }
     uint8_t* getMd5Sum() const { return md5Sum; }

Modified: qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Event.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Event.h?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Event.h (original)
+++ qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Event.h Mon Feb 20 
20:45:22 2012
@@ -24,11 +24,12 @@
 /*MGEN:Root.Disclaimer*/
 
 #include "qpid/management/ManagementEvent.h"
+#include "qmf/BrokerImportExport.h"
 
 namespace qmf {
 /*MGEN:Event.OpenNamespaces*/
 
-class Event/*MGEN:Event.NameCap*/ : public ::qpid::management::ManagementEvent
+QPID_BROKER_CLASS_EXTERN class Event/*MGEN:Event.NameCap*/ : public 
::qpid::management::ManagementEvent
 {
   private:
     static void writeSchema (std::string& schema);
@@ -41,18 +42,18 @@ class Event/*MGEN:Event.NameCap*/ : publ
   public:
     writeSchemaCall_t getWriteSchemaCall(void) { return writeSchema; }
 
-    Event/*MGEN:Event.NameCap*/(/*MGEN:Event.ConstructorArgs*/);
-    ~Event/*MGEN:Event.NameCap*/() {};
+    QPID_BROKER_EXTERN 
Event/*MGEN:Event.NameCap*/(/*MGEN:Event.ConstructorArgs*/);
+    QPID_BROKER_EXTERN ~Event/*MGEN:Event.NameCap*/() {};
 
     static void registerSelf(::qpid::management::ManagementAgent* agent);
     std::string& getPackageName() const { return packageName; }
     std::string& getEventName() const { return eventName; }
     uint8_t* getMd5Sum() const { return md5Sum; }
     uint8_t getSeverity() const { return /*MGEN:Event.Severity*/; }
-    void encode(std::string& buffer) const;
-    void mapEncode(::qpid::types::Variant::Map& map) const;
+    QPID_BROKER_EXTERN void encode(std::string& buffer) const;
+    QPID_BROKER_EXTERN void mapEncode(::qpid::types::Variant::Map& map) const;
 
-    static bool match(const std::string& evt, const std::string& pkg);
+    QPID_BROKER_EXTERN static bool match(const std::string& evt, const 
std::string& pkg);
 };
 
 }/*MGEN:Event.CloseNamespaces*/

Modified: qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Package.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Package.h?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Package.h (original)
+++ qpid/trunk/qpid/cpp/managementgen/qmfgen/templates/Package.h Mon Feb 20 
20:45:22 2012
@@ -24,6 +24,7 @@
 /*MGEN:Root.Disclaimer*/
 
 #include "qpid//*MGEN:Class.AgentHeaderLocation*//ManagementAgent.h"
+#include "qmf/BrokerImportExport.h"
 
 namespace qmf {
 /*MGEN:Class.OpenNamespaces*/
@@ -31,8 +32,8 @@ namespace qmf {
 class Package
 {
   public:
-    Package (::qpid::management::ManagementAgent* agent);
-    ~Package () {}
+    QPID_BROKER_EXTERN Package (::qpid::management::ManagementAgent* agent);
+    QPID_BROKER_EXTERN ~Package () {}
 };
 
 }/*MGEN:Class.CloseNamespaces*/

Added: qpid/trunk/qpid/cpp/src/qmf/BrokerImportExport.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qmf/BrokerImportExport.h?rev=1291436&view=auto
==============================================================================
--- qpid/trunk/qpid/cpp/src/qmf/BrokerImportExport.h (added)
+++ qpid/trunk/qpid/cpp/src/qmf/BrokerImportExport.h Mon Feb 20 20:45:22 2012
@@ -0,0 +1,42 @@
+#ifndef QPID_BROKER_IMPORT_EXPORT_H
+#define QPID_BROKER_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(BROKER_EXPORT) || defined (qpidbroker_EXPORTS)
+#    define QPID_BROKER_EXTERN __declspec(dllexport)
+#  else
+#    define QPID_BROKER_EXTERN __declspec(dllimport)
+#  endif
+#  ifdef _MSC_VER
+#    define QPID_BROKER_CLASS_EXTERN
+#    define QPID_BROKER_INLINE_EXTERN QPID_BROKER_EXTERN
+#  else
+#    define QPID_BROKER_CLASS_EXTERN QPID_BROKER_EXTERN
+#    define QPID_BROKER_INLINE_EXTERN
+#  endif
+#else
+#  define QPID_BROKER_EXTERN
+#  define QPID_BROKER_CLASS_EXTERN
+#  define QPID_BROKER_INLINE_EXTERN
+#endif
+
+#endif

Propchange: qpid/trunk/qpid/cpp/src/qmf/BrokerImportExport.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: qpid/trunk/qpid/cpp/src/qmf/BrokerImportExport.h
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: qpid/trunk/qpid/cpp/src/qpid/broker/Broker.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/Broker.h?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/Broker.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/Broker.h Mon Feb 20 20:45:22 2012
@@ -205,7 +205,7 @@ public:
     ConsumerFactories consumerFactories;
 
   public:
-    virtual ~Broker();
+    QPID_BROKER_EXTERN virtual ~Broker();
 
     QPID_BROKER_EXTERN Broker(const Options& configuration);
     static QPID_BROKER_EXTERN boost::intrusive_ptr<Broker> create(const 
Options& configuration);
@@ -217,16 +217,16 @@ public:
      * port, which will be different if the configured port is
      * 0.
      */
-    virtual uint16_t getPort(const std::string& name) const;
+    QPID_BROKER_EXTERN virtual uint16_t getPort(const std::string& name) const;
 
     /**
      * Run the broker. Implements Runnable::run() so the broker
      * can be run in a separate thread.
      */
-    virtual void run();
+    QPID_BROKER_EXTERN virtual void run();
 
     /** Shut down the broker */
-    virtual void shutdown();
+    QPID_BROKER_EXTERN virtual void shutdown();
 
     QPID_BROKER_EXTERN void setStore (boost::shared_ptr<MessageStore>& store);
     MessageStore& getStore() { return *store; }
@@ -246,14 +246,14 @@ public:
     SessionManager& getSessionManager() { return sessionManager; }
     const std::string& getFederationTag() const { return federationTag; }
 
-    management::ManagementObject*     GetManagementObject (void) const;
-    management::Manageable*           GetVhostObject      (void) const;
-    management::Manageable::status_t  ManagementMethod (uint32_t methodId,
-                                                        management::Args& args,
-                                                        std::string& text);
+    QPID_BROKER_EXTERN management::ManagementObject* GetManagementObject() 
const;
+    QPID_BROKER_EXTERN management::Manageable* GetVhostObject() const;
+    QPID_BROKER_EXTERN management::Manageable::status_t ManagementMethod(
+        uint32_t methodId, management::Args& args, std::string& text);
 
     /** Add to the broker's protocolFactorys */
-    void registerProtocolFactory(const std::string& name, 
boost::shared_ptr<sys::ProtocolFactory>);
+    QPID_BROKER_EXTERN void registerProtocolFactory(
+        const std::string& name, boost::shared_ptr<sys::ProtocolFactory>);
 
     /** Accept connections */
     QPID_BROKER_EXTERN void accept();
@@ -271,15 +271,17 @@ public:
     /** Move messages from one queue to another.
         A zero quantity means to move all messages
     */
-    uint32_t queueMoveMessages( const std::string& srcQueue,
-                           const std::string& destQueue,
-                uint32_t  qty,
-                const qpid::types::Variant::Map& filter);
+    QPID_BROKER_EXTERN uint32_t queueMoveMessages(
+        const std::string& srcQueue,
+        const std::string& destQueue,
+        uint32_t  qty,
+        const qpid::types::Variant::Map& filter);
 
-    boost::shared_ptr<sys::ProtocolFactory> getProtocolFactory(const 
std::string& name = TCP_TRANSPORT) const;
+    QPID_BROKER_EXTERN boost::shared_ptr<sys::ProtocolFactory> 
getProtocolFactory(
+        const std::string& name = TCP_TRANSPORT) const;
 
     /** Expose poller so plugins can register their descriptors. */
-    boost::shared_ptr<sys::Poller> getPoller();
+    QPID_BROKER_EXTERN boost::shared_ptr<sys::Poller> getPoller();
 
     boost::shared_ptr<sys::ConnectionCodec::Factory> getConnectionFactory() { 
return factory; }
     void setConnectionFactory(boost::shared_ptr<sys::ConnectionCodec::Factory> 
f) { factory = f; }
@@ -289,7 +291,7 @@ public:
 
     /** Timer for tasks that must be synchronized if we are in a cluster */
     sys::Timer& getClusterTimer() { return clusterTimer.get() ? *clusterTimer 
: timer; }
-    void setClusterTimer(std::auto_ptr<sys::Timer>);
+    QPID_BROKER_EXTERN void setClusterTimer(std::auto_ptr<sys::Timer>);
 
     boost::function<std::vector<Url> ()> getKnownBrokers;
 
@@ -320,15 +322,14 @@ public:
      * context.
      *@return true if delivery of a message should be deferred.
      */
-    boost::function<bool (const std::string& queue,
-                          const boost::intrusive_ptr<Message>& msg)> 
deferDelivery;
+    boost::function<bool (const std::string& queue, const 
boost::intrusive_ptr<Message>& msg)> deferDelivery;
 
     bool isAuthenticating ( ) { return config.auth; }
     bool isTimestamping() { return config.timestampRcvMsgs; }
 
     typedef boost::function1<void, boost::shared_ptr<Queue> > QueueFunctor;
 
-    std::pair<boost::shared_ptr<Queue>, bool> createQueue(
+    QPID_BROKER_EXTERN std::pair<boost::shared_ptr<Queue>, bool> createQueue(
         const std::string& name,
         bool durable,
         bool autodelete,
@@ -337,30 +338,39 @@ public:
         const qpid::framing::FieldTable& arguments,
         const std::string& userId,
         const std::string& connectionId);
-    void deleteQueue(const std::string& name,
-                     const std::string& userId,
-                     const std::string& connectionId,
-                     QueueFunctor check = QueueFunctor());
-    std::pair<Exchange::shared_ptr, bool> createExchange(
+
+    QPID_BROKER_EXTERN void deleteQueue(
+        const std::string& name,
+        const std::string& userId,
+        const std::string& connectionId,
+        QueueFunctor check = QueueFunctor());
+
+    QPID_BROKER_EXTERN std::pair<Exchange::shared_ptr, bool> createExchange(
         const std::string& name,
         const std::string& type,
         bool durable,
         const std::string& alternateExchange,
         const qpid::framing::FieldTable& args,
         const std::string& userId, const std::string& connectionId);
-    void deleteExchange(const std::string& name, const std::string& userId,
-                        const std::string& connectionId);
-    void bind(const std::string& queue,
-              const std::string& exchange,
-              const std::string& key,
-              const qpid::framing::FieldTable& arguments,
-              const std::string& userId,
-              const std::string& connectionId);
-    void unbind(const std::string& queue,
-                const std::string& exchange,
-                const std::string& key,
-                const std::string& userId,
-                const std::string& connectionId);
+
+    QPID_BROKER_EXTERN void deleteExchange(
+        const std::string& name, const std::string& userId,
+        const std::string& connectionId);
+
+    QPID_BROKER_EXTERN void bind(
+        const std::string& queue,
+        const std::string& exchange,
+        const std::string& key,
+        const qpid::framing::FieldTable& arguments,
+        const std::string& userId,
+        const std::string& connectionId);
+
+    QPID_BROKER_EXTERN void unbind(
+        const std::string& queue,
+        const std::string& exchange,
+        const std::string& key,
+        const std::string& userId,
+        const std::string& connectionId);
 
     ConsumerFactories&  getConsumerFactories() { return consumerFactories; }
     ConnectionObservers& getConnectionObservers() { return 
connectionObservers; }

Modified: qpid/trunk/qpid/cpp/src/qpid/broker/ExchangeRegistry.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/ExchangeRegistry.h?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/ExchangeRegistry.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/ExchangeRegistry.h Mon Feb 20 20:45:22 
2012
@@ -54,7 +54,7 @@ class ExchangeRegistry{
        bool durable,
        const qpid::framing::FieldTable& args = framing::FieldTable());
     QPID_BROKER_EXTERN void destroy(const std::string& name);
-    Exchange::shared_ptr getDefault();
+    QPID_BROKER_EXTERN Exchange::shared_ptr getDefault();
 
     /**
      * Find the named exchange. Return 0 if not found.
@@ -75,7 +75,7 @@ class ExchangeRegistry{
     /** Register an exchange instance.
      *@return true if registered, false if exchange with same name is already  
registered.
      */
-    bool registerExchange(const Exchange::shared_ptr&);
+    QPID_BROKER_EXTERN bool registerExchange(const Exchange::shared_ptr&);
 
     QPID_BROKER_EXTERN void registerType(const std::string& type, 
FactoryFunction);
 
@@ -85,7 +85,7 @@ class ExchangeRegistry{
         for (ExchangeMap::const_iterator i = exchanges.begin(); i != 
exchanges.end(); ++i)
             f(i->second);
     }
-        
+
   private:
     typedef std::map<std::string, Exchange::shared_ptr> ExchangeMap;
     typedef std::map<std::string, FactoryFunction > FunctionMap;

Modified: qpid/trunk/qpid/cpp/src/qpid/broker/Link.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/Link.h?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/Link.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/Link.h Mon Feb 20 20:45:22 2012
@@ -24,9 +24,11 @@
 
 #include <boost/shared_ptr.hpp>
 #include "qpid/Url.h"
+#include "qpid/broker/BrokerImportExport.h"
 #include "qpid/broker/MessageStore.h"
 #include "qpid/broker/PersistableConfig.h"
 #include "qpid/broker/Bridge.h"
+#include "qpid/broker/BrokerImportExport.h"
 #include "qpid/sys/Mutex.h"
 #include "qpid/framing/FieldTable.h"
 #include "qpid/management/Manageable.h"
@@ -94,6 +96,13 @@ class Link : public PersistableConfig, p
     bool tryFailoverLH();            // Called during maintenance visit
     bool hideManagement() const;
 
+    void established(Connection*); // Called when connection is create
+    void opened();      // Called when connection is open (after create)
+    void closed(int, std::string);   // Called when connection goes away
+    void reconnectLH(const Address&); //called by LinkRegistry
+
+  friend class LinkRegistry; // to call established, opened, closed
+
   public:
     typedef boost::shared_ptr<Link> shared_ptr;
 
@@ -119,13 +128,9 @@ class Link : public PersistableConfig, p
     uint nextChannel();
     void add(Bridge::shared_ptr);
     void cancel(Bridge::shared_ptr);
-    void setUrl(const Url&); // Set URL for reconnection.
 
-    void established(Connection*); // Called when connection is create
-    void opened();      // Called when connection is open (after create)
-    void closed(int, std::string);   // Called when connection goes away
-    void reconnectLH(const Address&); //called by LinkRegistry
-    void close();       // Close the link from within the broker.
+    QPID_BROKER_EXTERN void setUrl(const Url&); // Set URL for reconnection.
+    QPID_BROKER_EXTERN void close(); // Close the link from within the broker.
 
     std::string getAuthMechanism() { return authMechanism; }
     std::string getUsername()      { return username; }

Modified: qpid/trunk/qpid/cpp/src/qpid/broker/LinkRegistry.cpp
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/LinkRegistry.cpp?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/LinkRegistry.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/LinkRegistry.cpp Mon Feb 20 20:45:22 
2012
@@ -25,7 +25,9 @@
 #include <iostream>
 #include <boost/format.hpp>
 
-using namespace qpid::broker;
+namespace qpid {
+namespace broker {
+
 using namespace qpid::sys;
 using std::string;
 using std::pair;
@@ -45,16 +47,15 @@ LinkRegistry::LinkRegistry () :
 {
 }
 
-namespace {
-struct ConnectionObserverImpl : public ConnectionObserver {
+class LinkRegistryConnectionObserver : public ConnectionObserver {
     LinkRegistry& links;
-    ConnectionObserverImpl(LinkRegistry& l) : links(l) {}
+  public:
+    LinkRegistryConnectionObserver(LinkRegistry& l) : links(l) {}
     void connection(Connection& c) { links.notifyConnection(c.getMgmtId(), 
&c); }
     void opened(Connection& c) { links.notifyOpened(c.getMgmtId()); }
     void closed(Connection& c) { links.notifyClosed(c.getMgmtId()); }
     void forced(Connection& c, const string& text) { 
links.notifyConnectionForced(c.getMgmtId(), text); }
 };
-}
 
 LinkRegistry::LinkRegistry (Broker* _broker) :
     broker(_broker),
@@ -62,7 +63,7 @@ LinkRegistry::LinkRegistry (Broker* _bro
     realm(broker->getOptions().realm)
 {
     broker->getConnectionObservers().add(
-        boost::shared_ptr<ConnectionObserver>(new 
ConnectionObserverImpl(*this)));
+        boost::shared_ptr<ConnectionObserver>(new 
LinkRegistryConnectionObserver(*this)));
 }
 
 LinkRegistry::~LinkRegistry() {}
@@ -368,3 +369,4 @@ void LinkRegistry::eachBridge(boost::fun
     for (BridgeMap::iterator i = bridges.begin(); i != bridges.end(); ++i) 
f(i->second);
 }
 
+}} // namespace qpid::broker

Modified: qpid/trunk/qpid/cpp/src/qpid/broker/LinkRegistry.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/LinkRegistry.h?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/LinkRegistry.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/LinkRegistry.h Mon Feb 20 20:45:22 2012
@@ -23,6 +23,7 @@
  */
 
 #include <map>
+#include "qpid/broker/BrokerImportExport.h"
 #include "qpid/broker/Bridge.h"
 #include "qpid/broker/MessageStore.h"
 #include "qpid/Address.h"
@@ -56,43 +57,50 @@ namespace broker {
         static std::string createKey(const Address& address);
         static std::string createKey(const std::string& host, uint16_t port);
 
+        // Methods called by the connection observer.
+        void notifyConnection (const std::string& key, Connection* c);
+        void notifyOpened     (const std::string& key);
+        void notifyClosed     (const std::string& key);
+        void notifyConnectionForced    (const std::string& key, const 
std::string& text);
+      friend class LinkRegistryConnectionObserver;
+
     public:
-        LinkRegistry (); // Only used in store tests
-        LinkRegistry (Broker* _broker);
-        ~LinkRegistry();
-
-        std::pair<boost::shared_ptr<Link>, bool>
-            declare(const std::string& host,
-                    uint16_t     port,
-                    const std::string& transport,
-                    bool         durable,
-                    const std::string& authMechanism,
-                    const std::string& username,
-                    const std::string& password);
-
-        std::pair<Bridge::shared_ptr, bool>
-            declare(const std::string& host,
-                    uint16_t     port,
-                    bool         durable,
-                    const std::string& src,
-                    const std::string& dest,
-                    const std::string& key,
-                    bool         isQueue,
-                    bool         isLocal,
-                    const std::string& id,
-                    const std::string& excludes,
-                    bool         dynamic,
-                    uint16_t     sync,
-                    Bridge::InitializeCallback=0
-            );
-
-        void destroy(const std::string& host, const uint16_t port);
-
-        void destroy(const std::string& host,
-                     const uint16_t     port,
-                     const std::string& src,
-                     const std::string& dest,
-                     const std::string& key);
+        QPID_BROKER_EXTERN LinkRegistry (); // Only used in store tests
+        QPID_BROKER_EXTERN LinkRegistry (Broker* _broker);
+        QPID_BROKER_EXTERN ~LinkRegistry();
+
+        QPID_BROKER_EXTERN std::pair<boost::shared_ptr<Link>, bool>
+        declare(const std::string& host,
+                uint16_t     port,
+                const std::string& transport,
+                bool         durable,
+                const std::string& authMechanism,
+                const std::string& username,
+                const std::string& password);
+
+        QPID_BROKER_EXTERN std::pair<Bridge::shared_ptr, bool>
+        declare(const std::string& host,
+                uint16_t     port,
+                bool         durable,
+                const std::string& src,
+                const std::string& dest,
+                const std::string& key,
+                bool         isQueue,
+                bool         isLocal,
+                const std::string& id,
+                const std::string& excludes,
+                bool         dynamic,
+                uint16_t     sync,
+                Bridge::InitializeCallback=0
+        );
+
+        QPID_BROKER_EXTERN void destroy(const std::string& host, const 
uint16_t port);
+
+        QPID_BROKER_EXTERN void destroy(const std::string& host,
+                                        const uint16_t     port,
+                                        const std::string& src,
+                                        const std::string& dest,
+                                        const std::string& key);
 
         /**
          * Register the manageable parent for declared queues
@@ -102,24 +110,20 @@ namespace broker {
         /**
          * Set the store to use.  May only be called once.
          */
-        void setStore (MessageStore*);
+        QPID_BROKER_EXTERN void setStore (MessageStore*);
 
         /**
          * Return the message store used.
          */
-        MessageStore* getStore() const;
+        QPID_BROKER_EXTERN MessageStore* getStore() const;
 
-        void notifyConnection (const std::string& key, Connection* c);
-        void notifyOpened     (const std::string& key);
-        void notifyClosed     (const std::string& key);
-        void notifyConnectionForced    (const std::string& key, const 
std::string& text);
-        std::string getAuthMechanism   (const std::string& key);
-        std::string getAuthCredentials (const std::string& key);
-        std::string getAuthIdentity    (const std::string& key);
-        std::string getUsername        (const std::string& key);
-        std::string getPassword        (const std::string& key);
-        std::string getHost            (const std::string& key);
-        uint16_t    getPort            (const std::string& key);
+        QPID_BROKER_EXTERN std::string getAuthMechanism   (const std::string& 
key);
+        QPID_BROKER_EXTERN std::string getAuthCredentials (const std::string& 
key);
+        QPID_BROKER_EXTERN std::string getAuthIdentity    (const std::string& 
key);
+        QPID_BROKER_EXTERN std::string getUsername        (const std::string& 
key);
+        QPID_BROKER_EXTERN std::string getPassword        (const std::string& 
key);
+        QPID_BROKER_EXTERN std::string getHost            (const std::string& 
key);
+        QPID_BROKER_EXTERN uint16_t    getPort            (const std::string& 
key);
 
         /**
          * Called by links failing over to new address
@@ -132,13 +136,13 @@ namespace broker {
          * updated but links won't actually establish connections and
          * bridges won't therefore pull or push any messages.
          */
-        void setPassive(bool);
-        bool isPassive() { return passive; }
+        QPID_BROKER_EXTERN void setPassive(bool);
+        QPID_BROKER_EXTERN bool isPassive() { return passive; }
 
         /** Iterate over each link in the registry. Used for cluster updates. 
*/
-        void eachLink(boost::function<void(boost::shared_ptr<Link>)> f);
+        QPID_BROKER_EXTERN void 
eachLink(boost::function<void(boost::shared_ptr<Link>)> f);
         /** Iterate over each bridge in the registry. Used for cluster 
updates. */
-        void eachBridge(boost::function<void(boost::shared_ptr< Bridge>)> f);
+        QPID_BROKER_EXTERN void 
eachBridge(boost::function<void(boost::shared_ptr< Bridge>)> f);
     };
 }
 }

Modified: qpid/trunk/qpid/cpp/src/qpid/broker/Queue.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/Queue.h?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/Queue.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/Queue.h Mon Feb 20 20:45:22 2012
@@ -235,8 +235,9 @@ class Queue : public boost::enable_share
     /**
      * Bind self to specified exchange, and record that binding for unbinding 
on delete.
      */
-    bool bind(boost::shared_ptr<Exchange> exchange, const std::string& key,
-              const qpid::framing::FieldTable& 
arguments=qpid::framing::FieldTable());
+    QPID_BROKER_EXTERN bool bind(
+        boost::shared_ptr<Exchange> exchange, const std::string& key,
+        const qpid::framing::FieldTable& 
arguments=qpid::framing::FieldTable());
 
     /** Acquire the message at the given position if it is available for 
acquire.  Not to
      * be used by clients, but used by the broker for queue management.
@@ -271,28 +272,29 @@ class Queue : public boost::enable_share
                                     bool exclusive = false);
     QPID_BROKER_EXTERN void cancel(Consumer::shared_ptr c);
 
-    uint32_t purge(const uint32_t purge_request=0,  //defaults to all messages
+    QPID_BROKER_EXTERN uint32_t purge(const uint32_t purge_request=0,  
//defaults to all messages
                    boost::shared_ptr<Exchange> 
dest=boost::shared_ptr<Exchange>(),
                    const ::qpid::types::Variant::Map *filter=0);
     QPID_BROKER_EXTERN void purgeExpired(sys::Duration);
 
     //move qty # of messages to destination Queue destq
-    uint32_t move(const Queue::shared_ptr destq, uint32_t qty,
-                  const qpid::types::Variant::Map *filter=0);
+    QPID_BROKER_EXTERN uint32_t move(
+        const Queue::shared_ptr destq, uint32_t qty,
+        const qpid::types::Variant::Map *filter=0);
 
     QPID_BROKER_EXTERN uint32_t getMessageCount() const;
     QPID_BROKER_EXTERN uint32_t getEnqueueCompleteMessageCount() const;
     QPID_BROKER_EXTERN uint32_t getConsumerCount() const;
     inline const std::string& getName() const { return name; }
-    bool isExclusiveOwner(const OwnershipToken* const o) const;
-    void releaseExclusiveOwnership();
-    bool setExclusiveOwner(const OwnershipToken* const o);
-    bool hasExclusiveConsumer() const;
-    bool hasExclusiveOwner() const;
+    QPID_BROKER_EXTERN bool isExclusiveOwner(const OwnershipToken* const o) 
const;
+    QPID_BROKER_EXTERN void releaseExclusiveOwnership();
+    QPID_BROKER_EXTERN bool setExclusiveOwner(const OwnershipToken* const o);
+    QPID_BROKER_EXTERN bool hasExclusiveConsumer() const;
+    QPID_BROKER_EXTERN bool hasExclusiveOwner() const;
     inline bool isDurable() const { return store != 0; }
     inline const framing::FieldTable& getSettings() const { return settings; }
     inline bool isAutoDelete() const { return autodelete; }
-    bool canAutoDelete() const;
+    QPID_BROKER_EXTERN bool canAutoDelete() const;
     const QueueBindings& getBindings() const { return bindings; }
 
     /**
@@ -301,8 +303,8 @@ class Queue : public boost::enable_share
     QPID_BROKER_EXTERN void setLastNodeFailure();
     QPID_BROKER_EXTERN void clearLastNodeFailure();
 
-    bool enqueue(TransactionContext* ctxt, boost::intrusive_ptr<Message>& msg, 
bool suppressPolicyCheck = false);
-    void enqueueAborted(boost::intrusive_ptr<Message> msg);
+    QPID_BROKER_EXTERN bool enqueue(TransactionContext* ctxt, 
boost::intrusive_ptr<Message>& msg, bool suppressPolicyCheck = false);
+    QPID_BROKER_EXTERN void enqueueAborted(boost::intrusive_ptr<Message> msg);
     /**
      * dequeue from store (only done once messages is acknowledged)
      */
@@ -311,7 +313,7 @@ class Queue : public boost::enable_share
      * Inform the queue that a previous transactional dequeue
      * committed.
      */
-    void dequeueCommitted(const QueuedMessage& msg);
+    QPID_BROKER_EXTERN void dequeueCommitted(const QueuedMessage& msg);
 
     /**
      * Inform queue of messages that were enqueued, have since
@@ -319,7 +321,7 @@ class Queue : public boost::enable_share
      * thus are still logically on the queue) - used in
      * clustered broker.
      */
-    void updateEnqueued(const QueuedMessage& msg);
+    QPID_BROKER_EXTERN void updateEnqueued(const QueuedMessage& msg);
 
     /**
      * Test whether the specified message (identified by its
@@ -328,7 +330,7 @@ class Queue : public boost::enable_share
      * have been delievered to a subscriber who has not yet
      * accepted it).
      */
-    bool isEnqueued(const QueuedMessage& msg);
+    QPID_BROKER_EXTERN bool isEnqueued(const QueuedMessage& msg);
 
     /**
      * Acquires the next available (oldest) message
@@ -338,17 +340,17 @@ class Queue : public boost::enable_share
     /** Get the message at position pos, returns true if found and sets msg */
     QPID_BROKER_EXTERN bool find(framing::SequenceNumber pos, QueuedMessage& 
msg ) const;
 
-    const QueuePolicy* getPolicy();
+    QPID_BROKER_EXTERN const QueuePolicy* getPolicy();
 
-    void setAlternateExchange(boost::shared_ptr<Exchange> exchange);
-    boost::shared_ptr<Exchange> getAlternateExchange();
-    bool isLocal(boost::intrusive_ptr<Message>& msg);
+    QPID_BROKER_EXTERN void setAlternateExchange(boost::shared_ptr<Exchange> 
exchange);
+    QPID_BROKER_EXTERN boost::shared_ptr<Exchange> getAlternateExchange();
+    QPID_BROKER_EXTERN bool isLocal(boost::intrusive_ptr<Message>& msg);
 
     //PersistableQueue support:
-    uint64_t getPersistenceId() const;
-    void setPersistenceId(uint64_t persistenceId) const;
-    void encode(framing::Buffer& buffer) const;
-    uint32_t encodedSize() const;
+    QPID_BROKER_EXTERN uint64_t getPersistenceId() const;
+    QPID_BROKER_EXTERN void setPersistenceId(uint64_t persistenceId) const;
+    QPID_BROKER_EXTERN void encode(framing::Buffer& buffer) const;
+    QPID_BROKER_EXTERN uint32_t encodedSize() const;
 
     /**
      * Restores a queue from encoded data (used in recovery)
@@ -362,15 +364,15 @@ class Queue : public boost::enable_share
     virtual void setExternalQueueStore(ExternalQueueStore* inst);
 
     // Increment the rejected-by-consumer counter.
-    void countRejected() const;
-    void countFlowedToDisk(uint64_t size) const;
-    void countLoadedFromDisk(uint64_t size) const;
+    QPID_BROKER_EXTERN void countRejected() const;
+    QPID_BROKER_EXTERN void countFlowedToDisk(uint64_t size) const;
+    QPID_BROKER_EXTERN void countLoadedFromDisk(uint64_t size) const;
 
     // Manageable entry points
-    management::ManagementObject* GetManagementObject (void) const;
+    QPID_BROKER_EXTERN management::ManagementObject* GetManagementObject 
(void) const;
     management::Manageable::status_t
-    ManagementMethod (uint32_t methodId, management::Args& args, std::string& 
text);
-    void query(::qpid::types::Variant::Map&) const;
+    QPID_BROKER_EXTERN ManagementMethod (uint32_t methodId, management::Args& 
args, std::string& text);
+    QPID_BROKER_EXTERN void query(::qpid::types::Variant::Map&) const;
 
     /** Apply f to each Message on the queue. */
     template <class F> void eachMessage(F f) {
@@ -396,31 +398,31 @@ class Queue : public boost::enable_share
     /** return current position sequence number for the next message on the 
queue.
      */
     QPID_BROKER_EXTERN framing::SequenceNumber getPosition();
-    void addObserver(boost::shared_ptr<QueueObserver>);
-    void removeObserver(boost::shared_ptr<QueueObserver>);
+    QPID_BROKER_EXTERN void addObserver(boost::shared_ptr<QueueObserver>);
+    QPID_BROKER_EXTERN void removeObserver(boost::shared_ptr<QueueObserver>);
     QPID_BROKER_EXTERN void insertSequenceNumbers(const std::string& key);
     /**
      * Notify queue that recovery has completed.
      */
-    void recoveryComplete(ExchangeRegistry& exchanges);
+    QPID_BROKER_EXTERN void recoveryComplete(ExchangeRegistry& exchanges);
 
     // For cluster update
-    QueueListeners& getListeners();
-    Messages& getMessages();
-    const Messages& getMessages() const;
+    QPID_BROKER_EXTERN QueueListeners& getListeners();
+    QPID_BROKER_EXTERN Messages& getMessages();
+    QPID_BROKER_EXTERN const Messages& getMessages() const;
 
     /**
      * Reserve space in policy for an enqueued message that
      * has been recovered in the prepared state (dtx only)
      */
-    void recoverPrepared(boost::intrusive_ptr<Message>& msg);
+    QPID_BROKER_EXTERN void recoverPrepared(boost::intrusive_ptr<Message>& 
msg);
 
-    void flush();
+    QPID_BROKER_EXTERN void flush();
 
-    Broker* getBroker();
+    QPID_BROKER_EXTERN Broker* getBroker();
 
     uint32_t getDequeueSincePurge() { return dequeueSincePurge.get(); }
-    void setDequeueSincePurge(uint32_t value);
+    QPID_BROKER_EXTERN void setDequeueSincePurge(uint32_t value);
 };
 }
 }

Modified: qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.h?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/SemanticState.h Mon Feb 20 20:45:22 2012
@@ -22,6 +22,7 @@
  *
  */
 
+#include "qpid/broker/BrokerImportExport.h"
 #include "qpid/broker/Consumer.h"
 #include "qpid/broker/Credit.h"
 #include "qpid/broker/Deliverable.h"
@@ -99,42 +100,44 @@ class SemanticState : private boost::non
         bool haveCredit();
 
       protected:
-        virtual bool doDispatch();
+        QPID_BROKER_EXTERN virtual bool doDispatch();
         size_t unacked() { return parent->unacked.size(); }
 
       public:
         typedef boost::shared_ptr<ConsumerImpl> shared_ptr;
 
-        ConsumerImpl(SemanticState* parent,
-                     const std::string& name, boost::shared_ptr<Queue> queue,
-                     bool ack, bool acquire, bool exclusive,
-                     const std::string& tag, const std::string& resumeId, 
uint64_t resumeTtl, const framing::FieldTable& arguments);
-        virtual ~ConsumerImpl();
-        OwnershipToken* getSession();
-        virtual bool deliver(QueuedMessage& msg);
-        bool filter(boost::intrusive_ptr<Message> msg);
-        bool accept(boost::intrusive_ptr<Message> msg);
-        void cancel() {}
-
-        void disableNotify();
-        void enableNotify();
-        void notify();
-        bool isNotifyEnabled() const;
-
-        void requestDispatch();
-
-        void setWindowMode();
-        void setCreditMode();
-        void addByteCredit(uint32_t value);
-        void addMessageCredit(uint32_t value);
-        void flush();
-        void stop();
-        void complete(DeliveryRecord&);
+        QPID_BROKER_EXTERN ConsumerImpl(
+            SemanticState* parent,
+            const std::string& name, boost::shared_ptr<Queue> queue,
+            bool ack, bool acquire, bool exclusive,
+            const std::string& tag, const std::string& resumeId, uint64_t 
resumeTtl,
+            const framing::FieldTable& arguments);
+        QPID_BROKER_EXTERN virtual ~ConsumerImpl();
+        QPID_BROKER_EXTERN OwnershipToken* getSession();
+        QPID_BROKER_EXTERN virtual bool deliver(QueuedMessage& msg);
+        QPID_BROKER_EXTERN bool filter(boost::intrusive_ptr<Message> msg);
+        QPID_BROKER_EXTERN bool accept(boost::intrusive_ptr<Message> msg);
+        QPID_BROKER_EXTERN void cancel() {}
+
+        QPID_BROKER_EXTERN void disableNotify();
+        QPID_BROKER_EXTERN void enableNotify();
+        QPID_BROKER_EXTERN void notify();
+        QPID_BROKER_EXTERN bool isNotifyEnabled() const;
+
+        QPID_BROKER_EXTERN void requestDispatch();
+
+        QPID_BROKER_EXTERN void setWindowMode();
+        QPID_BROKER_EXTERN void setCreditMode();
+        QPID_BROKER_EXTERN void addByteCredit(uint32_t value);
+        QPID_BROKER_EXTERN void addMessageCredit(uint32_t value);
+        QPID_BROKER_EXTERN void flush();
+        QPID_BROKER_EXTERN void stop();
+        QPID_BROKER_EXTERN void complete(DeliveryRecord&);
         boost::shared_ptr<Queue> getQueue() const { return queue; }
         bool isBlocked() const { return blocked; }
         bool setBlocked(bool set) { std::swap(set, blocked); return set; }
 
-        bool doOutput();
+        QPID_BROKER_EXTERN bool doOutput();
 
         Credit& getCredit() { return credit; }
         const Credit& getCredit() const { return credit; }
@@ -152,8 +155,11 @@ class SemanticState : private boost::non
         void acknowledged(const broker::QueuedMessage&) {}
 
         // manageable entry points
-        management::ManagementObject* GetManagementObject (void) const;
-        management::Manageable::status_t ManagementMethod (uint32_t methodId, 
management::Args& args, std::string& text);
+        QPID_BROKER_EXTERN management::ManagementObject*
+        GetManagementObject(void) const;
+
+        QPID_BROKER_EXTERN management::Manageable::status_t
+        ManagementMethod(uint32_t methodId, management::Args& args, 
std::string& text);
     };
 
     typedef std::map<std::string, DtxBuffer::shared_ptr> DtxBufferMap;

Modified: qpid/trunk/qpid/cpp/src/qpid/ha/ReplicatingSubscription.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/ha/ReplicatingSubscription.h?rev=1291436&r1=1291435&r2=1291436&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/ha/ReplicatingSubscription.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/ha/ReplicatingSubscription.h Mon Feb 20 
20:45:22 2012
@@ -33,7 +33,7 @@ namespace qpid {
 namespace broker {
 class Message;
 class Queue;
-class QueuedMessage;
+struct QueuedMessage;
 class OwnershipToken;
 }
 



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscr...@qpid.apache.org

Reply via email to