00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef _ACTIVEMQ_CMSUTIL_DESTINATIONRESOLVER_H_
00018 #define _ACTIVEMQ_CMSUTIL_DESTINATIONRESOLVER_H_
00019
00020 #include <activemq/util/Config.h>
00021 #include <string>
00022
00023 namespace cms {
00024 class Session;
00025 class Destination;
00026 }
00027 namespace activemq {
00028 namespace cmsutil {
00029
00030
00031 class ResourceLifecycleManager;
00032
00036 class AMQCPP_API DestinationResolver {
00037 public:
00038
00039 virtual ~DestinationResolver();
00040
00049 virtual void init(ResourceLifecycleManager* mgr) = 0;
00050
00054 virtual void destroy() = 0;
00055
00074 virtual cms::Destination* resolveDestinationName(cms::Session* session,
00075 const std::string& destName,
00076 bool pubSubDomain) = 0;
00077
00078 };
00079
00080 }}
00081
00082 #endif