org.apache.log.output.jms
Class TextMessageBuilder

java.lang.Object
  extended byorg.apache.log.output.jms.TextMessageBuilder
All Implemented Interfaces:
MessageBuilder

public class TextMessageBuilder
extends java.lang.Object
implements MessageBuilder

Basic message factory that stores LogEvent in Message.

Author:
Avalon Development Team, Peter Donald

Field Summary
private  Formatter m_formatter
           
private  PropertyInfo[] m_properties
           
 
Constructor Summary
TextMessageBuilder(Formatter formatter)
          Creation of a new text message builder.
TextMessageBuilder(PropertyInfo[] properties, Formatter formatter)
          Creation of a new text message builder.
 
Method Summary
 javax.jms.Message buildMessage(javax.jms.Session session, LogEvent event)
          Build a message from the supplied session for the supplied event
private  java.lang.String getContextMap(ContextMap map, java.lang.String aux)
           
private  java.lang.String getStackTrace(java.lang.Throwable throwable)
           
private  java.lang.String getText(LogEvent event)
           
private  void setProperty(javax.jms.TextMessage message, int index, LogEvent event)
          Set a property
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_properties

private final PropertyInfo[] m_properties

m_formatter

private final Formatter m_formatter
Constructor Detail

TextMessageBuilder

public TextMessageBuilder(Formatter formatter)
Creation of a new text message builder.

Parameters:
formatter - the message formatter

TextMessageBuilder

public TextMessageBuilder(PropertyInfo[] properties,
                          Formatter formatter)
Creation of a new text message builder.

Parameters:
properties - the property info set
formatter - the message formatter
Method Detail

buildMessage

public javax.jms.Message buildMessage(javax.jms.Session session,
                                      LogEvent event)
                               throws javax.jms.JMSException
Build a message from the supplied session for the supplied event

Specified by:
buildMessage in interface MessageBuilder
Parameters:
session - the session
event - the log event
Returns:
the message
Throws:
javax.jms.JMSException - if a messaging related error occurs

setProperty

private void setProperty(javax.jms.TextMessage message,
                         int index,
                         LogEvent event)
                  throws javax.jms.JMSException
Set a property

Parameters:
message - the text message
index - the index
event - the log event
Throws:
javax.jms.JMSException

getText

private java.lang.String getText(LogEvent event)

getStackTrace

private java.lang.String getStackTrace(java.lang.Throwable throwable)

getContextMap

private java.lang.String getContextMap(ContextMap map,
                                       java.lang.String aux)