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
|
<?xml version="1.0" encoding="latin1" ?>
<!DOCTYPE erlref SYSTEM "erlref.dtd">
<erlref>
<header>
<copyright>
<year>1997</year>
<year>2011</year>
<holder>Ericsson AB, All Rights Reserved</holder>
</copyright>
<legalnotice>
The contents of this file are subject to the Erlang Public License,
Version 1.1, (the "License"); you may not use this file except in
compliance with the License. You should have received a copy of the
Erlang Public License along with this software. If not, it can be
retrieved online at http://www.erlang.org/.
Software distributed under the License is distributed on an "AS IS"
basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
the License for the specific language governing rights and limitations
under the License.
The Initial Developer of the Original Code is Ericsson AB.
</legalnotice>
<title>CosEventChannelAdmin_­ProxyPushConsumer</title>
<shorttitle>..._ProxyPushConsumer</shorttitle>
<prepared></prepared>
<responsible></responsible>
<docno></docno>
<approved></approved>
<checked></checked>
<date>1997-11-13</date>
<rev>PA1</rev>
<file>CosEventChannelAdmin_ProxyPushConsumer.xml</file>
</header>
<module>CosEventChannelAdmin_ProxyPushConsumer</module>
<modulesummary>This module implements a ProxyPushConsumer interface which acts as a middleman between push supplier and the event channel.</modulesummary>
<description>
<p>The ProxyPushConsumer interface defines the second step for connecting push
suppliers to the event channel. A proxy consumer is similar to a normal consumer,
but includes an additional method for connecting a supplier to the proxy
consumer.</p>
<p>To get access to all definitions, e.g., exceptions,
include necessary <c><![CDATA[hrl]]></c> files by using:<br></br><c><![CDATA[-include_lib("cosEvent/include/*.hrl").]]></c></p>
<p>Any object that possesses an object reference that supports the ProxyPushConsumer
interface can perform the following operations:</p>
</description>
<funcs>
<func>
<name>connect_push_supplier(Object, PushSupplier) -> Return</name>
<fsummary>Connect the push supplier to the proxy push consumer</fsummary>
<type>
<v>Object = #objref</v>
<v>PushSupplier = #objref of PushSupplier type</v>
<v>Return = ok | {'EXCEPTION', #'CosEventChannelAdmin_AlreadyConnected'{}}</v>
</type>
<desc>
<p>This operation connects PushSupplier object to the ProxyPushConsumer object.
A nil object reference can be passed to this operation. If so a channel
cannot invoke the disconnect_push_supplier operation on the supplier;
the supplier may be disconnected from the channel without being
informed. If the ProxyPushConsumer is already connected to a
PushSupplier, then the <c><![CDATA[CosEventChannelAdmin_AlreadyConnected]]></c>
exception is raised.</p>
</desc>
</func>
<func>
<name>disconnect_push_consumer(Object) -> Return</name>
<fsummary>Disconnect the ProxyPushConsumer object from the event channel.</fsummary>
<type>
<v>Object = #objref</v>
<v>Return = ok</v>
</type>
<desc>
<p>This operation disconnects proxy push consumer from the event channel.
Sends a notification about the loss of the connection to the push supplier
attached to it, unless nil object reference was passed at the connection
time.</p>
</desc>
</func>
<func>
<name>push(Object, Data) -> Return</name>
<fsummary>Communicate event data to the consumers.</fsummary>
<type>
<v>Object = #objref</v>
<v>Data = any</v>
<v>Return = ok | {'EXCEPTION', #'CosEventComm_Disconnected'{}}</v>
</type>
<desc>
<p>This operation sends event data to all connected consumers via the
event channel. If the event communication has already been disconnected,
the <c><![CDATA[CosEventComm_Disconnected]]></c> is raised.</p>
</desc>
</func>
</funcs>
</erlref>
|