Packagemx.messaging
Classpublic class MultiTopicProducer
InheritanceMultiTopicProducer Inheritance AbstractProducer Inheritance MessageAgent Inheritance flash.events.EventDispatcher

Language Version : ActionScript 3.0
Product Versions : BlazeDS 4, LCDS 3
Runtime Versions : Flash Player 9, AIR 1.1

A MultiTopicProducer sends messages to a destination with zero or more subtopics. It is like the regular Producer but it can direct the message to any consumer who is subscribing to any one of a number of subtopics. If the consumer is a MultiTopicConsumer and that consumer has subscribed to more than on subtopic in the list of subtopics used by the producer, the consumer only receives the message once.

The MultiTopicProducer will dispatch a MessageAckEvent or MessageFaultEvent for each message they send depending upon whether the outbound message was sent and processed successfully or not.



Public Properties
 PropertyDefined By
 Inheritedauthenticated : Boolean
[read-only] Indicates if this MessageAgent is using an authenticated connection to its destination.
MessageAgent
 InheritedautoConnect : Boolean
If true the Producer automatically connects to its destination the first time the send() method is called.
AbstractProducer
 InheritedchannelSet : ChannelSet
Provides access to the ChannelSet used by the MessageAgent.
MessageAgent
 InheritedclientId : String
[read-only] Provides access to the client id for the MessageAgent.
MessageAgent
 Inheritedconnected : Boolean
[read-only] Indicates whether this MessageAgent is currently connected to its destination via its ChannelSet.
MessageAgent
 InheriteddefaultHeaders : Object
The default headers to apply to messages sent by the Producer.
AbstractProducer
 Inheriteddestination : String
Provides access to the destination for the MessageAgent.
MessageAgent
 Inheritedpriority : int
The default message priority for the messages sent by the Producer.
AbstractProducer
 InheritedreconnectAttempts : int
The number of reconnect attempts that the Producer makes in the event that the destination is unavailable or the connection to the destination closes.
AbstractProducer
 InheritedreconnectInterval : int
The number of milliseconds between reconnect attempts.
AbstractProducer
 InheritedrequestTimeout : int
Provides access to the request timeout in seconds for sent messages.
MessageAgent
  subtopics : ArrayCollection
Provides access to the list of subtopics used in publishing any messages
MultiTopicProducer
Public Methods
 MethodDefined By
  
Constructor.
MultiTopicProducer
 Inherited
Invoked by a MessageResponder upon receiving a result for a sent message.
MessageAgent
  
addSubtopic(subtopic:String):void
Adds a subtopic to the current list of subtopics for messages sent by this producer.
MultiTopicProducer
 Inherited
Handles a CONNECT ChannelEvent.
MessageAgent
 Inherited
Handles a DISCONNECT ChannelEvent.
MessageAgent
 Inherited
Handles a ChannelFaultEvent.
MessageAgent
 Inherited
connect():void
Connects the Producer to its target destination.
AbstractProducer
 Inherited
disconnect():void
[override] Disconnects the Producer from its remote destination.
AbstractProducer
 Inherited
fault(errMsg:ErrorMessage, msg:IMessage):void
Invoked by a MessageResponder upon receiving a fault for a sent message.
MessageAgent
 Inherited
Returns true if there are any pending requests for the passed in message.
MessageAgent
 Inherited
initialized(document:Object, id:String):void
Called after the implementing object has been created and all properties specified on the tag have been assigned.
MessageAgent
 Inherited
logout():void
Logs the MessageAgent out from its remote destination.
MessageAgent
  
removeSubtopic(subtopic:String):void
Removes the subtopic from the subtopics property.
MultiTopicProducer
 Inherited
send(message:IMessage):void
Sends the specified message to its destination.
AbstractProducer
 Inherited
setCredentials(username:String, password:String, charset:String = null):void
Sets the credentials that the MessageAgent uses to authenticate to destinations.
MessageAgent
 Inherited
setRemoteCredentials(username:String, password:String, charset:String = null):void
Sets the remote credentials that will be passed through to the remote destination for authenticating to secondary systems.
MessageAgent
Protected Methods
 MethodDefined By
 Inherited
Handles the authentication fault on the server.
MessageAgent
 Inherited
initChannelSet(message:IMessage):void
Used to automatically initialize the channelSet property for the MessageAgent before it connects for the first time.
MessageAgent
 Inherited
internalSend(message:IMessage, waitForClientId:Boolean = true):void
Sends a Message from the MessageAgent to its destination using the agent's ChannelSet.
MessageAgent
 Inherited
This function should be overriden by sublasses to implement reauthentication due to server session time-out behavior specific to them.
MessageAgent
Events
 Event Summary Defined By
 InheritedDispatched when an acknowledge message is received for a sent message.MessageAgent
 InheritedDispatched when the underlying Channel the MessageAgent is using connects.MessageAgent
 InheritedDispatched when the underlying Channel the MessageAgent is using disconnects.MessageAgent
 InheritedDispatched when the underlying Channel the MessageAgent is using faults.MessageAgent
 InheritedDispatched when a message fault occurs.MessageAgent
 InheritedDispatched when the connected property of the MessageAgent changes.MessageAgent
Property Detail
subtopicsproperty
subtopics:ArrayCollection

Language Version : ActionScript 3.0
Product Versions : BlazeDS 4, LCDS 3
Runtime Versions : Flash Player 9, AIR 1.1

Provides access to the list of subtopics used in publishing any messages

This property can be used as the source for data binding.


Implementation
    public function get subtopics():ArrayCollection
    public function set subtopics(value:ArrayCollection):void
Constructor Detail
MultiTopicProducer()Constructor
public function MultiTopicProducer()

Language Version : ActionScript 3.0
Product Versions : BlazeDS 4, LCDS 3
Runtime Versions : Flash Player 9, AIR 1.1

Constructor.


Example
       function sendMessage():void
       {
           var producer:MultiTopicProducer = new MultiTopicProducer();
           producer.destination = "NASDAQ";
           var msg:AsyncMessage = new AsyncMessage();
           msg.headers.operation = "UPDATE";
           msg.body = {"SYMBOL":50.00};
           // only send to subscribers to subtopic "SYMBOL" and "ALLSTOCKS"
           msg.addSubtopic("SYMBOL");
           msg.addSubtopic("ALLSTOCKS");
           producer.send(msg);
       }
       
Method Detail
addSubtopic()method
public function addSubtopic(subtopic:String):void

Language Version : ActionScript 3.0
Product Versions : BlazeDS 4, LCDS 3
Runtime Versions : Flash Player 9, AIR 1.1

Adds a subtopic to the current list of subtopics for messages sent by this producer. This is a shortcut to adding this subtopic to the subtopics property.

Parameters

subtopic:String — The subtopic to add to the current list of subtopics sent by this producer.

removeSubtopic()method 
public function removeSubtopic(subtopic:String):void

Language Version : ActionScript 3.0
Product Versions : BlazeDS 4, LCDS 3
Runtime Versions : Flash Player 9, AIR 1.1

Removes the subtopic from the subtopics property. Throws an error if the subtopic is not in the list.

Parameters

subtopic:String — The subtopic to remove from the subtopics property.