# CosNotifyChannelAdmin_SupplierAdmin

### MODULE

CosNotifyChannelAdmin_SupplierAdmin

### MODULE SUMMARY

This module implements the OMG CosNotifyChannelAdmin::SupplierAdmin interface.

### DESCRIPTION

To get access to the record definitions for the structures use:
`-include_lib("cosNotification/include/*.hrl").`

This module also exports the functions described in:

- CosNotification_QoSAdmin
- CosNotifyComm_NotifyPublish
- CosNotifyFilter_FilterAdmin

### EXPORTS

`_get_MyID(SupplierAdmin) -> AdminID`

Types:

`SupplierAdmin = #objref`
`AdminID = long()`

When a `SupplierAdmin` object is created it is given a unique Id by the creating channel. This readonly attribute maintains this Id.

`_get_MyChannel(SupplierAdmin) -> Channel`

Types:

`SupplierAdmin = #objref`
`Channel = #objref`

The creating channel's reference is maintained by this readonly attribute.

`_get_MyOperator(SupplierAdmin) -> OpType`

Types:

`SupplierAdmin = #objref`
`OpType = 'AND_OP' | 'OR_OP'`

The Operation Type, which determines the semantics the target object will use for any associated `Filters`, is maintained by this readonly attribute.

`_get_pull_consumers(SupplierAdmin) -> ProxyIDSeq`

Types:

`SupplierAdmin = #objref`
`ProxyIDSeq = [ProxyID]`
`ProxyID = long()`

A sequence of all associated `PullProxy` Id's is maintained by this readonly attribute.

`_get_push_consumers(SupplierAdmin) -> ProxyIDSeq`

Types:

`SupplierAdmin = #objref`
`ProxyIDSeq = [ProxyID]`
`ProxyID = long()`

This operation returns all `PushProxy` Id's created by the target object.

`get_proxy_consumer(SupplierAdmin, ProxyID) -> Reply`

Types:

`SupplierAdmin = #objref`
`ProxyID = long()`
`Reply = Proxy | {'EXCEPTION', #'CosNotifyChannelAdmin_ProxyNotFound'{}}`
`Proxy = #objref`

The Proxy which corresponds to the given Id is returned by this operation.

`obtain_notification_pull_consumer(SupplierAdmin, SupplierType) -> Reply`

Types:

`SupplierAdmin = #objref`
`SupplierType = 'ANY_EVENT' | 'STRUCTURED_EVENT' | 'SEQUENCE_EVENT'`
`Reply = {Proxy, ProxyID}`
`Proxy = #objref`
`ProxyID = long()`

This operation creates a new proxy and returns its object reference along with its ID. The `SupplierType` parameter determines the event type accepted by the proxy.

`obtain_pull_consumer(SupplierAdmin) -> Proxy`

Types:

`SupplierAdmin = #objref`
`Proxy = #objref`

A proxy which accepts `#any{}` events is created by this operation.

`obtain_notification_push_consumer(SupplierAdmin, SupplierType) -> Reply`

Types:

`SupplierAdmin = #objref`
`SupplierType = 'ANY_EVENT' | 'STRUCTURED_EVENT' | 'SEQUENCE_EVENT'`
`Reply = {Proxy, ProxyID}`
`Proxy = #objref`
`ProxyID = long()`

Determined by the `SupplierType` parameter a compliant proxy is created and its object reference along with its Id is returned by this operation.

`obtain_push_consumer(SupplierAdmin) -> Proxy`

Types:

`SupplierAdmin = #objref`
`Proxy = #objref`

A proxy which accepts `#any{}` events is created by this operation.

`destroy(SupplierAdmin) -> ok`

Types:

`SupplierAdmin = #objref`

This operation terminates the SupplierAdmin object and notifies the creating channel that the target object no longer is active.

### AUTHORS

support - support@erlang.ericsson.se

cosNotification 1.1.3
Copyright © 1991-2006 Ericsson AB