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

TAO_Time_Service_Clerk Class Reference

TimeService Object Implementation. More...

#include <TAO_Time_Service_Clerk.h>

Collaboration diagram for TAO_Time_Service_Clerk:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ACE_Array_Base< CosTime::TimeService_var > IORS
 Unbounded set of IORs.


Public Methods

 TAO_Time_Service_Clerk (int timer_value, int timer_value_usecs, const IORS &server)
 Constructor.

 ~TAO_Time_Service_Clerk (void)
 Destructor.

virtual CosTime::UTO_ptr universal_time (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException, CosTime::TimeUnavailable)
virtual CosTime::UTO_ptr secure_universal_time (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException, CosTime::TimeUnavailable)
virtual CosTime::UTO_ptr new_universal_time (TimeBase::TimeT time, TimeBase::InaccuracyT inaccuracy, TimeBase::TdfT tdf ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
 This creates a new UTO based on the given parameters.

virtual CosTime::UTO_ptr uto_from_utc (const TimeBase::UtcT &utc ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
 This creates a new UTO given a time in the UtcT form.

virtual CosTime::TIO_ptr new_interval (TimeBase::TimeT lower, TimeBase::TimeT upper ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
 This creates a new TIO with the given parameters.

virtual CORBA::ULongLong get_time (void)
 Return the globally synchronized time.

void name_server (TAO_Naming_Server &server)
CORBA::Short time_displacement_factor (void)
 Returns the time displacement factor.

void time_displacement_factor (CORBA::Short)
 Set the TDF.

TimeBase::InaccuracyT inaccuracy (void)
 Get method for inaccuracy.

void inaccuracy (TimeBase::InaccuracyT inaccuracy)
 Set method for inaccuracy.


Public Attributes

CORBA::ULongLong time_
 Clerk's notion of time.


Private Attributes

CORBA::Short time_displacement_factor_
 Time displacement factor in minutes.

TimeBase::InaccuracyT inaccuracy_
 Inaccuracy in the time.

IORS server_
 Set of server Time Server IORs.

CORBA::ULongLong update_timestamp_
 Time when last global synchronization was done.

Timer_Helper helper_

Friends

class Timer_Helper
 Helper class to help in the updation of time.


Detailed Description

TimeService Object Implementation.

The Object implementation implements methods to retrieve GLOBAL time as well as secure GLOBAL time. The times are retrieved as UTOs. The object also allows creation of a TIO for a given time interval. In general, the TimeService clerk manages the UTOs and the TIOs. The notion of time returned here is the globally synchronized time.


Member Typedef Documentation

typedef ACE_Array_Base<CosTime::TimeService_var> TAO_Time_Service_Clerk::IORS
 

Unbounded set of IORs.


Constructor & Destructor Documentation

TAO_Time_Service_Clerk::TAO_Time_Service_Clerk int    timer_value,
int    timer_value_usecs,
const IORS   server
 

Constructor.

TAO_Time_Service_Clerk::~TAO_Time_Service_Clerk void   
 

Destructor.


Member Function Documentation

CORBA::ULongLong TAO_Time_Service_Clerk::get_time void    [virtual]
 

Return the globally synchronized time.

void TAO_Time_Service_Clerk::inaccuracy TimeBase::InaccuracyT    inaccuracy
 

Set method for inaccuracy.

TimeBase::InaccuracyT TAO_Time_Service_Clerk::inaccuracy void   
 

Get method for inaccuracy.

void TAO_Time_Service_Clerk::name_server TAO_Naming_Server &    server
 

This method is called by the driver program to set the Naming Server instance.

CosTime::TIO_ptr TAO_Time_Service_Clerk::new_interval TimeBase::TimeT    lower,
TimeBase::TimeT upper    ACE_ENV_ARG_DECL
throw (CORBA::SystemException) [virtual]
 

This creates a new TIO with the given parameters.

CosTime::UTO_ptr TAO_Time_Service_Clerk::new_universal_time TimeBase::TimeT    time,
TimeBase::InaccuracyT    inaccuracy,
TimeBase::TdfT tdf    ACE_ENV_ARG_DECL
throw (CORBA::SystemException) [virtual]
 

This creates a new UTO based on the given parameters.

CosTime::UTO_ptr TAO_Time_Service_Clerk::secure_universal_time ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException, CosTime::TimeUnavailable) [virtual]
 

This operation returns the global time in a UTO only if the time can be guaranteed to have been obtained securely. Currently this operation is not implemented and throws a CORBA::NO_IMPLEMENT exception, if called.

void TAO_Time_Service_Clerk::time_displacement_factor CORBA::Short   
 

Set the TDF.

CORBA::Short TAO_Time_Service_Clerk::time_displacement_factor void   
 

Returns the time displacement factor.

CosTime::UTO_ptr TAO_Time_Service_Clerk::universal_time ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException, CosTime::TimeUnavailable) [virtual]
 

This operation returns the global time and an estimate of inaccuracy in a UTO.

CosTime::UTO_ptr TAO_Time_Service_Clerk::uto_from_utc const TimeBase::UtcT &utc    ACE_ENV_ARG_DECL throw (CORBA::SystemException) [virtual]
 

This creates a new UTO given a time in the UtcT form.


Friends And Related Function Documentation

friend class Timer_Helper [friend]
 

Helper class to help in the updation of time.


Member Data Documentation

Timer_Helper TAO_Time_Service_Clerk::helper_ [private]
 

This is a friend class that inherits from the Event Handler class. The handle_timeout method of this class is scheduled for periodic invocation by the reactor. This method, in turn, updates the clerks notion of time. Using this class obviates the need for the clerk to multiple inherit from the servant base as well as the event handler.

TimeBase::InaccuracyT TAO_Time_Service_Clerk::inaccuracy_ [private]
 

Inaccuracy in the time.

IORS TAO_Time_Service_Clerk::server_ [private]
 

Set of server Time Server IORs.

CORBA::ULongLong TAO_Time_Service_Clerk::time_
 

Clerk's notion of time.

CORBA::Short TAO_Time_Service_Clerk::time_displacement_factor_ [private]
 

Time displacement factor in minutes.

CORBA::ULongLong TAO_Time_Service_Clerk::update_timestamp_ [private]
 

Time when last global synchronization was done.


The documentation for this class was generated from the following files:
Generated on Fri Apr 2 19:19:21 2004 for TAO_CosTime by doxygen1.2.18