Public Member Functions | |
CorbaNotificationChannel (String inChannelName, ContainerServicesBase cs) throws AcsJException | |
CorbaNotificationChannel (SimpleSupplier inCorbaPublisher, ContainerServicesBase cs) throws AcsJException | |
String | getChannelName () |
void | attach (String eventTypeName, Object receiver) |
void | detach (String eventTypeName, Object receiver) |
void | begin () |
void | end () |
void | publish (IDLEntity event) throws AcsJException |
void | deactivate () throws AcsJException |
Static Public Member Functions | |
static Receiver | getCorbaReceiver (String channelName, ContainerServicesBase cs) |
Static Public Attributes | |
static final String | ALMA_DOMAIN = "ALMA" |
Protected Attributes | |
final String | channelName |
Static Package Functions | |
static String | checkReceiver (String eventTypeName, Object receiver) |
The CorbaNotificationChannel class implements the notification channel concepts using a CORBA-based approach that employs the CORBA notification services.
No longer inherits from AbstractNotificationChannel since ACS 9.0, see COMP-1786
alma.acs.nc.CorbaNotificationChannel.CorbaNotificationChannel | ( | String | inChannelName, | |
ContainerServicesBase | cs | |||
) | throws AcsJException |
Create a CORBA Notification Channel.
inChannelName | The name of this channel. | |
cs | container services |
AcsJException |
References alma.acs.nc.CorbaNotificationChannel.channelName.
alma.acs.nc.CorbaNotificationChannel.CorbaNotificationChannel | ( | SimpleSupplier | inCorbaPublisher, | |
ContainerServicesBase | cs | |||
) | throws AcsJException |
Create a CORBA Notification Channel and specify the CorbaPublisher being used.
inCorbaPublisher | The CORBA publisher object. | |
cs | Container services reference |
References alma.acs.nc.CorbaNotificationChannel.channelName.
void alma.acs.nc.CorbaNotificationChannel.attach | ( | String | eventTypeName, | |
Object | receiver | |||
) |
Attach a Receiver, that receives one type of event, to this notification channel. The receiver is required to have a public method called "receive(EventType)", that receives and processes the event. The EventType parameter in the method signature is the name of an IDL structure that defines the event.
eventTypeName | The name of the event type that this receiver wishes to receive. | |
receiver | An object that receives and processes this event. It must have a public method of the form "receive(EventType)", where the EventType parameter in the method signature is the name of an IDL structure that defines the event. |
References alma.acs.nc.CorbaReceiver.attach().
void alma.acs.nc.CorbaNotificationChannel.begin | ( | ) |
Connect this corbaReceiver to the notification channel. At this point the objects that have been attached begin receiving events. This method must be called or no events will be recieved.
References alma.acs.nc.CorbaReceiver.begin().
static String alma.acs.nc.CorbaNotificationChannel.checkReceiver | ( | String | eventTypeName, | |
Object | receiver | |||
) | [static, package] |
Return an error message if the receiver object does not contain a method of the type "receive(EventType)"; otherwise return null.
This method has been moved from here from the obsolete base class AbstractNotificationChannel.
eventTypeName | The name of the event type that this receiver wishes to receive. | |
receiver | An object that receives and processes this event. It must have a public method of the form "receive(EventType)", where the EventType parameter in the method signature is the name of an IDL structure that defines the event. |
void alma.acs.nc.CorbaNotificationChannel.deactivate | ( | ) | throws AcsJException |
Deactivate this notification channel. The publisher gets disconnected and then the channel is destroyed.
AcsJException |
References alma.acs.nc.SimpleSupplier.destroyNotificationChannel(), alma.acs.nc.CorbaReceiver.disconnect(), and alma.acs.nc.SimpleSupplier.disconnect().
void alma.acs.nc.CorbaNotificationChannel.detach | ( | String | eventTypeName, | |
Object | receiver | |||
) |
Detach an eventType/Receiver from this notification channel. Only the specified event type is detached for the specified receiver.
eventTypeName | The name of the event type that this receiver receives. | |
receiver | The object that receives and processes this event. |
References alma.acs.nc.CorbaReceiver.detach().
void alma.acs.nc.CorbaNotificationChannel.end | ( | ) |
Disconnect this reciever from the notification channel. All objects that have been recieving events are removed and no further events are received.
References alma.acs.nc.CorbaReceiver.end().
String alma.acs.nc.CorbaNotificationChannel.getChannelName | ( | ) |
static Receiver alma.acs.nc.CorbaNotificationChannel.getCorbaReceiver | ( | String | channelName, | |
ContainerServicesBase | cs | |||
) | [static] |
void alma.acs.nc.CorbaNotificationChannel.publish | ( | IDLEntity | event | ) | throws AcsJException |
Publish an event on this notification channel.
event | The event must be an IDL structure. |
AcsJException |
References alma.acs.nc.SimpleSupplier.publishEvent().
final String alma.acs.nc.CorbaNotificationChannel.ALMA_DOMAIN = "ALMA" [static] |
The ALMA domain name, which is not explicitly used and is hidden from the application. TODO: remove, it does not even seem to be implicitly used.
final String alma.acs.nc.CorbaNotificationChannel.channelName [protected] |
The name of this channel.
Referenced by alma.acs.nc.CorbaNotificationChannel.CorbaNotificationChannel(), and alma.acs.nc.CorbaNotificationChannel.getChannelName().