Class SourceResponse

java.lang.Object
org.apache.synapse.transport.passthru.SourceResponse

public class SourceResponse extends Object
  • Constructor Details

  • Method Details

    • connect

      public void connect(Pipe pipe)
    • start

      public void start(org.apache.http.nio.NHttpServerConnection conn) throws IOException, org.apache.http.HttpException
      Starts the response by writing the headers
      Parameters:
      conn - connection
      Throws:
      IOException - if an error occurs
      org.apache.http.HttpException - if an error occurs
    • checkResponseChunkDisable

      public void checkResponseChunkDisable(org.apache.axis2.context.MessageContext responseMsgContext) throws IOException
      Throws:
      IOException
    • write

      public int write(org.apache.http.nio.NHttpServerConnection conn, org.apache.http.nio.ContentEncoder encoder) throws IOException
      Consume the content through the Pipe and write them to the wire
      Parameters:
      conn - connection
      encoder - encoder
      Returns:
      number of bytes written
      Throws:
      IOException - if an error occurs
    • copyAndWrite

      public ByteBuffer copyAndWrite(org.apache.http.nio.NHttpServerConnection conn, org.apache.http.nio.ContentEncoder encoder) throws IOException
      Same as write(org.apache.http.nio.NHttpServerConnection, org.apache.http.nio.ContentEncoder) but gives out the data consumed through the Pipe
      Parameters:
      conn - connection
      encoder - encoder
      Returns:
      data consumed
      Throws:
      IOException - if an error occurs
    • addHeader

      public void addHeader(String name, String value)
    • setStatus

      public void setStatus(int status)
    • setStatusLine

      public void setStatusLine(String statusLine)
    • removeHeader

      public void removeHeader(String name)
    • removeHeaderIgnoreCase

      public void removeHeaderIgnoreCase(String name)
      Removes every header whose name matches the given name ignoring its letter case. Used to avoid sending duplicate headers to the client when the backend has returned a header in a casing different to the one used by the transport (e.g. "content-type" against "Content-Type").
      Parameters:
      name - name of the header to be removed
    • getHeader

      public String getHeader(String name)
    • hasEntity

      public boolean hasEntity()
    • setKeepAlive

      public void setKeepAlive(boolean keepAlive)