Package org.eclipse.persistence.pgsql
Class PostgreSQL10JsonPlatform
java.lang.Object
org.eclipse.persistence.json.JsonPlatform
org.eclipse.persistence.pgsql.PostgreSQL10JsonPlatform
- All Implemented Interfaces:
DatabaseJsonPlatform,PostgreSQL10Platform.PostgreSQL10JsonExtension
public class PostgreSQL10JsonPlatform
extends JsonPlatform
implements PostgreSQL10Platform.PostgreSQL10JsonExtension
PostgreSQL 10 JSON database platform.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription<T> TconvertJsonValueToDataValue(JsonValue jsonValue) INTERNAL: Convert JSON value field to JDBC statement type.<T> TgetJsonDataFromResultSet(ResultSet resultSet, int columnNumber, Class<T> type) Retrieve JSON data from JDBCResultSet.booleanisPgObjectInstance(Object parameter) Check whether provided instance is an instance ofPGobject.voidupdateClassTypes(Map<String, Class<?>> classTypeMapping) Update the mapping of Postgres 10 database types to class types for the schema framework.voidupdateFieldTypes(Hashtable<Class<?>, FieldTypeDefinition> fieldTypeMapping) Update the mapping of JSON class types to Postgres 10 database types for the schema framework.Methods inherited from class org.eclipse.persistence.json.JsonPlatform
convertDataValueToJsonValue, isJsonTypeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.eclipse.persistence.internal.databaseaccess.DatabaseJsonPlatform
customParameterMarker, unwrap
-
Constructor Details
-
PostgreSQL10JsonPlatform
public PostgreSQL10JsonPlatform()
-
-
Method Details
-
updateClassTypes
Update the mapping of Postgres 10 database types to class types for the schema framework.- Specified by:
updateClassTypesin interfaceDatabaseJsonPlatform- Parameters:
classTypeMapping-Mapwith mappings to be updated.
-
updateFieldTypes
Update the mapping of JSON class types to Postgres 10 database types for the schema framework.- Specified by:
updateFieldTypesin interfaceDatabaseJsonPlatform- Overrides:
updateFieldTypesin classJsonPlatform- Parameters:
fieldTypeMapping-Mapwith mappings to be updated.
-
convertJsonValueToDataValue
INTERNAL: Convert JSON value field to JDBC statement type. Postgres JSON storage type isJSONBand target Java type isPGobject.- Overrides:
convertJsonValueToDataValuein classJsonPlatform- Type Parameters:
T- classification type- Parameters:
jsonValue- source JSON value field- Returns:
- converted JDBC statement type
- Throws:
PersistenceException
-
getJsonDataFromResultSet
public <T> T getJsonDataFromResultSet(ResultSet resultSet, int columnNumber, Class<T> type) throws SQLException Retrieve JSON data from JDBCResultSet. JSON data retrieved from Postgres JDBCResultSetare returned asPGobjectinstance. It must be converted toStringfirst to be accepted by commonJsonTypeConverter.- Specified by:
getJsonDataFromResultSetin interfaceDatabaseJsonPlatform- Type Parameters:
T- target type to return- Parameters:
resultSet- source JDBCResultSetcolumnNumber- index of column in JDBCResultSettype- target class to return, this class will be used to cast returned value- Returns:
- JSON data from JDBC
ResultSetasStringto be parsed by commonJsonTypeConverter - Throws:
SQLException- if data could not be retrieved
-
isPgObjectInstance
Check whether provided instance is an instance ofPGobject.- Specified by:
isPgObjectInstancein interfacePostgreSQL10Platform.PostgreSQL10JsonExtension- Parameters:
parameter- an instance to check- Returns:
- value of
truewhen provided instance is an instance ofPGobjectorfalseotherwise
-