TransportChannel (ActiveMQ 1.1 API)
Keywords: org.codehaus.activemq.transport.TransportChannel interface

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.codehaus.activemq.transport
Interface TransportChannel

All Superinterfaces:
  Service

All Known Implementing Classes:
  TransportChannelSupport

public interface TransportChannel
extends Service

A TransportChannel is used for tranporting packets between nodes e.g. a ActiveMQ JMS Connection and Broker. The TransportChannel supports synchronous and asynchronous send operations as well as sync or async reading of packets. A TransportChannel implementation could use a dedicated thread using blocking IO to read from a socket or could use NIO or poll some file system or database etc. On receipt of a Packet the TransportChannel should invoke the PacketListener

Version:
  $Revision: 1.14 $

Method Summary
`void` | `addTransportStatusEventListener(TransportStatusEventListener listener)` Add a listener for changes in a channels status
`void` | `asyncSend(Packet packet)` Asynchronously send a Packet
`boolean` | `canProcessWireFormatVersion(int version)` Can this wireformat process packets of this version
`String` | `getClientID()`
`int` | `getCurrentWireFormatVersion()`
`boolean` | `isMulticast()`
`boolean` | `isPendingStop()`
`boolean` | `isServerSide()`
`boolean` | `isTransportConnected()`
`void` | `removeTransportStatusEventListener(TransportStatusEventListener listener)` Remove a listener for changes in a channels status
`Receipt` | `send(Packet packet)` synchronously send a Packet
`Receipt` | `send(Packet packet, int timeout)` Synchrnously send a Packet
`void` | `setClientID(String clientID)` Provides a way to specify the client ID that this channel is using
`void` | `setExceptionListener(ExceptionListener listener)` Set an exception listener to listen for asynchronously generated exceptions
`void` | `setPacketListener(PacketListener l)` Set a listener for Packets
`void` | `setPendingStop(boolean pendingStop)` Give the TransportChannel a hint it's about to stop
`void` | `setServerSide(boolean serverSide)` set the server flag
`void` | `setTransportChannelListener(TransportChannelListener listener)` A listener to be notified when the channel is removed
`void` | `start()` start listeneing for events
`void` | `stop()` close the channel

Method Detail

### setPendingStop

    public void setPendingStop(boolean pendingStop)

  Give the TransportChannel a hint it's about to stop

  Parameters:
    `pendingStop` -

### isPendingStop

    public boolean isPendingStop()

  Returns:
    true if the channel is about to stop

### stop

    public void stop()

  close the channel

  Specified by:
    `stop` in interface `Service`

### start

    public void start()
               throws JMSException

  start listeneing for events

  Specified by:
    `start` in interface `Service`
  Throws:
    `JMSException` - if an error occurs

### send

    public Receipt send(Packet packet)
                 throws JMSException

  synchronously send a Packet

  Parameters:
    `packet` -
  Returns:
    a Receipt
  Throws:
    `JMSException`

### send

    public Receipt send(Packet packet,
                        int timeout)
                 throws JMSException

  Synchrnously send a Packet

  Parameters:
    `packet` - packet to send
    `timeout` - amount of time to wait for a receipt
  Returns:
    the Receipt
  Throws:
    `JMSException`

### asyncSend

    public void asyncSend(Packet packet)
                   throws JMSException

  Asynchronously send a Packet

  Parameters:
    `packet` -
  Throws:
    `JMSException`

### setPacketListener

    public void setPacketListener(PacketListener l)

  Set a listener for Packets

  Parameters:
    `l` -

### setExceptionListener

    public void setExceptionListener(ExceptionListener listener)

  Set an exception listener to listen for asynchronously generated exceptions

  Parameters:
    `listener` -

### isMulticast

    public boolean isMulticast()

  Returns:
    true if this transport is multicast based (i.e. broadcasts to multiple nodes)

### addTransportStatusEventListener

    public void addTransportStatusEventListener(TransportStatusEventListener listener)

  Add a listener for changes in a channels status

  Parameters:
    `listener` -

### removeTransportStatusEventListener

    public void removeTransportStatusEventListener(TransportStatusEventListener listener)

  Remove a listener for changes in a channels status

  Parameters:
    `listener` -

### setClientID

    public void setClientID(String clientID)

  Provides a way to specify the client ID that this channel is using

  Parameters:
    `clientID` -

### getClientID

    public String getClientID()

  Returns:
    the client ID that this channel is being used for

### setTransportChannelListener

    public void setTransportChannelListener(TransportChannelListener listener)

  A listener to be notified when the channel is removed

  Parameters:
    `listener` -

### isServerSide

    public boolean isServerSide()

  Returns:
    true if this transport is used by the broker to communicate with a client, or false if this is a client side transport

### setServerSide

    public void setServerSide(boolean serverSide)

  set the server flag

  Parameters:
    `serverSide` -

### canProcessWireFormatVersion

    public boolean canProcessWireFormatVersion(int version)

  Can this wireformat process packets of this version

  Parameters:
    `version` - the version number to test
  Returns:
    true if can accept the version

### getCurrentWireFormatVersion

    public int getCurrentWireFormatVersion()

  Returns:
    the current version of this wire format

### isTransportConnected

    public boolean isTransportConnected()

  Returns:
    true if the transport channel is active, this value will be false through reconnecting

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2004 Protique, Ltd.. All Rights Reserved.