Class ByteString.Output
- java.lang.Object
-
- java.io.OutputStream
-
- com.google.protobuf.ByteString.Output
-
- All Implemented Interfaces:
Closeable,Flushable,AutoCloseable
- Enclosing class:
- ByteString
public static final class ByteString.Output extends OutputStream
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidreset()Resets this stream, so that all currently accumulated output in the output stream is discarded.intsize()Returns the current size of the output stream.ByteStringtoByteString()Creates a byte string with the size and contents of this output stream.StringtoString()Returns a string representation of the object.voidwrite(byte[] b, int offset, int length)Writeslenbytes from the specified byte array starting at offsetoffto this output stream.voidwrite(int b)Writes the specified byte to this output stream.voidwriteTo(OutputStream out)Writes the complete contents of this byte array output stream to the specified output stream argument.-
Methods inherited from class java.io.OutputStream
close, flush, write
-
-
-
-
Method Detail
-
write
public void write(int b)
Description copied from class:OutputStreamWrites the specified byte to this output stream. The general contract forwriteis that one byte is written to the output stream. The byte to be written is the eight low-order bits of the argumentb. The 24 high-order bits ofbare ignored.Subclasses of
OutputStreammust provide an implementation for this method.- Specified by:
writein classOutputStream- Parameters:
b- thebyte.
-
write
public void write(byte[] b, int offset, int length)Description copied from class:OutputStreamWriteslenbytes from the specified byte array starting at offsetoffto this output stream. The general contract forwrite(b, off, len)is that some of the bytes in the arraybare written to the output stream in order; elementb[off]is the first byte written andb[off+len-1]is the last byte written by this operation.The
writemethod ofOutputStreamcalls the write method of one argument on each of the bytes to be written out. Subclasses are encouraged to override this method and provide a more efficient implementation.If
bisnull, aNullPointerExceptionis thrown.If
offis negative, orlenis negative, oroff+lenis greater than the length of the arrayb, then anIndexOutOfBoundsExceptionis thrown.- Overrides:
writein classOutputStream- Parameters:
b- the data.offset- the start offset in the data.length- the number of bytes to write.
-
toByteString
public ByteString toByteString()
Creates a byte string with the size and contents of this output stream. This does not create a new copy of the underlying bytes. If the stream size grows dynamically, the runtime is O(log n) in respect to the number of bytes written to theByteString.Output. If the stream size stays within the initial capacity, the runtime is O(1).- Returns:
- the current contents of this output stream, as a byte string.
-
writeTo
public void writeTo(OutputStream out) throws IOException
Writes the complete contents of this byte array output stream to the specified output stream argument.- Parameters:
out- the output stream to which to write the data.- Throws:
IOException- if an I/O error occurs.
-
size
public int size()
Returns the current size of the output stream.- Returns:
- the current size of the output stream
-
reset
public void reset()
Resets this stream, so that all currently accumulated output in the output stream is discarded. The output stream can be used again, reusing the already allocated buffer space.
-
toString
public String toString()
Description copied from class:ObjectReturns a string representation of the object. In general, thetoStringmethod returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.The
toStringmethod for classObjectreturns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:getClass().getName() + '@' + Integer.toHexString(hashCode())
-
-