1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
|
//File: CosNotifyComm.idl
//Part of the Notification Service
#ifndef _COS_NOTIFY_COMM_IDL_
#define _COS_NOTIFY_COMM_IDL_
// omniORB specific pragmas to insert extra includes into the stub header.
#pragma hh #include "COS_sysdep.h"
#pragma prefix "omg.org"
#include <CosNotification.idl>
#include <CosEventComm.idl>
module CosNotifyComm {
exception InvalidEventType { CosNotification::EventType type; };
interface NotifyPublish {
void offer_change (
in CosNotification::EventTypeSeq added,
in CosNotification::EventTypeSeq removed )
raises ( InvalidEventType );
}; // NotifyPublish
interface NotifySubscribe {
void subscription_change(
in CosNotification::EventTypeSeq added,
in CosNotification::EventTypeSeq removed )
raises ( InvalidEventType );
}; // NotifySubscribe
interface PushConsumer :
NotifyPublish,
CosEventComm::PushConsumer {
}; // PushConsumer
interface PullConsumer :
NotifyPublish,
CosEventComm::PullConsumer {
}; // PullConsumer
interface PullSupplier :
NotifySubscribe,
CosEventComm::PullSupplier {
}; // PullSupplier
interface PushSupplier :
NotifySubscribe,
CosEventComm::PushSupplier {
};
interface StructuredPushConsumer : NotifyPublish {
void push_structured_event(
in CosNotification::StructuredEvent notification)
raises(CosEventComm::Disconnected);
void disconnect_structured_push_consumer();
}; // StructuredPushConsumer
interface StructuredPullConsumer : NotifyPublish {
void disconnect_structured_pull_consumer();
}; // StructuredPullConsumer
interface StructuredPullSupplier : NotifySubscribe {
CosNotification::StructuredEvent pull_structured_event()
raises(CosEventComm::Disconnected);
CosNotification::StructuredEvent try_pull_structured_event(
out boolean has_event)
raises(CosEventComm::Disconnected);
void disconnect_structured_pull_supplier();
}; // StructuredPullSupplier
interface StructuredPushSupplier : NotifySubscribe {
void disconnect_structured_push_supplier();
}; // StructuredPushSupplier
interface SequencePushConsumer : NotifyPublish {
void push_structured_events(
in CosNotification::EventBatch notifications)
raises(CosEventComm::Disconnected);
void disconnect_sequence_push_consumer();
}; // SequencePushConsumer
interface SequencePullConsumer : NotifyPublish {
void disconnect_sequence_pull_consumer();
}; // SequencePullConsumer
interface SequencePullSupplier : NotifySubscribe {
CosNotification::EventBatch pull_structured_events(
in long max_number )
raises(CosEventComm::Disconnected);
CosNotification::EventBatch try_pull_structured_events(
in long max_number,
out boolean has_event)
raises(CosEventComm::Disconnected);
void disconnect_sequence_pull_supplier();
}; // SequencePullSupplier
interface SequencePushSupplier : NotifySubscribe {
void disconnect_sequence_push_supplier();
}; // SequencePushSupplier
}; // CosNotifyComm
#endif /* _COS_NOTIFY_COMM_IDL_ */
|