public interface

BinaryResource

com.facebook.binaryresource.BinaryResource
Known Indirect Subclasses

Summary

Public Methods
abstract InputStream openStream()
Opens a new InputStream for reading from this source.
abstract byte[] read()
Reads the full contents of this byte source as a byte array.
abstract long size()
Returns the size of this source in bytes.

Public Methods

public abstract InputStream openStream ()

Opens a new InputStream for reading from this source. This method should return a new, independent stream each time it is called.

The caller is responsible for ensuring that the returned stream is closed.

Throws
IOException if an I/O error occurs in the process of opening the stream

public abstract byte[] read ()

Reads the full contents of this byte source as a byte array.

Throws
IOException if an I/O error occurs in the process of reading from this source

public abstract long size ()

Returns the size of this source in bytes. This may be a heavyweight operation that will open a stream, read (or skip, if possible) to the end of the stream and return the total number of bytes that were read.

For some sources, such as a file, this method may use a more efficient implementation. Note that in such cases, it is possible that this method will return a different number of bytes than would be returned by reading all of the bytes (for example, some special files may return a size of 0 despite actually having content when read).

In either case, if this is a mutable source such as a file, the size it returns may not be the same number of bytes a subsequent read would return.

Throws
IOException if an I/O error occurs in the process of reading the size of this source