     [Bindable(event="propertyChange")]
     /**
      *  Indicates whether the ChannelSet is connected.
-     *  
-     *  @langversion 3.0
-     *  @playerversion Flash 9
-     *  @playerversion AIR 1.1
-     *  @productversion BlazeDS 4
-     *  @productversion LCDS 3 
      */
     public function get connected():Boolean
     {

            _connected = value;
            dispatchEvent(event);
            setAuthenticated(value && currentChannel && currentChannel.authenticated, _credentials, false /* Agents also listen for channel disconnects */);
        }
    }
        

        }
    }
    
    //----------------------------------
    //  heartbeatInterval
    //----------------------------------
    
    /**
     *  @private
     */
    private var _heartbeatInterval:int = 0;
    
    /**
     *  The number of milliseconds between heartbeats sent to the remote
     *  host while this ChannelSet is actively connected but idle.
     *  Any outbound message traffic will delay heartbeats temporarily, with 
     *  this number of milliseconds elapsing after the last sent message before
     *  the next heartbeat is issued.
     *  <p>
     *  This property is useful for applications that connect to a remote host
     *  to received pushed updates and are not actively sending any messages, but
     *  still wish to be notified of a dropped connection even when the networking
     *  layer fails to provide such notification directly. By issuing periodic
     *  heartbeats the client can force the networking layer to report a timeout
     *  if the underlying connection has dropped without notification and the
     *  application can respond to the disconnect appropriately.
     *  </p> 
     *  <p>
     *  Any non-positive value disables heartbeats to the remote host.
     *  The default value is 0 indicating that heartbeats are disabled.
     *  If the application sets this value it should prefer a longer rather than
     *  shorter interval, to avoid placing unnecessary load on the remote host.
     *  As an illustrative example, low-level TCP socket keep-alives generally 
     *  default to an interval of 2 hours. That is a longer interval than most
     *  applications that enable heartbeats will likely want to use, but it
     *  serves as a clear precedent to prefer a longer interval over a shorter
     *  interval.
     *  </p>
     *  <p>
     *  If the currently connected underlying Channel issues poll requests to
     *  the remote host, heartbeats are suppressed because the periodic poll
     *  requests effectively take their place.
     */
    public function get heartbeatInterval():int
    {
        return _heartbeatInterval;
    }
    
    /**
     *  @private
     */
    public function set heartbeatInterval(value:int):void
    {
        if (_heartbeatInterval != value)
        {
            var event:PropertyChangeEvent = PropertyChangeEvent.createUpdateEvent(this, "heartbeatInterval", _heartbeatInterval, value);
            _heartbeatInterval = value;
            dispatchEvent(event);
            if (_heartbeatInterval > 0 && connected)
            {
                scheduleHeartbeat();
            }
        }
    }

    //----------------------------------
    //  initialDestinationId
    //----------------------------------    
