alma::acs::container::AdvancedContainerServicesImpl Class Reference

Inheritance diagram for alma::acs::container::AdvancedContainerServicesImpl:
Inheritance graph
[legend]
Collaboration diagram for alma::acs::container::AdvancedContainerServicesImpl:
Collaboration graph
[legend]

List of all members.

Public Member Functions

String corbaObjectToString (org.omg.CORBA.Object objRef)
org.omg.CORBA.Object corbaObjectFromString (String strObjRef)
ORB getORB ()
org.omg.CORBA.Any getAny ()
void connectManagerAdmin (AdministratorOperations adminOp, boolean retryConnectOnFailure) throws AcsJContainerEx
void disconnectManagerAdmin (AdministratorOperations adminOp)

Protected Attributes

ContainerServicesImpl containerServicesImpl
Logger logger
Map< AdministratorOperations,
AcsManagerProxy
adminClientsToManagerProxy

Package Functions

 AdvancedContainerServicesImpl (ContainerServicesImpl containerServicesImpl, Logger logger)

Detailed Description

This class implements the more exotic methods from the container services interface, which have been refactored out of ContainerServices into a separate interface.

See also:
alma.acs.container.ContainerServicesImpl
Author:
hsommer

Constructor & Destructor Documentation

alma::acs::container::AdvancedContainerServicesImpl::AdvancedContainerServicesImpl ( ContainerServicesImpl  containerServicesImpl,
Logger  logger 
) [inline, package]

Member Function Documentation

void alma::acs::container::AdvancedContainerServicesImpl::connectManagerAdmin ( AdministratorOperations  adminOp,
boolean  retryConnectOnFailure 
) throws AcsJContainerEx [inline]

Allows to connect a manager admin object to the manager, to receive notifications etc.

This method accepts and distinguishes AdministratorOperations objects and the subtyped SynchronousAdministratorOperations objects.

TODO: (1) container could implement a single proxy/interceptor admin client so that we only have at most one such login on the manager, even if many components register their admin clients. (2) Discuss if the retryConnectOnFailure flag makes sense, or if such a specialized component that uses this method should implement its own retry strategy and should rather be notified quickly if there are problems.

Parameters:
adminOp admin object for manager callbacks.
retryConnectOnFailure retry if the manager is not available or the connection failed.
Exceptions:
AcsJContainerEx 
IllegalArgumentException if adminOp == null.

Implements alma::acs::container::AdvancedContainerServices.

References si::ijs::maci::AdministratorPOATie::_this(), si::ijs::maci::SynchronousAdministratorPOATie::_this(), adminClientsToManagerProxy, containerServicesImpl, alma::acs::container::AcsManagerProxy::createInstance(), getORB(), logger, alma::acs::container::AcsManagerProxy::loginToManager(), and alma::acs::container::ContainerServicesImpl::m_acsManagerProxy.

org.omg.CORBA.Object alma::acs::container::AdvancedContainerServicesImpl::corbaObjectFromString ( String  strObjRef  )  [inline]

Encapsulates org.omg.CORBA.ORB#string_to_object(String).

Parameters:
strObjRef 
Returns:
org.omg.CORBA.Object

Implements alma::acs::container::AdvancedContainerServices.

References getORB(), and logger.

String alma::acs::container::AdvancedContainerServicesImpl::corbaObjectToString ( org.omg.CORBA.Object  objRef  )  [inline]

Encapsulates org.omg.CORBA.ORB#object_to_string(org.omg.CORBA.Object).

Parameters:
objRef the corba stub
Returns:
standardized string representation of objRef.

Implements alma::acs::container::AdvancedContainerServices.

References getORB(), and logger.

void alma::acs::container::AdvancedContainerServicesImpl::disconnectManagerAdmin ( AdministratorOperations  adminOp  )  [inline]

Releases a previously connected manager admin object. This call is ignored if the given object is not connected.

Parameters:
componentUrl 

Implements alma::acs::container::AdvancedContainerServices.

References adminClientsToManagerProxy, and alma::acs::container::AcsManagerProxy::logoutFromManager().

org.omg.CORBA.Any alma::acs::container::AdvancedContainerServicesImpl::getAny (  )  [inline]

Returns a reference to a new CORBA Any. In Java the only way to do this is through the ORB itself (i.e., the create_any method).

Returns:
org.omg.CORBA.Any
Exceptions:
NullPointerException if the Any object could not be created.

Implements alma::acs::container::AdvancedContainerServices.

References getORB(), and logger.

ORB alma::acs::container::AdvancedContainerServicesImpl::getORB (  )  [inline]

Member Data Documentation

Initial value:
                new HashMap<AdministratorOperations, AcsManagerProxy>()

Referenced by connectManagerAdmin(), and disconnectManagerAdmin().

Referenced by connectManagerAdmin(), and getORB().


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

Generated by  doxygen 1.6.2