Package org.postgresql.jdbc
Class ArrayEncoding.TwoDimensionPrimitiveArrayEncoder<A>
- java.lang.Object
-
- org.postgresql.jdbc.ArrayEncoding.TwoDimensionPrimitiveArrayEncoder<A>
-
- All Implemented Interfaces:
ArrayEncoding.ArrayEncoder<A[]>
- Enclosing class:
- ArrayEncoding
private static final class ArrayEncoding.TwoDimensionPrimitiveArrayEncoder<A> extends java.lang.Object implements ArrayEncoding.ArrayEncoder<A[]>
Wraps anArrayEncoding.AbstractArrayEncoderimplementation and provides optimized support for 2 dimensions.
-
-
Field Summary
Fields Modifier and Type Field Description private ArrayEncoding.AbstractArrayEncoder<A>support
-
Constructor Summary
Constructors Constructor Description TwoDimensionPrimitiveArrayEncoder(ArrayEncoding.AbstractArrayEncoder<A> support)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetDefaultArrayTypeOid()The default array type oid supported by this instance.booleansupportBinaryRepresentation(int oid)Indicates if an array can be encoded in binary form to array oid.java.lang.StringtoArrayString(char delim, A[] array)CreatesStringrepresentation of the array.byte[]toBinaryRepresentation(BaseConnection connection, A[] array, int oid)Creates binary representation of the array.
-
-
-
Field Detail
-
support
private final ArrayEncoding.AbstractArrayEncoder<A> support
-
-
Constructor Detail
-
TwoDimensionPrimitiveArrayEncoder
TwoDimensionPrimitiveArrayEncoder(ArrayEncoding.AbstractArrayEncoder<A> support)
- Parameters:
support- The instance providing support for the base array type.
-
-
Method Detail
-
getDefaultArrayTypeOid
public int getDefaultArrayTypeOid()
The default array type oid supported by this instance.- Specified by:
getDefaultArrayTypeOidin interfaceArrayEncoding.ArrayEncoder<A>- Returns:
- The default array type oid supported by this instance.
-
toArrayString
public java.lang.String toArrayString(char delim, A[] array)CreatesStringrepresentation of the array.- Specified by:
toArrayStringin interfaceArrayEncoding.ArrayEncoder<A>- Parameters:
delim- The character to use to delimit between elements.array- The array to represent as aString.- Returns:
Stringrepresentation of the array.
-
supportBinaryRepresentation
public boolean supportBinaryRepresentation(int oid)
Indicates if an array can be encoded in binary form to array oid.- Specified by:
supportBinaryRepresentationin interfaceArrayEncoding.ArrayEncoder<A>- Parameters:
oid- The array oid to see check for binary support.- Returns:
- Indication of whether
ArrayEncoding.ArrayEncoder.toBinaryRepresentation(BaseConnection, Object, int)is supported for oid.
-
toBinaryRepresentation
public byte[] toBinaryRepresentation(BaseConnection connection, A[] array, int oid) throws java.sql.SQLException, java.sql.SQLFeatureNotSupportedException
Creates binary representation of the array. 4 bytes - dimension 4 bytes - oid 4 bytes - ? 8*d bytes - dimension length- Specified by:
toBinaryRepresentationin interfaceArrayEncoding.ArrayEncoder<A>- Parameters:
connection- The connection the binary representation will be used on. Attributes from the connection might impact how values are translated to binary.array- The array to binary encode. Must not benull, but may containnullelements.oid- The array type oid to use. Calls toArrayEncoding.ArrayEncoder.supportBinaryRepresentation(int)must have returnedtrue.- Returns:
- The binary representation of array.
- Throws:
java.sql.SQLFeatureNotSupportedException- IfArrayEncoding.ArrayEncoder.supportBinaryRepresentation(int)is false for oid.java.sql.SQLException
-
-