Title: WS-Messaging System Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at . http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Airavata WS-Messenger is a Web Services-based Messaging System for Service-Oriented Computing and is an implementation of [WS-Notification][wsn] and [WS-Eventing][wse] specifications. The message format can be automatically converted between the two specifications. The subscription request type (Ws-Notification or WS-Eventing) for a listener determines the message format that the notification consumer will receive. If WS-Notification subscription request is received by the broker, it will send WS-Notification messages to the listener. Similarly, if WS-Eventing subscription is received by the broker, the broker will produce WS-Eventing messages for that listener. The publisher can publish messages in either format. The consumers will recieve messages in the format they subscribed irrespective of the format the message is published. The following figure illustrates the high level overview of the WS-Messenger ![WS Messenger Overview](/documentation/messenger/messenger-overview.png "WS Messenger Overview") ## WS-Messenger Modules The WS-Messenger has three major modules. 1. Message Broker: The broker is a traditional notification broker responsible for recieving subscriptions and events published. 2. Messenger: The messenger responsibility is to delivar messages to all the subscribers and message boxes. 3. Message Box: provide a web service interface for subscribers behind the firewalls. This service stores notification messages until the subscribers pull messages where the firefall blocks a push. This module also assists in reliable delivary otherwise lost due to network and client glitchs. [wsn]: http://www.oasis-open.org/committees/wsn/ [wse]: http://www.w3.org/Submission/WS-Eventing/