Class ExpandableMarshalledValueByteStream

    • Field Detail

      • DEFAULT_DOUBLING_SIZE

        public static final int DEFAULT_DOUBLING_SIZE
        Default buffer size after which if more buffer capacity is needed the buffer will grow by 25% rather than 100%
        See Also:
        Constant Field Values
    • Constructor Detail

      • ExpandableMarshalledValueByteStream

        public ExpandableMarshalledValueByteStream()
      • ExpandableMarshalledValueByteStream

        public ExpandableMarshalledValueByteStream​(int size)
      • ExpandableMarshalledValueByteStream

        public ExpandableMarshalledValueByteStream​(int size,
                                                   int maxDoublingSize)
        Creates a new byte array output stream, with a buffer capacity of the specified size, in bytes.
        Parameters:
        size - the initial size.
        maxDoublingSize - the buffer size, after which if more capacity is needed the buffer will grow by 25% rather than 100%
        Throws:
        IllegalArgumentException - if size is negative.
    • Method Detail

      • getRaw

        public final byte[] getRaw()
        Gets the internal buffer array. Note that the length of this array will almost certainly be longer than the data written to it; call size() to get the number of bytes of actual data.
        Specified by:
        getRaw in class MarshalledValueByteStream
      • write

        public final void write​(byte[] b,
                                int off,
                                int len)
        Specified by:
        write in interface org.jboss.marshalling.ByteOutput
        Overrides:
        write in class OutputStream
      • write

        public final void write​(int b)
        Specified by:
        write in interface org.jboss.marshalling.ByteOutput
        Specified by:
        write in class OutputStream
      • getMaxDoublingSize

        public final int getMaxDoublingSize()
        Gets the highest internal buffer size after which if more capacity is needed the buffer will grow in 25% increments rather than 100%.
      • getNewBufferSize

        public final int getNewBufferSize​(int curSize,
                                          int minNewSize)
        Gets the number of bytes to which the internal buffer should be resized.
        Parameters:
        curSize - the current number of bytes
        minNewSize - the minimum number of bytes required
        Returns:
        the size to which the internal buffer should be resized
      • equals

        public boolean equals​(Object thatObject)
        Overrides:
        equals in class Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object