diff options
author | bala <balanatarajan@users.noreply.github.com> | 2003-10-28 01:23:45 +0000 |
---|---|---|
committer | bala <balanatarajan@users.noreply.github.com> | 2003-10-28 01:23:45 +0000 |
commit | d056e28387e86cf0997c3124a6768f82b75bcf4a (patch) | |
tree | 5b0bad734ebce981cae873b22bd34be136db023d /TAO/orbsvcs/orbsvcs/FaultTolerance/FT_Invocation_Endpoint_Selectors.h | |
parent | c914129859068961ea72c1d63eb9046dd49187b5 (diff) | |
download | ATCD-d056e28387e86cf0997c3124a6768f82b75bcf4a.tar.gz |
ChangeLogTag:Mon Oct 27 19:14:25 2003 Balachandran Natarajan <bala@dre.vanderbilt.edu>refactor-stage_7
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/FaultTolerance/FT_Invocation_Endpoint_Selectors.h')
-rw-r--r-- | TAO/orbsvcs/orbsvcs/FaultTolerance/FT_Invocation_Endpoint_Selectors.h | 43 |
1 files changed, 21 insertions, 22 deletions
diff --git a/TAO/orbsvcs/orbsvcs/FaultTolerance/FT_Invocation_Endpoint_Selectors.h b/TAO/orbsvcs/orbsvcs/FaultTolerance/FT_Invocation_Endpoint_Selectors.h index 660b40c44a9..9d6032ae498 100644 --- a/TAO/orbsvcs/orbsvcs/FaultTolerance/FT_Invocation_Endpoint_Selectors.h +++ b/TAO/orbsvcs/orbsvcs/FaultTolerance/FT_Invocation_Endpoint_Selectors.h @@ -57,36 +57,35 @@ public: /// Implementation for FT. Please refer to /// $TAO_ROOT/tao/Invocation_Endpoint_Selectors.h for details of /// documentation. - virtual void select_endpoint (TAO_GIOP_Invocation *invocation + virtual void select_endpoint (TAO::Profile_Transport_Resolver *r, + ACE_Time_Value *val ACE_ENV_ARG_DECL); - virtual void next (TAO_GIOP_Invocation *invocation - ACE_ENV_ARG_DECL_WITH_DEFAULTS); - virtual void forward (TAO_GIOP_Invocation *invocation, - const TAO_MProfile &mprofile - ACE_ENV_ARG_DECL_WITH_DEFAULTS); - virtual void success (TAO_GIOP_Invocation *invocation); - virtual void close_connection (TAO_GIOP_Invocation *invocation); - protected: - - int select_endpoint_i (TAO_GIOP_Invocation *invoc + /// Select the primary and try connecting to it. + bool select_primary (TAO::Profile_Transport_Resolver *r, + ACE_Time_Value *val + ACE_ENV_ARG_DECL); + + /// Select the secondary and try connecting to it. Returns true if + /// successfull. + bool select_secondary (TAO::Profile_Transport_Resolver *r, + ACE_Time_Value *val ACE_ENV_ARG_DECL); - int select_primary (TAO_GIOP_Invocation *invocation - ACE_ENV_ARG_DECL); - - int check_profile_for_primary (TAO_GIOP_Invocation *, - TAO_Profile * - ACE_ENV_ARG_DECL); + /// Helper method that tries to establish connections with all the + /// endpoints in the profile. + bool try_connect (TAO::Profile_Transport_Resolver *r, + TAO_Profile *profile, + ACE_Time_Value *max_wait_time + ACE_ENV_ARG_DECL); -private: + /// Helper method that checks whether the profile is a primary or + /// not. + bool check_profile_for_primary (TAO_Profile * + ACE_ENV_ARG_DECL); - /// Is the primary alive? The default is yes. - CORBA::Boolean is_primary_alive_; - /// Has the profile list been rewound - CORBA::Boolean is_rewound_; }; #if defined (__ACE_INLINE__) |