Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.struts2.util.tomcat.buf
Class MessageBytes

    java.lang.Object
      org.apache.struts2.util.tomcat.buf.MessageBytes

All Implemented Interfaces:
  Serializable, Cloneable

    public final class MessageBytes

extends Object
implements Cloneable, Serializable

This class is used to represent a subarray of bytes in an HTTP message. It represents all request/response elements. The byte/char conversions are delayed and cached. Everything is recyclable. The object can represent a byte[], a char[], or a (sub) String. All operations can be made in case sensitive mode or not.

Author:
  dac@eng.sun.com, James Todd [gonzo@eng.sun.com], Costin Manolache
See Also:
  Serialized Form

Field Summary
`static int` | `T_BYTES` getType() is T_STR if the the object used to create the MessageBytes was a byte[]
`static int` | `T_CHARS` getType() is T_STR if the the object used to create the MessageBytes was a char[]
`static int` | `T_NULL`
`static int` | `T_STR` getType() is T_STR if the the object used to create the MessageBytes was a String

Method Summary
`void` | `duplicate(MessageBytes src)` Copy the src into this MessageBytes, allocating more space if needed
`boolean` | `equals(MessageBytes mb)`
`boolean` | `equals(Object obj)`
`boolean` | `equals(String s)` Compares the message bytes to the specified String object.
`boolean` | `equalsIgnoreCase(String s)` Compares the message bytes to the specified String object.
`ByteChunk` | `getByteChunk()` Returns the byte chunk, representing the byte[] and offset/length.
`CharChunk` | `getCharChunk()` Returns the char chunk, representing the char[] and offset/length.
`Charset` | `getCharset()` Get the Charset used for string<->byte conversions.
`int` | `getLength()` Returns the length of the original buffer.
`long` | `getLong()` Convert the buffer to an long, cache the value
`String` | `getString()` Returns the string value.
`int` | `getType()` Return the type of the original content.
`int` | `hashCode()`
`int` | `indexOf(String s)`
`int` | `indexOf(String s, int starting)`
`int` | `indexOfIgnoreCase(String s, int starting)`
`boolean` | `isNull()`
`static MessageBytes` | `newInstance()` Construct a new MessageBytes instance
`void` | `recycle()` Resets the message bytes to an uninitialized (NULL) state.
`void` | `setBytes(byte[] b, int off, int len)` Sets the content to the specified subarray of bytes.
`void` | `setChars(char[] c, int off, int len)` Sets the content to be a char[]
`void` | `setCharset(Charset charset)` Set the Charset used for string<->byte conversions.
`void` | `setLong(long l)` Set the buffer to the representation of an long
`void` | `setString(String s)` Set the content to be a string
`boolean` | `startsWithIgnoreCase(String s, int pos)` Returns true if the message bytes starts with the specified string.
`void` | `toBytes()` Do a char->byte conversion.
`void` | `toChars()` Convert to char[] and fill the CharChunk.
`String` | `toString()` Compute the string value

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

Field Detail

### T_NULL

    public static final int T_NULL

See Also:
  Constant Field Values

### T_STR

    public static final int T_STR

  getType() is T_STR if the the object used to create the MessageBytes was a String

  See Also:
    Constant Field Values

### T_BYTES

    public static final int T_BYTES

  getType() is T_STR if the the object used to create the MessageBytes was a byte[]

  See Also:
    Constant Field Values

### T_CHARS

    public static final int T_CHARS

  getType() is T_STR if the the object used to create the MessageBytes was a char[]

  See Also:
    Constant Field Values

Method Detail

### newInstance

    public static MessageBytes newInstance()

  Construct a new MessageBytes instance

### isNull

    public boolean isNull()

### recycle

    public void recycle()

  Resets the message bytes to an uninitialized (NULL) state.

### setBytes

    public void setBytes(byte[] b,
                         int off,
                         int len)

  Sets the content to the specified subarray of bytes.

  Parameters:
    `b` - the bytes
    `off` - the start offset of the bytes
    `len` - the length of the bytes

### setChars

    public void setChars(char[] c,
                         int off,
                         int len)

  Sets the content to be a char[]

  Parameters:
    `c` - the bytes
    `off` - the start offset of the bytes
    `len` - the length of the bytes

### setString

    public void setString(String s)

  Set the content to be a string

### toString

    public String toString()

  Compute the string value

  Overrides:
    `toString` in class `Object`

### getType

    public int getType()

  Return the type of the original content. Can be T_STR, T_BYTES, T_CHARS or T_NULL

### getByteChunk

    public ByteChunk getByteChunk()

  Returns the byte chunk, representing the byte[] and offset/length. Valid only if T_BYTES or after a conversion was made.

### getCharChunk

    public CharChunk getCharChunk()

  Returns the char chunk, representing the char[] and offset/length. Valid only if T_CHARS or after a conversion was made.

### getString

    public String getString()

  Returns the string value. Valid only if T_STR or after a conversion was made.

### getCharset

    public Charset getCharset()

  Get the Charset used for string<->byte conversions.

### setCharset

    public void setCharset(Charset charset)

  Set the Charset used for string<->byte conversions.

### toBytes

    public void toBytes()

  Do a char->byte conversion.

### toChars

    public void toChars()

  Convert to char[] and fill the CharChunk. XXX Not optimized - it converts to String first.

### getLength

    public int getLength()

  Returns the length of the original buffer. Note that the length in bytes may be different from the length in chars.

### equals

    public boolean equals(String s)

  Compares the message bytes to the specified String object.

  Parameters:
    `s` - the String to compare
  Returns:
    true if the comparison succeeded, false otherwise

### equalsIgnoreCase

    public boolean equalsIgnoreCase(String s)

  Compares the message bytes to the specified String object.

  Parameters:
    `s` - the String to compare
  Returns:
    true if the comparison succeeded, false otherwise

### equals

    public boolean equals(Object obj)

  Overrides:
    `equals` in class `Object`

### equals

    public boolean equals(MessageBytes mb)

### startsWithIgnoreCase

    public boolean startsWithIgnoreCase(String s,
                                        int pos)

  Returns true if the message bytes starts with the specified string.

  Parameters:
    `s` - the string
    `pos` - The start position

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `Object`

### indexOf

    public int indexOf(String s,
                       int starting)

### indexOf

    public int indexOf(String s)

### indexOfIgnoreCase

    public int indexOfIgnoreCase(String s,
                                 int starting)

### duplicate

    public void duplicate(MessageBytes src)
                   throws IOException

  Copy the src into this MessageBytes, allocating more space if needed

  Throws:
    `IOException`

### setLong

    public void setLong(long l)

  Set the buffer to the representation of an long

### getLong

    public long getLong()

  Convert the buffer to an long, cache the value

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000–2018 Apache Software Foundation. All rights reserved.