Class BlobProxy

java.lang.Object
org.hibernate.engine.jdbc.proxy.BlobProxy
All Implemented Interfaces:
Blob, BlobImplementer

@Internal public final class BlobProxy extends Object implements Blob, BlobImplementer
Manages aspects of representing Blob objects.
See Also:
API Note:
This class is not intended to be called directly by the application program. Instead, use Session.getLobHelper().
  • Method Details

    • getUnderlyingStream

      public BinaryStream getUnderlyingStream() throws SQLException
      Description copied from interface: BlobImplementer
      Gets access to the data underlying this BLOB.
      Specified by:
      getUnderlyingStream in interface BlobImplementer
      Returns:
      Access to the underlying data.
      Throws:
      SQLException
    • generateProxy

      public static Blob generateProxy(byte[] bytes)
      Generates a BlobImpl using byte data.
      Parameters:
      bytes - The data to be created as a Blob.
      Returns:
      The BlobProxy instance to represent this data.
    • generateProxy

      public static Blob generateProxy(InputStream stream, long length)
      Generates a BlobImpl proxy using a given number of bytes from an InputStream.
      Parameters:
      stream - The input stream of bytes to be created as a Blob.
      length - The number of bytes from stream to be written to the Blob.
      Returns:
      The BlobProxy instance to represent this data.
    • length

      public long length() throws SQLException
      Specified by:
      length in interface Blob
      Throws:
      SQLException
    • getBytes

      public byte[] getBytes(long start, int length) throws SQLException
      Specified by:
      getBytes in interface Blob
      Throws:
      SQLException
    • getBinaryStream

      public InputStream getBinaryStream() throws SQLException
      Specified by:
      getBinaryStream in interface Blob
      Throws:
      SQLException
    • position

      public long position(byte[] pattern, long start)
      Specified by:
      position in interface Blob
    • position

      public long position(Blob pattern, long start)
      Specified by:
      position in interface Blob
    • setBytes

      public int setBytes(long pos, byte[] bytes)
      Specified by:
      setBytes in interface Blob
    • setBytes

      public int setBytes(long pos, byte[] bytes, int offset, int len)
      Specified by:
      setBytes in interface Blob
    • setBinaryStream

      public OutputStream setBinaryStream(long pos)
      Specified by:
      setBinaryStream in interface Blob
    • truncate

      public void truncate(long len)
      Specified by:
      truncate in interface Blob
    • free

      public void free()
      Specified by:
      free in interface Blob
    • getBinaryStream

      public InputStream getBinaryStream(long start, long length) throws SQLException
      Specified by:
      getBinaryStream in interface Blob
      Throws:
      SQLException