Packagemx.messaging
Classpublic class AbstractProducer
InheritanceAbstractProducer Inheritance MessageAgent Inheritance flash.events.EventDispatcher
Subclasses MultiTopicProducer, Producer

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

The AbstractProducer is the base class for the Producer and MultiTopicConsumer classes. You use these classes to push messages to the server.



Public Properties
 PropertyDefined By
 Inheritedauthenticated : Boolean
[read-only] Indicates if this MessageAgent is using an authenticated connection to its destination.
MessageAgent
  autoConnect : 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
  defaultHeaders : Object
The default headers to apply to messages sent by the Producer.
AbstractProducer
 Inheriteddestination : String
Provides access to the destination for the MessageAgent.
MessageAgent
  priority : int
The default message priority for the messages sent by the Producer.
AbstractProducer
  reconnectAttempts : 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
  reconnectInterval : int
The number of milliseconds between reconnect attempts.
AbstractProducer
 InheritedrequestTimeout : int
Provides access to the request timeout in seconds for sent messages.
MessageAgent
Public Methods
 MethodDefined By
 Inherited
Invoked by a MessageResponder upon receiving a result for a sent message.
MessageAgent
 Inherited
Handles a CONNECT ChannelEvent.
MessageAgent
 Inherited
Handles a DISCONNECT ChannelEvent.
MessageAgent
 Inherited
Handles a ChannelFaultEvent.
MessageAgent
  
connect():void
Connects the Producer to its target destination.
AbstractProducer
  
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
  
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
autoConnectproperty
autoConnect:Boolean

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

If true the Producer automatically connects to its destination the first time the send() method is called. If false then the connect() method must be called explicitly to establish a connection to the destination. By default this property is true, but applications that need to operate in an offline mode may set this to false to prevent the send() method from connecting implicitly.

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


Implementation
    public function get autoConnect():Boolean
    public function set autoConnect(value:Boolean):void
defaultHeadersproperty 
defaultHeaders:Object

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

The default headers to apply to messages sent by the Producer. Any default headers that do not exist in the message will be created. If the message already contains a matching header, the value in the message takes precedence and the default header value is ignored.

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


Implementation
    public function get defaultHeaders():Object
    public function set defaultHeaders(value:Object):void
priorityproperty 
priority:int

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

The default message priority for the messages sent by the Producer. The valid values are 0 to 9 (0 being lowest) and -1 means that the Producer does not have a priority set. Note that if the message already has a priority defined, that takes precedence over Producer's priority.

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


Implementation
    public function get priority():int
    public function set priority(value:int):void
reconnectAttemptsproperty 
reconnectAttempts:int

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

The number of reconnect attempts that the Producer makes in the event that the destination is unavailable or the connection to the destination closes. A value of -1 enables infinite attempts. A value of zero disables reconnect attempts.

Reconnect attempts are made at a constant rate according to the reconnect interval value. When a reconnect attempt is made if the underlying channel for the Producer is not connected or attempting to connect the channel will start a connect attempt. Subsequent Producer reconnect attempts that occur while the underlying channel connect attempt is outstanding are effectively ignored until the outstanding channel connect attempt succeeds or fails.

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


Implementation
    public function get reconnectAttempts():int
    public function set reconnectAttempts(value:int):void

See also

reconnectIntervalproperty 
reconnectInterval:int

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

The number of milliseconds between reconnect attempts. If a Producer doesn't receive an acknowledgement for a connect attempt, it will wait the specified number of milliseconds before making a subsequent reconnect attempt. Setting the value to zero disables reconnect attempts.

Reconnect attempts are made at a constant rate according to this value. When a reconnect attempt is made if the underlying channel for the Producer is not connected or attempting to connect the channel will start a connect attempt. Subsequent Producer reconnect attempts that occur while the underlying channel connect attempt is outstanding are effectively ignored until the outstanding channel connect attempt succeeds or fails.

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


Implementation
    public function get reconnectInterval():int
    public function set reconnectInterval(value:int):void

Throws
ArgumentError — If the assigned value is negative.

See also

Method Detail
connect()method
public function connect():void

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

Connects the Producer to its target destination. When a connection is established the connected property will change to true and this property is bindable and generates PropertyChangeEvents. The internal TRIGGER_CONNECT_OPERATION CommandMessage that is sent will result in an acknowledge or fault event depending upon whether the underlying channel establishes its connection.


Throws
InvalidDestinationError — If no destination is set.

Example
         var producer:Producer = new Producer();
         producer.destination = "TestTopic";
         producer.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE, handleConnect);
         producer.connect();
      
disconnect()method 
override public function disconnect():void

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

Disconnects the Producer from its remote destination. This method does not wait for outstanding network operations to complete. After invoking disconnect(), the Producer will report that it is not connected and it will not receive any outstanding message acknowledgements or faults. Disconnecting stops automatic reconnect attempts if they are running.

send()method 
public function send(message:IMessage):void

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

Sends the specified message to its destination. If the producer is being used for publish/subscribe messaging, only messages of type AsyncMessage should be sent unless a custom message type is being used and the message destination on the server has been configured to process the custom message type.

Parameters

message:IMessage — The Message to send.


Throws
InvalidDestinationError — If no destination is set.

Example
         var producer:Producer = new Producer();
         producer.destination = "TestTopic";
         var msg:AsyncMessage = new AsyncMessage();
         msg.body = "test message";
         producer.send(msg);