Public Member Functions | |
AdvancedComponentClient (Logger logger, String managerLoc, String clientName) throws Exception | |
AdvancedComponentClient (Logger logger, String managerLoc, String clientName, AcsCorba externalAcsCorba) throws Exception | |
ContainerServices | createContainerServices (String clientName, Logger csLogger) throws AcsJContainerServicesEx |
void | destroyContainerServices (ContainerServices cs) throws AcsJContainerServicesEx |
AcsCorba | getAcsCorba () |
AcsManagerProxy | getAcsManagerProxy () |
Special version of ComponentClient
, which gives more power to specialized applications such as the OMC Gui ("Exec"). Using some of these methods can be dangerous to the stability of the entire system.
If you find that your application needs to use AdvancedComponentClient
instead of ComponentClient
, better check with the ACS team if there really is no other way.
alma.acs.component.client.AdvancedComponentClient.AdvancedComponentClient | ( | Logger | logger, | |
String | managerLoc, | |||
String | clientName | |||
) | throws Exception |
alma.acs.component.client.AdvancedComponentClient.AdvancedComponentClient | ( | Logger | logger, | |
String | managerLoc, | |||
String | clientName, | |||
AcsCorba | externalAcsCorba | |||
) | throws Exception |
This ctor's implementation comes already from the base class for practical reasons, but there it is not public. Only here it becomes available to client applications.
ContainerServices alma.acs.component.client.AdvancedComponentClient.createContainerServices | ( | String | clientName, | |
Logger | csLogger | |||
) | throws AcsJContainerServicesEx |
Factory method for additional container service instances. This method should only be used by specialized clients such as the OMC GUI which needs independent ContainerServices instances for the plug-ins it runs.
Make sure to call destroyContainerServices(ContainerServices) when done with the new CS.
clientName | name for ContainerServices#getName() | |
csLogger | logger to be used internally by the new ContainerServices instance (which is different from the Logger returned in ContainerServices#getLogger()). Since ACS 8.0 it is recommended to supply an AcsLogger instead of a plain JDK Logger because a plain Logger will have to be wrapped inside this method. |
References alma.acs.component.client.ComponentClient.acsCorba, alma.acs.container.AcsManagerProxy.createInstance(), alma.acs.container.AcsManagerProxy.getManagerHandle(), alma.acs.container.corba.AcsCorba.getORB(), alma.acs.container.corba.AcsCorba.getRootPOA(), alma.acs.container.AcsManagerProxy.loginToManager(), and alma.acs.component.client.ComponentClient.m_acsManagerProxy.
void alma.acs.component.client.AdvancedComponentClient.destroyContainerServices | ( | ContainerServices | cs | ) | throws AcsJContainerServicesEx |
"un-factory" method which inverts createContainerServices(String, Logger).
cs | ContainerServices instance created by createContainerServices(String, Logger). |
References alma.acs.container.ContainerServicesImpl.cleanUp(), alma.acs.container.ContainerServicesImpl.getThreadFactory(), alma.acs.container.AcsManagerProxy.logoutFromManager(), alma.acs.container.ContainerServicesImpl.releaseAllComponents(), and alma.acs.container.AcsManagerProxy.shutdownNotify().
AcsCorba alma.acs.component.client.AdvancedComponentClient.getAcsCorba | ( | ) |
Gives direct access to the CORBA ORB, POAs etc, encapsulated by the AcsCorba object. Caution: interfering with the ComponentClient's usage of CORBA can have nasty side effects!
References alma.acs.component.client.ComponentClient.acsCorba.
AcsManagerProxy alma.acs.component.client.AdvancedComponentClient.getAcsManagerProxy | ( | ) |
Gives direct access to the ACS manager, encapsulated by the AcsManagerProxy object. Caution: interfering with ACS's usage of the manager can have nasty side effects in the entire system!
References alma.acs.component.client.ComponentClient.m_acsManagerProxy.