Ice 3.7 C++11 API Reference
Public Types | Public Member Functions | Static Public Member Functions | List of all members
Ice::RouterFinder Class Referenceabstract

This inferface should be implemented by services implementing the Ice::Router interface. More...

#include <Ice/Ice.h>

Inheritance diagram for Ice::RouterFinder:
Inheritance graph
[legend]
Collaboration diagram for Ice::RouterFinder:
Collaboration graph
[legend]

Public Types

using ProxyType = RouterFinderPrx
 

Public Member Functions

virtual ::std::shared_ptr< RouterPrxgetRouter (const Current &current)=0
 Get the router proxy implemented by the process hosting this finder object. More...
 
virtual ::std::string ice_id (const Current &current) const override
 Obtains a Slice type ID representing the most-derived interface supported by this object. More...
 
virtual ::std::vector<::std::string > ice_ids (const Current &current) const override
 Obtains a list of the Slice type IDs representing the interfaces supported by this object. More...
 
virtual bool ice_isA (::std::string id, const Current &current) const override
 Determines whether this object supports an interface with the given Slice type ID. More...
 
- Public Member Functions inherited from Ice::Object
virtual bool ice_dispatch (Ice::Request &request, std::function< bool()> response=nullptr, std::function< bool(std::exception_ptr)> error=nullptr)
 Dispatches an invocation to a servant. More...
 
virtual bool ice_isA (std::string s, const Current &current) const
 Tests whether this object supports a specific Slice interface. More...
 
virtual void ice_ping (const Current &current) const
 Tests whether this object can be reached. More...
 
virtual ~Object ()=default
 

Static Public Member Functions

static const ::std::string & ice_staticId ()
 Obtains the Slice type ID corresponding to this class. More...
 
- Static Public Member Functions inherited from Ice::Object
static const std::string & ice_staticId ()
 Obtains the Slice type ID of this type. More...
 

Detailed Description

This inferface should be implemented by services implementing the Ice::Router interface.

It should be advertised through an Ice object with the identity `Ice/RouterFinder'. This allows clients to retrieve the router proxy with just the endpoint information of the service.

Member Typedef Documentation

◆ ProxyType

Member Function Documentation

◆ getRouter()

virtual ::std::shared_ptr<RouterPrx> Ice::RouterFinder::getRouter ( const Current current)
pure virtual

Get the router proxy implemented by the process hosting this finder object.

The proxy might point to several replicas.

Parameters
currentThe Current object for the invocation.
Returns
The router proxy.

◆ ice_id()

virtual ::std::string Ice::RouterFinder::ice_id ( const Current current) const
overridevirtual

Obtains a Slice type ID representing the most-derived interface supported by this object.

Parameters
currentThe Current object for the invocation.
Returns
A fully-scoped type ID.

Reimplemented from Ice::Object.

◆ ice_ids()

virtual ::std::vector<::std::string> Ice::RouterFinder::ice_ids ( const Current current) const
overridevirtual

Obtains a list of the Slice type IDs representing the interfaces supported by this object.

Parameters
currentThe Current object for the invocation.
Returns
A list of fully-scoped type IDs.

Reimplemented from Ice::Object.

◆ ice_isA()

virtual bool Ice::RouterFinder::ice_isA ( ::std::string  id,
const Current current 
) const
overridevirtual

Determines whether this object supports an interface with the given Slice type ID.

Parameters
idThe fully-scoped Slice type ID.
currentThe Current object for the invocation.
Returns
True if this object supports the interface, false, otherwise.

◆ ice_staticId()

static const ::std::string& Ice::RouterFinder::ice_staticId ( )
static

Obtains the Slice type ID corresponding to this class.

Returns
A fully-scoped type ID.

The documentation for this class was generated from the following file: