Class AbstractOracleTypeConvertersFactory
java.lang.Object
io.micronaut.data.model.runtime.convert.vector.impl.AbstractOracleTypeConvertersFactory
Shared helpers for Oracle VECTOR converters.
This class intentionally avoids any dependency on Oracle driver or Micronaut runtime types.
Methods are protected static so vendor-specific factories can reuse them.
This type is intentionally non-sealed because concrete Oracle converter factories live in
JDBC and R2DBC modules.
- Since:
- 5.0.0
- Author:
- Nemanja Mikic
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceCreates native vectors from array values.static interfaceCreates sparse native vectors from array values.static interfaceAdapter API that concrete factories use to map oracle.sql.VECTOR to a neutral shape.static final classFactory API for creating driver-native Oracle VECTOR values.static enumNeutral adapter for Oracle VECTOR to avoid driver dependencies in shared helpers. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected static <T> DataTypeConverter<T, ByteVector> oracleVectorToByteVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR toByteVector.protected static <T> DataTypeConverter<T, DoubleVector> oracleVectorToDoubleVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR toDoubleVector.protected static <T> DataTypeConverter<T, FloatVector> oracleVectorToFloatVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR toFloatVector.protected static <T> DataTypeConverter<T, SparseByteVector> oracleVectorToSparseByteVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR toSparseByteVector.protected static <T> DataTypeConverter<T, SparseDoubleVector> oracleVectorToSparseDoubleVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR toSparseDoubleVector.protected static <T> DataTypeConverter<T, SparseFloatVector> oracleVectorToSparseFloatVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR toSparseFloatVector.protected static <T> DataTypeConverter<T, Vector> oracleVectorToVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR to neutralVector.protected static byte[]toByte(double[] d) Converts double array to byte array.protected static byte[]toByte(float[] f) Converts float array to byte array.protected static double[]toDouble(byte[] b) Converts byte array to double array.protected static double[]toDouble(float[] f) Converts float array to double array.protected static float[]toFloat(byte[] b) Converts byte array to float array.protected static float[]toFloat(double[] d) Converts double array to float array.protected static VectorConverts adapter payload to neutralVector.protected static Optional<byte[]> Converts adapter payload tobyte[].protected static Optional<double[]> Converts adapter payload todouble[].protected static Optional<float[]> Converts adapter payload tofloat[].protected static <T> Optional<T> vectorToOracleVector(Vector vector, AbstractOracleTypeConvertersFactory.OracleVectorFactory<T> factory) Converts a Micronaut vector to the driver-native Oracle VECTOR representation.
-
Constructor Details
-
AbstractOracleTypeConvertersFactory
public AbstractOracleTypeConvertersFactory()
-
-
Method Details
-
vectorToDoubleArray
protected static Optional<double[]> vectorToDoubleArray(AbstractOracleTypeConvertersFactory.OracleVectorAdapter adapter) Converts adapter payload todouble[].- Parameters:
adapter- oracle vector adapter- Returns:
- converted array when supported by kind
-
vectorToFloatArray
protected static Optional<float[]> vectorToFloatArray(AbstractOracleTypeConvertersFactory.OracleVectorAdapter adapter) Converts adapter payload tofloat[].- Parameters:
adapter- oracle vector adapter- Returns:
- converted array when supported by kind
-
vectorToByteArray
protected static Optional<byte[]> vectorToByteArray(AbstractOracleTypeConvertersFactory.OracleVectorAdapter adapter) Converts adapter payload tobyte[].- Parameters:
adapter- oracle vector adapter- Returns:
- converted array when supported by kind
-
toVector
Converts adapter payload to neutralVector.- Parameters:
adapter- oracle vector adapter- Returns:
- neutral vector representation
-
oracleVectorToVectorConverter
protected static <T> DataTypeConverter<T,Vector> oracleVectorToVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR to neutralVector.- Type Parameters:
T- Oracle VECTOR type- Parameters:
adapterFactory- adapter factory- Returns:
- converter
-
oracleVectorToDoubleVectorConverter
protected static <T> DataTypeConverter<T, DoubleVector> oracleVectorToDoubleVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR toDoubleVector.- Type Parameters:
T- Oracle VECTOR type- Parameters:
adapterFactory- adapter factory- Returns:
- converter
-
oracleVectorToFloatVectorConverter
protected static <T> DataTypeConverter<T, FloatVector> oracleVectorToFloatVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR toFloatVector.- Type Parameters:
T- Oracle VECTOR type- Parameters:
adapterFactory- adapter factory- Returns:
- converter
-
oracleVectorToByteVectorConverter
protected static <T> DataTypeConverter<T, ByteVector> oracleVectorToByteVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR toByteVector.- Type Parameters:
T- Oracle VECTOR type- Parameters:
adapterFactory- adapter factory- Returns:
- converter
-
oracleVectorToSparseDoubleVectorConverter
protected static <T> DataTypeConverter<T, SparseDoubleVector> oracleVectorToSparseDoubleVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR toSparseDoubleVector.- Type Parameters:
T- Oracle VECTOR type- Parameters:
adapterFactory- adapter factory- Returns:
- converter
-
oracleVectorToSparseFloatVectorConverter
protected static <T> DataTypeConverter<T, SparseFloatVector> oracleVectorToSparseFloatVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR toSparseFloatVector.- Type Parameters:
T- Oracle VECTOR type- Parameters:
adapterFactory- adapter factory- Returns:
- converter
-
oracleVectorToSparseByteVectorConverter
protected static <T> DataTypeConverter<T, SparseByteVector> oracleVectorToSparseByteVectorConverter(Function<T, AbstractOracleTypeConvertersFactory.OracleVectorAdapter> adapterFactory) Creates a converter from Oracle VECTOR toSparseByteVector.- Type Parameters:
T- Oracle VECTOR type- Parameters:
adapterFactory- adapter factory- Returns:
- converter
-
vectorToOracleVector
protected static <T> Optional<T> vectorToOracleVector(Vector vector, AbstractOracleTypeConvertersFactory.OracleVectorFactory<T> factory) Converts a Micronaut vector to the driver-native Oracle VECTOR representation.- Type Parameters:
T- Oracle VECTOR type- Parameters:
vector- Micronaut vectorfactory- native vector factory- Returns:
- native vector
-
toDouble
protected static double[] toDouble(float[] f) Converts float array to double array.- Parameters:
f- source array- Returns:
- converted array
-
toDouble
protected static double[] toDouble(byte[] b) Converts byte array to double array.- Parameters:
b- source array- Returns:
- converted array
-
toFloat
protected static float[] toFloat(double[] d) Converts double array to float array.- Parameters:
d- source array- Returns:
- converted array
-
toFloat
protected static float[] toFloat(byte[] b) Converts byte array to float array.- Parameters:
b- source array- Returns:
- converted array
-
toByte
protected static byte[] toByte(float[] f) Converts float array to byte array.- Parameters:
f- source array- Returns:
- converted array
-
toByte
protected static byte[] toByte(double[] d) Converts double array to byte array.- Parameters:
d- source array- Returns:
- converted array
-