org.hibernate.engine.jdbc
Class BlobProxy

java.lang.Object
  extended by org.hibernate.engine.jdbc.BlobProxy
All Implemented Interfaces:
InvocationHandler

public class BlobProxy
extends Object
implements InvocationHandler

Manages aspects of proxying Blob references for non-contextual creation, including proxy creation and handling proxy invocations. We use proxies here solely to avoid JDBC version incompatibilities.


Method Summary
static Blob generateProxy(byte[] bytes)
          Generates a BlobImpl proxy using byte data.
static Blob generateProxy(InputStream stream, long length)
          Generates a BlobImpl proxy using a given number of bytes from an InputStream.
 Object invoke(Object proxy, Method method, Object[] args)
          
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

invoke

public Object invoke(Object proxy,
                     Method method,
                     Object[] args)
              throws Throwable

Specified by:
invoke in interface InvocationHandler
Throws:
UnsupportedOperationException - if any methods other than Blob.length(), Blob#getUnderlyingStream, Blob.getBinaryStream(), Blob.getBytes(long, int), Blob.free(), or toString/equals/hashCode are invoked.
Throwable

generateProxy

public static Blob generateProxy(byte[] bytes)
Generates a BlobImpl proxy using byte data.

Parameters:
bytes - The data to be created as a Blob.
Returns:
The generated proxy.

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 generated proxy.


Copyright © 2001-2013 Red Hat, Inc. All Rights Reserved.