Top Description Fields Constructors Methods
org.eclipse.persistence.internal.databaseaccess

public Class JsonPlatformManager

extends Object
Class Inheritance
Imports
java.lang.reflect.InvocationTargetException, java.util.Collections, .HashMap, .Map, .ServiceLoader, java.util.function.Supplier, org.eclipse.persistence.internal.databaseaccess.spi.JsonPlatformProvider, org.eclipse.persistence.logging.AbstractSessionLog, .SessionLog

Java service manager and service loader for DatabaseJsonPlatform interface.

Field Summary

Modifier and TypeField and Description
private final Map<Class<? extends DatabasePlatform>, Supplier<DatabaseJsonPlatform>>

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
private static void
addProvider(final Map<Class<? extends DatabasePlatform>, Supplier<DatabaseJsonPlatform>> fallbackMap, final String className)

public DatabaseJsonPlatform

Returns:

JSON extension instance mapped to provided database platform
createPlatform
(final Class<? extends DatabasePlatform>
database platform used to search for JSON extension
type
)

Creates DatabaseJsonPlatform implementation instance registered for provided database platform.

public static JsonPlatformManager

Returns:

DatabaseJsonPlatform implementations manager instance
getInstance
()

Get DatabaseJsonPlatform implementations manager instance.

private static Class<JsonPlatformProvider>
getProvider(final String className)

private static Map<Class<? extends DatabasePlatform>, Supplier<DatabaseJsonPlatform>>
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

platformsback to summary
private final Map<Class<? extends DatabasePlatform>, Supplier<DatabaseJsonPlatform>> platforms

Constructor Detail

JsonPlatformManagerback to summary
private JsonPlatformManager()

Method Detail

addProviderback to summary
private static void addProvider(final Map<Class<? extends DatabasePlatform>, Supplier<DatabaseJsonPlatform>> fallbackMap, final String className)
createPlatformback to summary
public DatabaseJsonPlatform createPlatform(final Class<? extends DatabasePlatform> type)

Creates DatabaseJsonPlatform implementation instance registered for provided database platform. Returned instance is specific platform dependent implementation is registered via SPI. Default JSON extension will be returned when specific platform implementation is missing. Empty platform with JSON support disabled is returned when no JSON support is available.

Parameters
type:Class<? extends DatabasePlatform>

database platform used to search for JSON extension

Returns:DatabaseJsonPlatform

JSON extension instance mapped to provided database platform

getInstanceback to summary
public static JsonPlatformManager getInstance()

Get DatabaseJsonPlatform implementations manager instance.

Returns:JsonPlatformManager

DatabaseJsonPlatform implementations manager instance

getProviderback to summary
private static Class<JsonPlatformProvider> getProvider(final String className)
Annotations
@SuppressWarnings:unchecked
initDirectMapback to summary
private static Map<Class<? extends DatabasePlatform>, Supplier<DatabaseJsonPlatform>> initDirectMap()