OSMQ
v2.0.1

osmq.clients
Class ThreadedPublisherBean

java.lang.Object
  extended byosmq.clients.PublisherBase
      extended byosmq.clients.PublisherBean
          extended byosmq.clients.ThreadedPublisherBean
All Implemented Interfaces:
ClientAdapter, ExceptionListener, Publisher

public class ThreadedPublisherBean
extends PublisherBean

A multi-threaded class derived from the PublisherBean class. When an application puts a message to this class, the message is written to a local fifo.

A seperate aggregate thread reads from that fifo and writes the fifo's messages to the PublisherBean's socket stream that is attached to a remote message broker.


Constructor Summary
ThreadedPublisherBean()
           
ThreadedPublisherBean(PubConnectionHandler handler)
           
ThreadedPublisherBean(RemoteService si)
           
 
Method Summary
 void close()
          Closes the publisher's connection to the message broker.
 java.lang.String getBrokerName()
          Returns the name of the remote message broker for this session.
 java.lang.String getClientID()
          Returns the client identifier used by this session to communicate with the message broker.
 ExceptionListener getExceptionListener()
          Return the ExceptionListener that will be notified when there is an exception due to an inability to connect with the broker, or due to an I/O or communications failure.
 java.lang.String getHostName()
          Returns the message broker's host address as a DNS host name or IP address.
 int getPortID()
          Returns the port id that will be used to connect to the message broker.
 long getQueuedCount()
           
 boolean isAutoCommit()
          Returns true if the publisher is in auto-commit mode.
 void open()
          Locates and connects to the remote message broker, and performs the necessary publisher authentication.
 void setAutoCommit(boolean autocommit)
          Turns on or off the autocommitment of published messages to the message broker.
 void setBrokerName(java.lang.String broker)
          Defines the named message broker to use for message processing (sending and receiving).
 void setClientID(java.lang.String id)
          Sets the identity of the application as a message originator (publisher)
 void setExceptionListener(ExceptionListener listener)
          Sets an ExceptionListener that will be notified when there is an exception due to an inability to connect with the broker, or due to an I/O or communications failure.
 void setHostName(java.lang.String hostname)
          Overrides the host name / IP address of the remote server;
 void setPortID(int port)
          Overrides the port id of the remote server;
 void stop()
           
 
Methods inherited from class osmq.clients.PublisherBean
commit, getCommitTransactionCount, getConnectionPublishedCount, getPublishedCount, isOpen, isThreaded, onException, publish, rollback, setThreaded
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface osmq.clients.Publisher
commit, getConnectionPublishedCount, getPublishedCount, isOpen, publish, rollback
 

Constructor Detail

ThreadedPublisherBean

public ThreadedPublisherBean()

ThreadedPublisherBean

public ThreadedPublisherBean(PubConnectionHandler handler)

ThreadedPublisherBean

public ThreadedPublisherBean(RemoteService si)
Method Detail

open

public void open()
          throws java.io.IOException
Description copied from interface: Publisher
Locates and connects to the remote message broker, and performs the necessary publisher authentication.

Specified by:
open in interface Publisher
Overrides:
open in class PublisherBean
Throws:
java.io.IOException

close

public void close()
Description copied from class: PublisherBean
Closes the publisher's connection to the message broker. Note that once the MessagePublisher has been closed, any subsequent calls to publish(WritableMessage) will result in an IOException being thrown.

Specified by:
close in interface Publisher
Overrides:
close in class PublisherBean

stop

public void stop()

getQueuedCount

public long getQueuedCount()

setClientID

public void setClientID(java.lang.String id)
Sets the identity of the application as a message originator (publisher)

Specified by:
setClientID in interface Publisher
Overrides:
setClientID in class PublisherBean
Parameters:
id - a unique name identifying the client application to the message broker.

getClientID

public java.lang.String getClientID()
Returns the client identifier used by this session to communicate with the message broker.

Specified by:
getClientID in interface Publisher
Overrides:
getClientID in class PublisherBean

setBrokerName

public void setBrokerName(java.lang.String broker)
Defines the named message broker to use for message processing (sending and receiving). Generally, this method should not be called. Rather, the default broker should be used, especially in a production environment.

Specified by:
setBrokerName in interface Publisher
Overrides:
setBrokerName in class PublisherBean

getBrokerName

public java.lang.String getBrokerName()
Returns the name of the remote message broker for this session.

Specified by:
getBrokerName in interface Publisher
Overrides:
getBrokerName in class PublisherBean

setPortID

public void setPortID(int port)
Overrides the port id of the remote server;

NOTE: Normally this method should NOT be called by the client application.

Specified by:
setPortID in interface Publisher
Overrides:
setPortID in class PublisherBean

getPortID

public int getPortID()
Description copied from interface: Publisher
Returns the port id that will be used to connect to the message broker. A value of 0 indicates that dynamic discovery will be used to identify the broker port.

Specified by:
getPortID in interface Publisher
Overrides:
getPortID in class PublisherBean

setHostName

public void setHostName(java.lang.String hostname)
Overrides the host name / IP address of the remote server;

NOTE: Normally this method should NOT be called by the client application.

Specified by:
setHostName in interface Publisher
Overrides:
setHostName in class PublisherBean

getHostName

public java.lang.String getHostName()
Description copied from interface: Publisher
Returns the message broker's host address as a DNS host name or IP address. This is the name that was set by the application. A value of null indicates that dynamic discovery will be used to identify the host address.

Specified by:
getHostName in interface Publisher
Overrides:
getHostName in class PublisherBean

setExceptionListener

public void setExceptionListener(ExceptionListener listener)
Sets an ExceptionListener that will be notified when there is an exception due to an inability to connect with the broker, or due to an I/O or communications failure.

Specified by:
setExceptionListener in interface Publisher
Overrides:
setExceptionListener in class PublisherBean

getExceptionListener

public ExceptionListener getExceptionListener()
Return the ExceptionListener that will be notified when there is an exception due to an inability to connect with the broker, or due to an I/O or communications failure.

Specified by:
getExceptionListener in interface Publisher
Overrides:
getExceptionListener in class PublisherBean

setAutoCommit

public void setAutoCommit(boolean autocommit)
                   throws java.io.IOException
Turns on or off the autocommitment of published messages to the message broker.

When autocommit is ON, each message that is published gets transmitted to the message broker for distribution.

When autocommit is OFF, the user must call commit() to send published messages to the broker. Published messages that have not been committed can be discarded by a call to the method rollback().

The commit() method transmits all messages that were published since the last call to commit() or rollback().

NOTE: The default mode is autocommit ON.

Specified by:
setAutoCommit in interface Publisher
Overrides:
setAutoCommit in class PublisherBean
Throws:
java.io.IOException - an attempt to set autocommit to true when there are messages that have been published but not commited or rolled back.
See Also:
PublisherBase.commit(), PublisherBase.rollback()

isAutoCommit

public boolean isAutoCommit()
Description copied from interface: Publisher
Returns true if the publisher is in auto-commit mode.

Specified by:
isAutoCommit in interface Publisher
Overrides:
isAutoCommit in class PublisherBean

(c) 2000 - 2003 MQue Systems
All Rights Reserved