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 < 11
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
75class ICE_CLASS(ICE_API) ServantLocator
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;
150 virtual void deactivate(const ::std::string& category) = 0;
203#ifdef ICE_CPP11_COMPILER
287inline bool operator<(
const ServantLocator& lhs,
const ServantLocator& rhs)
289 return static_cast<const LocalObject&
>(lhs) <
static_cast<const LocalObject&
>(rhs);
#define ICE_API
Definition Config.h:197
#define ICE_MEMBER(API)
Definition Config.h:177
Shared & operator=(const Shared &)
Definition Shared.h:94
Base class for local Slice classes and interfaces.
Definition LocalObject.h:25
A servant locator is called by an object adapter to locate a servant that is not found in its active ...
Definition ServantLocator.h:196
ServantLocatorPtr PointerType
Definition ServantLocator.h:199
virtual ObjectPtr locate(const Current &curr, LocalObjectPtr &cookie)=0
Called before a request is dispatched if a servant cannot be found in the object adapter's active ser...
virtual void deactivate(const ::std::string &category)=0
Called when the object adapter in which this servant locator is installed is destroyed.
virtual void finished(const Current &curr, const ObjectPtr &servant, const LocalObjectPtr &cookie)=0
Called by the object adapter after a request has been made.
virtual ~ServantLocator()
Definition BuiltinSequences.h:113
IceInternal::Handle< Object > ObjectPtr
Definition ObjectF.h:21
::IceInternal::Handle< ServantLocator > ServantLocatorPtr
Definition ServantLocator.h:180
IceInternal::Handle< LocalObject > LocalObjectPtr
Definition LocalObjectF.h:17
IceUtil::Shared * upCast(::Ice::AsyncResult *)
Information about the current method invocation for servers.
Definition Current.h:259