Ice 3.7 C++11 API Reference
|
Go to the documentation of this file.
16 #ifndef __Ice_ServantLocator_h__
17 #define __Ice_ServantLocator_h__
33 #ifndef ICE_IGNORE_VERSION
34 # if ICE_INT_VERSION / 100 != 307
35 # error Ice version mismatch!
37 # if ICE_INT_VERSION % 100 >= 50
38 # error Beta header file detected
40 # if ICE_INT_VERSION % 100 < 10
41 # error Ice patch level mismatch!
46 # if defined(ICE_STATIC_LIBS)
48 # elif defined(ICE_API_EXPORTS)
49 # define ICE_API ICE_DECLSPEC_EXPORT
51 # define ICE_API ICE_DECLSPEC_IMPORT
55 #ifdef ICE_CPP11_MAPPING // C++11 mapping
113 virtual ::std::shared_ptr<::Ice::Object>
locate(
const Current& curr, ::std::shared_ptr<void>& cookie) = 0;
139 virtual void finished(
const Current& curr, const ::std::shared_ptr<Object>& servant, const ::std::shared_ptr<void>& cookie) = 0;
166 using ServantLocatorPtr = ::std::shared_ptr<ServantLocator>;
171 #else // C++98 mapping
176 class ServantLocator;
180 typedef ::IceInternal::Handle< ServantLocator> ServantLocatorPtr;
195 class ICE_API ServantLocator :
public virtual LocalObject
199 typedef ServantLocatorPtr PointerType;
201 virtual ~ServantLocator();
203 #ifdef ICE_CPP11_COMPILER
204 ServantLocator() =
default;
205 ServantLocator(
const ServantLocator&) =
default;
206 ServantLocator& operator=(
const ServantLocator&) =
default;
241 virtual ObjectPtr locate(
const Current& curr,
LocalObjectPtr& cookie) = 0;
267 virtual void finished(
const Current& curr,
const ObjectPtr& servant,
const LocalObjectPtr& cookie) = 0;
278 virtual void deactivate(const ::std::string& category) = 0;
282 inline bool operator==(
const ServantLocator& lhs,
const ServantLocator& rhs)
284 return static_cast<const LocalObject&
>(lhs) ==
static_cast<const LocalObject&
>(rhs);
287 inline bool operator<(
const ServantLocator& lhs,
const ServantLocator& rhs)
289 return static_cast<const LocalObject&
>(lhs) <
static_cast<const LocalObject&
>(rhs);
A servant locator is called by an object adapter to locate a servant that is not found in its active ...
Definition: ServantLocator.h:76
IceInternal::Handle< LocalObject > LocalObjectPtr
Definition: LocalObjectF.h:17
bool operator==(const C &lhs, const C &rhs)
Relational operator for generated structs and classes.
Definition: Comparable.h:184
IceUtil::Shared * upCast(::Ice::LocalObject *)
#define ICE_API
Definition: Config.h:197
#define ICE_MEMBER(API)
Definition: Config.h:177
virtual ::std::shared_ptr<::Ice::Object > locate(const Current &curr, ::std::shared_ptr< void > &cookie)=0
Called before a request is dispatched if a servant cannot be found in the object adapter's active ser...
bool operator<(const C &lhs, const C &rhs)
Relational operator for generated structs and classes.
Definition: Comparable.h:136
virtual ~ServantLocator()
virtual void deactivate(const ::std::string &category)=0
Called when the object adapter in which this servant locator is installed is destroyed.
Definition: BuiltinSequences.h:56
virtual void finished(const Current &curr, const ::std::shared_ptr< Object > &servant, const ::std::shared_ptr< void > &cookie)=0
Called by the object adapter after a request has been made.
Information about the current method invocation for servers.
Definition: Current.h:120