00001
#ifndef _ACSNC_IDL_
00002
#define _ACSNC_IDL_
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
#include <CosNotification.idl>
00030
#include <CosNotifyComm.idl>
00031
#include <acscommon.idl>
00032
#include <baci.idl>
00033
00034
#pragma prefix "alma"
00035
00039 module acsnc
00040 {
00047 struct EventDescription
00048 {
00053 string name;
00054
00060 ACS::Time timestamp;
00061
00069 unsigned long long count;
00070 };
00071
00072
00077 typedef sequence<string>
NCSeq;
00078
00079
00081
00083
00087 const string
FILTER_LANGUAGE_NAME =
"ETCL";
00088
00089
00095 const string
SEQUENCE_EVENT_TYPE_PREFIX =
"_SequenceOf_";
00096
00097
00101 typedef short domainNameValue;
00102
00106 const domainNameValue ALARMSYSTEM_DOMAIN_VAL = 0;
00107
00111 const string
ALARMSYSTEM_DOMAIN_NAME =
"ALARMSYSTEM";
00112
00114
00120 interface
ACSEventAdmin :
ACS::ACSComponent
00121 {
00136
boolean authenticate(in string token);
00137
00138
00152
void createChannel(in string channelName,
00153 in CosNotification::QoSProperties initialQOS,
00154 in CosNotification::AdminProperties initialAdmin);
00155
00171
void configChannelProperties(in string channelName,
00172 in CosNotification::QoSProperties newQOS,
00173 in CosNotification::AdminProperties newAdmin);
00174
00184
void destroyChannel(in string channelName);
00185
00202
void getChannelInfo(in string channelName,
00203 out
unsigned short numSuppliers,
00204 out
unsigned short numConsumers,
00205 out
unsigned long long totalEvents,
00206 out CosNotification::QoSProperties initialQOS,
00207 out CosNotification::AdminProperties initialAdmin,
00208 out
NCSeq eventTypes);
00209
00219
NCSeq getActiveChannels();
00220
00236
void monitorEvents(in
ACS::CBstring cb,
00237 in
ACS::CBDescIn desc);
00238 };
00239
00245 interface
OSPushSupplier : CosNotifyComm::StructuredPushSupplier,
ACS::OffShoot {};
00246
00252 interface
OSPushConsumer : CosNotifyComm::StructuredPushConsumer,
ACS::OffShoot {};
00253 };
00254
#endif