Class BlobTypeDescriptor
- java.lang.Object
-
- org.hibernate.type.descriptor.java.AbstractTypeDescriptor<java.sql.Blob>
-
- org.hibernate.type.descriptor.java.BlobTypeDescriptor
-
- All Implemented Interfaces:
java.io.Serializable,BasicJavaDescriptor<java.sql.Blob>,JavaTypeDescriptor<java.sql.Blob>
public class BlobTypeDescriptor extends AbstractTypeDescriptor<java.sql.Blob>
Descriptor forBlobhandling. Note,blobsreally are mutable (their internal state can in fact be mutated). We simply treat them as immutable because we cannot properly check them for changes nor deep copy them.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classBlobTypeDescriptor.BlobMutabilityPlan
-
Field Summary
Fields Modifier and Type Field Description static BlobTypeDescriptorINSTANCE
-
Constructor Summary
Constructors Constructor Description BlobTypeDescriptor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanareEqual(java.sql.Blob one, java.sql.Blob another)Determine if two instances are equalintextractHashCode(java.sql.Blob value)Extract a proper hash code for this value.java.lang.StringextractLoggableRepresentation(java.sql.Blob value)Extract a loggable representation of the value.java.sql.BlobfromString(java.lang.String string)java.util.Comparator<java.sql.Blob>getComparator()Retrieve the natural comparator for this type.java.lang.StringtoString(java.sql.Blob value)<X> Xunwrap(java.sql.Blob value, java.lang.Class<X> type, WrapperOptions options)Unwrap an instance of our handled Java type into the requested type.<X> java.sql.Blobwrap(X value, WrapperOptions options)Wrap a value as our handled Java type.-
Methods inherited from class org.hibernate.type.descriptor.java.AbstractTypeDescriptor
getJavaType, getJavaTypeClass, getMutabilityPlan, unknownUnwrap, unknownWrap
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.hibernate.type.descriptor.java.BasicJavaDescriptor
getJdbcRecommendedSqlType
-
-
-
-
Field Detail
-
INSTANCE
public static final BlobTypeDescriptor INSTANCE
-
-
Method Detail
-
extractLoggableRepresentation
public java.lang.String extractLoggableRepresentation(java.sql.Blob value)
Description copied from interface:JavaTypeDescriptorExtract a loggable representation of the value.- Specified by:
extractLoggableRepresentationin interfaceJavaTypeDescriptor<java.sql.Blob>- Overrides:
extractLoggableRepresentationin classAbstractTypeDescriptor<java.sql.Blob>- Parameters:
value- The value for which to extract a loggable representation.- Returns:
- The loggable representation
-
toString
public java.lang.String toString(java.sql.Blob value)
-
fromString
public java.sql.Blob fromString(java.lang.String string)
-
getComparator
public java.util.Comparator<java.sql.Blob> getComparator()
Description copied from interface:JavaTypeDescriptorRetrieve the natural comparator for this type.- Specified by:
getComparatorin interfaceJavaTypeDescriptor<java.sql.Blob>- Overrides:
getComparatorin classAbstractTypeDescriptor<java.sql.Blob>
-
extractHashCode
public int extractHashCode(java.sql.Blob value)
Description copied from interface:JavaTypeDescriptorExtract a proper hash code for this value.- Specified by:
extractHashCodein interfaceJavaTypeDescriptor<java.sql.Blob>- Overrides:
extractHashCodein classAbstractTypeDescriptor<java.sql.Blob>- Parameters:
value- The value for which to extract a hash code.- Returns:
- The extracted hash code.
-
areEqual
public boolean areEqual(java.sql.Blob one, java.sql.Blob another)Description copied from interface:JavaTypeDescriptorDetermine if two instances are equal- Specified by:
areEqualin interfaceJavaTypeDescriptor<java.sql.Blob>- Overrides:
areEqualin classAbstractTypeDescriptor<java.sql.Blob>- Parameters:
one- One instanceanother- The other instance- Returns:
- True if the two are considered equal; false otherwise.
-
unwrap
public <X> X unwrap(java.sql.Blob value, java.lang.Class<X> type, WrapperOptions options)Description copied from interface:JavaTypeDescriptorUnwrap an instance of our handled Java type into the requested type. As an example, if this is aJavaTypeDescriptor<Integer>and we are asked to unwrap theInteger valueas aLongwe would return something likeLong.valueOf( value.longValue() ). Intended use is duringPreparedStatementbinding.- Type Parameters:
X- The conversion type.- Parameters:
value- The value to unwraptype- The type as which to unwrapoptions- The options- Returns:
- The unwrapped value.
-
wrap
public <X> java.sql.Blob wrap(X value, WrapperOptions options)Description copied from interface:JavaTypeDescriptorWrap a value as our handled Java type. Intended use is duringResultSetextraction.- Type Parameters:
X- The conversion type.- Parameters:
value- The value to wrap.options- The options- Returns:
- The wrapped value.
-
-