com.electrotank.electroserver5.client.api.helper
Class EsObjectCodec.ByteBufferMessageWriter

java.lang.Object
  extended by com.electrotank.electroserver5.client.api.helper.EsObjectCodec.ByteBufferMessageWriter
Enclosing class:
EsObjectCodec

public static class EsObjectCodec.ByteBufferMessageWriter
extends Object

This class automatically expands the given buffer as needed. After completing a set of write operations you should call getBuffer() in case the buffer has been replaced with an expanded one.


Constructor Summary
EsObjectCodec.ByteBufferMessageWriter(ByteBuffer buffer)
           
 
Method Summary
 ByteBuffer getBuffer()
           
 void writeBoolean(boolean bool)
           
 void writeBooleanArray(boolean[] array)
           
 void writeByte(byte byteIn)
           
 void writeByteArray(byte[] array)
           
 void writeCharacter(char character)
           
 void writeCharacterArray(char[] array)
           
 void writeDouble(double doubleIn)
           
 void writeDoubleArray(double[] array)
           
 void writeFloat(float floatIn)
           
 void writeFloatArray(float[] array)
           
 void writeInteger(int integer)
           
 void writeIntegerArray(int[] array)
           
 void writeLength(int length)
          Length is encoded as either 1, 2 3 or 4 bytes.
 void writeLong(long longIn)
           
 void writeLongArray(long[] array)
           
 void writeShort(short shortIn)
           
 void writeShortArray(short[] array)
           
 void writeString(String string)
           
 void writeStringArray(String[] array)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EsObjectCodec.ByteBufferMessageWriter

public EsObjectCodec.ByteBufferMessageWriter(ByteBuffer buffer)
Method Detail

writeBoolean

public void writeBoolean(boolean bool)

writeInteger

public void writeInteger(int integer)

writeLong

public void writeLong(long longIn)

writeDouble

public void writeDouble(double doubleIn)

writeCharacter

public void writeCharacter(char character)

writeShort

public void writeShort(short shortIn)

writeByte

public void writeByte(byte byteIn)

writeFloat

public void writeFloat(float floatIn)

writeString

public void writeString(String string)

writeIntegerArray

public void writeIntegerArray(int[] array)

writeBooleanArray

public void writeBooleanArray(boolean[] array)

writeByteArray

public void writeByteArray(byte[] array)

writeCharacterArray

public void writeCharacterArray(char[] array)

writeDoubleArray

public void writeDoubleArray(double[] array)

writeFloatArray

public void writeFloatArray(float[] array)

writeLongArray

public void writeLongArray(long[] array)

writeShortArray

public void writeShortArray(short[] array)

writeStringArray

public void writeStringArray(String[] array)

getBuffer

public ByteBuffer getBuffer()

writeLength

public void writeLength(int length)
Length is encoded as either 1, 2 3 or 4 bytes. The 2 most significant bits of the first byte contain the length in bytes of the field and then value encoding starts immediately with the next 6 bits. The field is encoded big endian. This scheme gives the following maximums per byte count: 1 = 63 2 = 16,383 3 = 4,194,303 4 = 1,073,741,823 Values larger than 1,073,741,823 will result in an Error being thrown.

Parameters:
length -


Copyright © 2007-2010 Electrotank, Inc. All Rights Reserved.