org.apache.commons.messagelet.impl
Class HttpMessageletResponseImpl

java.lang.Object
  extended by javax.servlet.ServletResponseWrapper
      extended by javax.servlet.http.HttpServletResponseWrapper
          extended by org.apache.commons.messagelet.impl.HttpMessageletResponseImpl
All Implemented Interfaces:
javax.servlet.http.HttpServletResponse, javax.servlet.ServletResponse, MessageletResponse

public class HttpMessageletResponseImpl
extends javax.servlet.http.HttpServletResponseWrapper
implements MessageletResponse

HttpMessageletResponseImpl represents a servlet request from a JMS Message source which appears like a HTTP request.

Version:
$Revision: 1.3 $
Author:
James Strachan

Field Summary
private  Messenger messenger
          the messenger used to send replies to
private  javax.jms.Destination replyToDestination
          the reply to destination to send replies to
private  BufferedServletOutputStream stream
          The BufferedServletOutputStream that is given to the servlet to capture the response
protected  java.io.PrintWriter writer
          The PrintWriter that has been returned by getWriter(), if any
 
Fields inherited from interface javax.servlet.http.HttpServletResponse
SC_ACCEPTED, SC_BAD_GATEWAY, SC_BAD_REQUEST, SC_CONFLICT, SC_CONTINUE, SC_CREATED, SC_EXPECTATION_FAILED, SC_FORBIDDEN, SC_GATEWAY_TIMEOUT, SC_GONE, SC_HTTP_VERSION_NOT_SUPPORTED, SC_INTERNAL_SERVER_ERROR, SC_LENGTH_REQUIRED, SC_METHOD_NOT_ALLOWED, SC_MOVED_PERMANENTLY, SC_MOVED_TEMPORARILY, SC_MULTIPLE_CHOICES, SC_NO_CONTENT, SC_NON_AUTHORITATIVE_INFORMATION, SC_NOT_ACCEPTABLE, SC_NOT_FOUND, SC_NOT_IMPLEMENTED, SC_NOT_MODIFIED, SC_OK, SC_PARTIAL_CONTENT, SC_PAYMENT_REQUIRED, SC_PRECONDITION_FAILED, SC_PROXY_AUTHENTICATION_REQUIRED, SC_REQUEST_ENTITY_TOO_LARGE, SC_REQUEST_TIMEOUT, SC_REQUEST_URI_TOO_LONG, SC_REQUESTED_RANGE_NOT_SATISFIABLE, SC_RESET_CONTENT, SC_SEE_OTHER, SC_SERVICE_UNAVAILABLE, SC_SWITCHING_PROTOCOLS, SC_TEMPORARY_REDIRECT, SC_UNAUTHORIZED, SC_UNSUPPORTED_MEDIA_TYPE, SC_USE_PROXY
 
Constructor Summary
HttpMessageletResponseImpl(javax.servlet.http.HttpServletResponse response)
           
 
Method Summary
protected  BufferedServletOutputStream createOutputStream()
           
 void finish()
          Called to finish the request
 void flushBuffer()
           
 javax.servlet.ServletOutputStream getOutputStream()
           
 Messenger getReplyMessenger()
          Returns the Messenger that should be used for sending replies to this incoming request
 javax.jms.Destination getReplyToDestination()
          Returns the destination that reply to messages are sent
 java.io.PrintWriter getWriter()
           
 void reset()
          Resets the response, ready for a new request
 void sendReply(javax.jms.Message replyMessage)
          Sends a reply to the original message
 void setReplyMessenger(Messenger messenger)
           
 void setReplyToDestination(javax.jms.Destination replyToDestination)
           
 
Methods inherited from class javax.servlet.http.HttpServletResponseWrapper
addCookie, addDateHeader, addHeader, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL, sendError, sendError, sendRedirect, setDateHeader, setHeader, setIntHeader, setStatus, setStatus
 
Methods inherited from class javax.servlet.ServletResponseWrapper
getBufferSize, getCharacterEncoding, getLocale, getResponse, isCommitted, resetBuffer, setBufferSize, setContentLength, setContentType, setLocale, setResponse
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface javax.servlet.ServletResponse
getBufferSize, getCharacterEncoding, getLocale, isCommitted, resetBuffer, setBufferSize, setContentLength, setContentType, setLocale
 

Field Detail

messenger

private Messenger messenger
the messenger used to send replies to


replyToDestination

private javax.jms.Destination replyToDestination
the reply to destination to send replies to


stream

private BufferedServletOutputStream stream
The BufferedServletOutputStream that is given to the servlet to capture the response


writer

protected java.io.PrintWriter writer
The PrintWriter that has been returned by getWriter(), if any

Constructor Detail

HttpMessageletResponseImpl

public HttpMessageletResponseImpl(javax.servlet.http.HttpServletResponse response)
Method Detail

reset

public void reset()
Resets the response, ready for a new request

Specified by:
reset in interface javax.servlet.ServletResponse
Overrides:
reset in class javax.servlet.ServletResponseWrapper

finish

public void finish()
            throws java.io.IOException,
                   javax.jms.JMSException
Called to finish the request

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

sendReply

public void sendReply(javax.jms.Message replyMessage)
               throws javax.jms.JMSException
Sends a reply to the original message

Specified by:
sendReply in interface MessageletResponse
Throws:
javax.jms.JMSException

getReplyMessenger

public Messenger getReplyMessenger()
Description copied from interface: MessageletResponse
Returns the Messenger that should be used for sending replies to this incoming request

Specified by:
getReplyMessenger in interface MessageletResponse

getReplyToDestination

public javax.jms.Destination getReplyToDestination()
Description copied from interface: MessageletResponse
Returns the destination that reply to messages are sent

Specified by:
getReplyToDestination in interface MessageletResponse

setReplyMessenger

public void setReplyMessenger(Messenger messenger)

setReplyToDestination

public void setReplyToDestination(javax.jms.Destination replyToDestination)

flushBuffer

public void flushBuffer()
                 throws java.io.IOException
Specified by:
flushBuffer in interface javax.servlet.ServletResponse
Overrides:
flushBuffer in class javax.servlet.ServletResponseWrapper
Throws:
java.io.IOException

getOutputStream

public javax.servlet.ServletOutputStream getOutputStream()
                                                  throws java.io.IOException
Specified by:
getOutputStream in interface javax.servlet.ServletResponse
Overrides:
getOutputStream in class javax.servlet.ServletResponseWrapper
Throws:
java.io.IOException

getWriter

public java.io.PrintWriter getWriter()
                              throws java.io.IOException
Specified by:
getWriter in interface javax.servlet.ServletResponse
Overrides:
getWriter in class javax.servlet.ServletResponseWrapper
Throws:
java.io.IOException

createOutputStream

protected BufferedServletOutputStream createOutputStream()