00001 //File: CosNotifyCommAck.idl 00002 //Part of the extended Notification Service 00003 #ifndef _COS_NOTIFY_COMM_ACK_IDL_ 00004 #define _COS_NOTIFY_COMM_ACK_IDL_ 00005 #include <CosNotifyComm.idl> 00006 #pragma prefix "omg.org" 00007 00008 module CosNotifyCommAck { 00009 const string SequenceNumber = "SequenceNumber"; 00010 // SequenceNumber takes a value of type long. 00011 // Structured events must include a SequenceNumber field to be acknowledged 00012 00013 typedef sequence<long> SequenceNumbers; 00014 00015 const string DeliveryReliability = "DeliveryReliability"; 00016 const short None = 0; 00017 const short Acknowledgment = 1; 00018 // DeliveryReliability takes value of None or Acknowledgement as Notification Qos 00019 00020 const string RetryInterval = "RetryInterval"; 00021 // RetryInterval takes on a value of TimeBase::TimeT as Notification Qos 00022 00023 const string Retries = "Retries"; 00024 // Retries takes on a value of type long as Notification Qos Parameter 00025 00026 interface StructuredPushSupplierAck : CosNotifyComm::StructuredPushSupplier { 00027 void acknowledge(in SequenceNumbers sequence_numbers); 00028 }; 00029 00030 interface StructuredPullSupplierAck : CosNotifyComm::StructuredPullSupplier { 00031 void acknowledge(in SequenceNumbers sequence_numbers); 00032 }; 00033 00034 interface SequencePushSupplierAck : CosNotifyComm::SequencePushSupplier { 00035 void acknowledge(in SequenceNumbers sequence_numbers); 00036 }; 00037 00038 interface SequencePullSupplierAck : CosNotifyComm::SequencePullSupplier { 00039 void acknowledge(in SequenceNumbers sequence_numbers); 00040 }; 00041 }; 00042 #endif