org.apache.commons.messenger.task
Class ConsumerTask

java.lang.Object
  extended byorg.apache.tools.ant.ProjectComponent
      extended byorg.apache.tools.ant.Task
          extended byorg.apache.commons.messenger.task.ConsumerTask
All Implemented Interfaces:
java.lang.Cloneable

public class ConsumerTask
extends org.apache.tools.ant.Task

ConsumerTask is an Ant task which will publish all of the given text files as a JMS Text Message using a given JMS Connection (Messenger) and a Destination

Version:
$Revision: 1.3 $
Author:
James Strachan

Field Summary
private  int count
          the number of messages to receive
private  javax.jms.Destination destination
           
private  java.io.File dir
          the output directory
private  Messenger messenger
           
private  MessengerManager messengerManager
           
private  java.lang.String messengerName
           
private  java.lang.String subject
           
 
Fields inherited from class org.apache.tools.ant.Task
target, taskName, taskType, wrapper
 
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
 
Constructor Summary
ConsumerTask()
           
 
Method Summary
 void execute()
          Performs the copy operation.
 int getCount()
           
 javax.jms.Destination getDestination()
          Getter for property destination.
 Messenger getMessenger()
           
 MessengerManager getMessengerManager()
          Getter for property messengerManager.
 java.lang.String getMessengerName()
          Getter for property messengerName.
 java.lang.String getSubject()
          Getter for property subject.
protected  void processMessage(javax.jms.Message message)
          Processes a given message
protected  void processMessageText(java.lang.String text)
          Writes the given text to a file
 void setConfiguration(java.lang.String uri)
          Sets the URI of the Messenger.xml configuration document to use to configure the messengers to use for this task.
 void setCount(int count)
          Setter for the number of messages to receive.
 void setDestination(javax.jms.Destination destination)
          Setter for property destination.
 void setDir(java.io.File dir)
          Sets the output directory
 void setMessenger(Messenger messenger)
          Sets the Messenger to be used
 void setMessengerManager(MessengerManager messengerManager)
          Setter for property messengerManager.
 void setMessengerName(java.lang.String messengerName)
          Setter for property messengerName.
 void setSubject(java.lang.String subject)
          Setter for property subject.
 
Methods inherited from class org.apache.tools.ant.Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

messenger

private Messenger messenger

messengerName

private java.lang.String messengerName

destination

private javax.jms.Destination destination

subject

private java.lang.String subject

messengerManager

private MessengerManager messengerManager

count

private int count
the number of messages to receive


dir

private java.io.File dir
the output directory

Constructor Detail

ConsumerTask

public ConsumerTask()
Method Detail

setDir

public void setDir(java.io.File dir)
Sets the output directory


getMessenger

public Messenger getMessenger()
                       throws javax.jms.JMSException
Throws:
javax.jms.JMSException

setMessenger

public void setMessenger(Messenger messenger)
Sets the Messenger to be used


getMessengerName

public java.lang.String getMessengerName()
Getter for property messengerName.

Returns:
Value of property messengerName.

setMessengerName

public void setMessengerName(java.lang.String messengerName)
Setter for property messengerName.

Parameters:
messengerName - New value of property messengerName.

getDestination

public javax.jms.Destination getDestination()
                                     throws javax.jms.JMSException
Getter for property destination.

Returns:
Value of property destination.
Throws:
javax.jms.JMSException

setDestination

public void setDestination(javax.jms.Destination destination)
Setter for property destination.

Parameters:
destination - New value of property destination.

getSubject

public java.lang.String getSubject()
Getter for property subject.

Returns:
Value of property subject.

setSubject

public void setSubject(java.lang.String subject)
Setter for property subject.

Parameters:
subject - New value of property subject.

getMessengerManager

public MessengerManager getMessengerManager()
Getter for property messengerManager.

Returns:
Value of property messengerManager.

setMessengerManager

public void setMessengerManager(MessengerManager messengerManager)
Setter for property messengerManager.

Parameters:
messengerManager - New value of property messengerManager.

setConfiguration

public void setConfiguration(java.lang.String uri)
                      throws javax.jms.JMSException
Sets the URI of the Messenger.xml configuration document to use to configure the messengers to use for this task.

Throws:
javax.jms.JMSException

getCount

public int getCount()
Returns:
the number of messages to receive. A number less than or equal to 0 will receive messages forever

setCount

public void setCount(int count)
Setter for the number of messages to receive. A number less than or equal to 0 will receive messages forever


execute

public void execute()
             throws org.apache.tools.ant.BuildException
Performs the copy operation.

Throws:
org.apache.tools.ant.BuildException

processMessage

protected void processMessage(javax.jms.Message message)
                       throws java.io.IOException,
                              javax.jms.JMSException
Processes a given message

Throws:
java.io.IOException
javax.jms.JMSException

processMessageText

protected void processMessageText(java.lang.String text)
                           throws java.io.IOException
Writes the given text to a file

Throws:
java.io.IOException