Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

# TAO_Invocation_Endpoint_Selector Class Reference

Defines the interface for policy-based endpoint selection strategies. More...

`#include <Invocation_Endpoint_Selectors.h>`

Inheritance diagram for TAO_Invocation_Endpoint_Selector:

[legend]
List of all members.

## Public Methods
| TAO_Invocation_Endpoint_Selector (void)
| Constructor. More...
virtual | ~TAO_Invocation_Endpoint_Selector (void)
| Destructor. More...
virtual void | select_endpoint (TAO_GIOP_Invocation *invocation ACE_ENV_ARG_DECL_WITH_DEFAULTS)=0
| Select the endpoint and set <invocation>'s <profile_> and <endpoint_> data members accordingly. More...
virtual void | next (TAO_GIOP_Invocation *invocation ACE_ENV_ARG_DECL_WITH_DEFAULTS)=0
| This method must be called when previously selected endpoint didn't work out, and we want to try another one, i.e., reselect. More...
virtual void | forward (TAO_GIOP_Invocation *invocation, const TAO_MProfile &mprofile ACE_ENV_ARG_DECL_WITH_DEFAULTS)=0
| This method must be called if the invocation attempt on a selected endpoint resulted in location forward. More...
virtual void | success (TAO_GIOP_Invocation *invocation)=0
| Update the state to indicate that the selected endpoint/profile were used successfully. More...
virtual void | close_connection (TAO_GIOP_Invocation *invocation)=0
| Update the state to reflect that the connection being used for the invocation has been closed by the server. More...

## Detailed Description

Defines the interface for policy-based endpoint selection strategies.

Selects/reselects server endpoint for an Invocation. Different concrete strategies perform selection based on different policies. All endpoint selection strategies are stateless objects - any necessary state is stored in Invocation's <endpoint_selection_state_>.

## Constructor & Destructor Documentation

TAO_Invocation_Endpoint_Selector::TAO_Invocation_Endpoint_Selector | ( | void |  | ) |

| Constructor.

TAO_Invocation_Endpoint_Selector::~TAO_Invocation_Endpoint_Selector | ( | void |  | ) | `[virtual]`

| Destructor.

## Member Function Documentation

virtual void TAO_Invocation_Endpoint_Selector::close_connection | ( | TAO_GIOP_Invocation * | invocation | ) | `[pure virtual]`

| Update the state to reflect that the connection being used for the invocation has been closed by the server. Reimplemented in TAO_Default_Endpoint_Selector.

virtual void TAO_Invocation_Endpoint_Selector::forward | ( | TAO_GIOP_Invocation * | invocation,
|  | const TAO_MProfile &mprofile | ACE_ENV_ARG_DECL
| ) | `[pure virtual]`

| This method must be called if the invocation attempt on a selected endpoint resulted in location forward. This method performs the necessary state updates, so that next <select_endpoint> call picks a new endpoint. Reimplemented in TAO_Default_Endpoint_Selector.

virtual void TAO_Invocation_Endpoint_Selector::next | ( | TAO_GIOP_Invocation *invocation | ACE_ENV_ARG_DECL_WITH_DEFAULTS | ) | `[pure virtual]`

| This method must be called when previously selected endpoint didn't work out, and we want to try another one, i.e., reselect. This method performs the necessary state updates, so that next <select_endpoint> call picks a new endpoint. Reimplemented in TAO_Default_Endpoint_Selector.

virtual void TAO_Invocation_Endpoint_Selector::select_endpoint | ( | TAO_GIOP_Invocation *invocation | ACE_ENV_ARG_DECL | ) | `[pure virtual]`

| Select the endpoint and set <invocation>'s <profile_> and <endpoint_> data members accordingly. Reimplemented in TAO_Default_Endpoint_Selector.

virtual void TAO_Invocation_Endpoint_Selector::success | ( | TAO_GIOP_Invocation * | invocation | ) | `[pure virtual]`

| Update the state to indicate that the selected endpoint/profile were used successfully. Reimplemented in TAO_Default_Endpoint_Selector.

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

- Invocation_Endpoint_Selectors.h
- Invocation_Endpoint_Selectors.cpp