## org.apache.jk.common
Class JkInputStream

    java.lang.Object
      java.io.InputStream
          org.apache.jk.common.JkInputStream

public class JkInputStream
extends java.io.InputStream

Generic input stream impl on top of ajp

Field Summary
`static int` `H_SIZE`
`static byte` `JK_AJP13_GET_BODY_CHUNK`
`static int` `MAX_PACKET_SIZE`
`static int` `MAX_READ_SIZE`

Constructor Summary
`JkInputStream()`

Method Summary
`int` `available()`
`void` `close()`
`int` `doRead(ByteChunk responseChunk)`
`int` `doRead1(byte[] b, int off, int len)`
`void` `mark(int readLimit)`
`boolean` `markSupported()`
`int` `read()`
`int` `read(byte[] b)`
`int` `read(byte[] b, int off, int len)`
`boolean` `receive()` Receive a chunk of data.
`void` `recycle()` Must be called before or after each request
`void` `reset()`
`void` `setContentLength(int i)` Must be called after the request is parsed, before any input
`void` `setMsgContext(MsgContext mc)` Must be called when the stream is created
`long` `skip(long n)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### MAX_PACKET_SIZE

    public static final int MAX_PACKET_SIZE

See Also:
  Constant Field Values

### H_SIZE

    public static final int H_SIZE

See Also:
  Constant Field Values

### MAX_READ_SIZE

    public static final int MAX_READ_SIZE

See Also:
  Constant Field Values

### JK_AJP13_GET_BODY_CHUNK

    public static final byte JK_AJP13_GET_BODY_CHUNK

See Also:
  Constant Field Values

Constructor Detail

### JkInputStream

    public JkInputStream()

Method Detail

### available

    public int available()
                  throws java.io.IOException

  Throws:
    `java.io.IOException`

### close

    public void close()
               throws java.io.IOException

  Throws:
    `java.io.IOException`

### mark

    public void mark(int readLimit)

### markSupported

    public boolean markSupported()

### reset

    public void reset()
               throws java.io.IOException

  Throws:
    `java.io.IOException`

### read

    public int read()
             throws java.io.IOException

  Throws:
    `java.io.IOException`

### read

    public int read(byte[] b)
             throws java.io.IOException

  Throws:
    `java.io.IOException`

### read

    public int read(byte[] b,
                    int off,
                    int len)
             throws java.io.IOException

  Throws:
    `java.io.IOException`

### skip

    public long skip(long n)
              throws java.io.IOException

  Throws:
    `java.io.IOException`

### doRead1

    public int doRead1(byte[] b,
                       int off,
                       int len)
                throws java.io.IOException

  Throws:
    `java.io.IOException`

### setContentLength

    public void setContentLength(int i)

  Must be called after the request is parsed, before any input

### setMsgContext

    public void setMsgContext(MsgContext mc)

  Must be called when the stream is created

### recycle

    public void recycle()

  Must be called before or after each request

### doRead

    public int doRead(ByteChunk responseChunk)
               throws java.io.IOException

  Throws:
    `java.io.IOException`

### receive

    public boolean receive()
                    throws java.io.IOException

  Receive a chunk of data. Called to implement the 'special' packet in ajp13 and to receive the data after we send a GET_BODY packet

  Throws:
    `java.io.IOException`

Copyright © 2000-2003 Apache Software Foundation. All Rights Reserved.