Base Notification...
A Web service, or other entity, disseminates information to a set of other Web services, without having to have prior knowledge of these other Web services.
Situation
Something that happens to produce a Notification
Notification
An XML element describing a Situation. Has a namespace qualified Qname and a schema
Subscription
A Web service requester creates a subscription by sending a Subscription request to a NotificationProducer. The requester does not have to be NotificationConsumer.
NotificationProducer:
produces Notification messages.
- Accepts incoming Subscribe requests
- containing a reference to a NotificationConsumer
- identifying Notifications the NotificationProducer should produce (can be described by boolean filters, including filtering by Topic - see [WS-Topics])
- The NotificationProducer agrees to produce Notification Messages or returns a fault
- NotificationProducer, can originate Notifications , or act as a Broker for some other entity (see WS-BrokeredNotification)
- Subscribe (ConsumerReference, Filter, InititalTerminationTime, SubscriptionPolicy) - Returns: SubcriptionEndpoint
- GetCurrentMessage (Topic) Returns: any
NotificationConsumer
An endpoint (represented by a WS-Addressing endpoint reference) which can receive Notifications.
May implement the generic Notify message exchange, or may implement its own catcher for notifications.
- Notify ( NotificationMessage) - No response
SubscriptionManager
An endpoint (represented by a WS-Addressing endpoint reference) that allows a service requester to manipulate Subscriptions. Typically implemented by NotificationProducer
Implements the SubscriptionManager interface which consists of the following message exchanges:
- Renew
- Unsubscribe
- PauseSubscription
- ResumeSubscription
PullPoints
It might not be possible for a NotificationProducer to call out to consumers, so BaseNotification defines a PullPoint interface to allow consumers to fetch messages. The Subscriber (or some other entity) can create a PullPoint and then use it as the ConsumerReference in Subscribe a request. The actual consumer then pulls Notifications from the PullPoint
PullPoint interface
- GetMessages
- DestroyPullPoint
Create PullPoint interface
- CreatePullPoint
No comments:
Post a Comment