Class BlobProxy

  • All Implemented Interfaces:
    Blob, BlobImplementer

    public final class BlobProxy
    extends Object
    implements Blob, BlobImplementer
    Manages aspects of representing Blob objects. In previous versions this used to be implemented by using a java.lang.reflect.Proxy to deal with incompatibilities across various JDBC versions, hence the class name, but using a real Proxy is no longer necessary. The class name could be updated to reflect this but that would break APIs, so this operation is deferred.
    • Method Detail

      • 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.
      • 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
      • truncate

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

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