# Package org.apache.axiom.blob

package org.apache.axiom.blob
Contains utility classes to work with binary data. They are typically used to store data temporarily and often provide a better alternative than using `ByteArrayOutputStream` and `ByteArrayInputStream`.

- Class
  Description
  AbstractWritableBlob
  Partial implementation of the `WritableBlob` interface that implements `WritableBlob.readFrom(InputStream)` using `WritableBlob.getOutputStream()` and `Blob.writeTo(OutputStream)` using `Blob.getInputStream()`.
  Blob
  Stores binary data.
  Blobs
  Contains factory methods to create various types of blobs.
  MemoryBlob
  Blob that stores data in memory.
  MemoryBlobInputStream
  Input stream that doesn't throw `IOException` and that supports `InputStream.mark(int)`.
  MemoryBlobOutputStream
  Output stream that doesn't throw `IOException` and that implements `ReadFromSupport`.
  OverflowableBlob
  Blob that accumulates data in memory and transfers it to a different type of blob if the size exceeds a certain threshold.
  WritableBlob
  A writable blob.
  WritableBlobFactory<T extends WritableBlob>
  A factory for `WritableBlob` instances.