Class PDTRegistry
java.lang.Object
org.apache.tinkerpop.gremlin.structure.io.pdt.PDTRegistry
Registry for
ProviderDefinedTypeAdapter instances that supports hydration of
CompositePDT values into typed objects.-
Method Summary
Modifier and TypeMethodDescriptionstatic PDTRegistrycreate()Creates a registry populated viaServiceLoaderdiscovery.static PDTRegistryempty()Creates an empty registry for manual registration.getCompositeAdapterByClass(Class<?> clazz) getPrimitiveAdapterByClass(Class<?> clazz) hydrate(CompositePDT pdt) Attempts to hydrate aCompositePDTinto a typed object using a registered adapter.Attempts to hydrate aPrimitivePDTinto a typed object using a registeredPrimitivePDTAdapter.voidRegisters one or more classes annotated withProviderDefinedfor automatic round-trip hydration.voidregister(ProviderDefinedTypeAdapter<?> adapter) Registers an adapter.
-
Method Details
-
create
Creates a registry populated viaServiceLoaderdiscovery. -
empty
Creates an empty registry for manual registration. -
register
Registers an adapter. Composite adapters (CompositePDTAdapter) are stored in composite maps; primitive adapters (PrimitivePDTAdapter) are stored in primitive maps.- Throws:
IllegalArgumentException- if the adapter's target class is already registered under the other kind
-
register
Registers one or more classes annotated withProviderDefinedfor automatic round-trip hydration. An adapter is synthesized from the annotation metadata using reflection.- Throws:
IllegalArgumentException- if any class is not annotated withProviderDefined
-
getCompositeAdapterByName
-
getCompositeAdapterByClass
-
getPrimitiveAdapterByName
-
getPrimitiveAdapterByClass
-
hydrate
Attempts to hydrate aCompositePDTinto a typed object using a registered adapter. Recursively hydrates nested PDT values in the fields map (including those inside Lists, Sets, and Maps) regardless of whether the outer type itself has a registered adapter — so a registered inner type is hydrated even when nested inside an unregistered outer PDT. Returns the original PDT (with nested values hydrated) if no adapter is found for the outer type, or if the adapter throws an exception. -
hydratePrimitive
Attempts to hydrate aPrimitivePDTinto a typed object using a registeredPrimitivePDTAdapter. Returns the original primitive PDT if no adapter is found or if the adapter throws an exception.
-