Class MapEntityContext<T>
- java.lang.Object
-
- org.keycloak.models.map.storage.file.common.MapEntityContext<T>
-
- All Implemented Interfaces:
BlockContext<T>
public class MapEntityContext<T> extends Object implements BlockContext<T>
BlockContextwhich handles any entity accompanied withEntityFieldfield getters and setters, namelyMap*Entityclasses.- Author:
- hmlnarik
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classMapEntityContext.MapEntityMappingYamlContext<T>static classMapEntityContext.MapEntitySequenceYamlContext<T>-
Nested classes/interfaces inherited from interface org.keycloak.models.map.storage.file.common.BlockContext
BlockContext.DefaultListContext<T>, BlockContext.DefaultMapContext<T>, BlockContext.DefaultObjectContext<T>
-
-
Field Summary
Fields Modifier and Type Field Description protected static StringATTRIBUTES_NAMEprotected Class<T>objectClassprotected Tresultstatic StringSCHEMA_VERSION
-
Constructor Summary
Constructors Modifier Constructor Description MapEntityContext(Class<T> clazz)MapEntityContext(Class<T> clazz, boolean topContext)protectedMapEntityContext(Class<T> clazz, Map<String,EntityField<?>> nameToEntityField, Map<String,Supplier<? extends BlockContext<?>>> contextCreators, boolean topContext)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(String name, Object value)Modifies theresult returnedfrom within this context by providing the read mapping entrynameto givenvalue.protected static <T> Map<String,Supplier<? extends BlockContext<?>>>fieldsToContextCreators(Class<T> type)static <T> Map<String,EntityField<?>>fieldsToEntityField(Class<T> type)BlockContext<?>getContext(String nameOfSubcontext)Called after reading a key of map entry in YAML file and before reading its value.TgetResult()Returns the result of parsing the given part of YAML file.Class<T>getScalarType()static <T> booleansetEntityField(T result, EntityField<? super T> ef, Object value)voidwriteValue(T entity, WritingMechanism mech)Writes the given value usingWritingMechanism.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.keycloak.models.map.storage.file.common.BlockContext
add
-
-
-
-
Constructor Detail
-
MapEntityContext
protected MapEntityContext(Class<T> clazz, Map<String,EntityField<?>> nameToEntityField, Map<String,Supplier<? extends BlockContext<?>>> contextCreators, boolean topContext)
-
-
Method Detail
-
fieldsToContextCreators
protected static <T> Map<String,Supplier<? extends BlockContext<?>>> fieldsToContextCreators(Class<T> type)
-
fieldsToEntityField
public static <T> Map<String,EntityField<?>> fieldsToEntityField(Class<T> type)
-
setEntityField
public static <T> boolean setEntityField(T result, EntityField<? super T> ef, Object value)
-
add
public void add(String name, Object value)
Description copied from interface:BlockContextModifies theresult returnedfrom within this context by providing the read mapping entrynameto givenvalue.Called after reading a map entry (both key and value) from the YAML file is finished. The entry is represented as
nameparameter (key part of the entry) andvalue(value part of the entry).The method is called in the same order as the mapping items appear in the source YAML mapping.
- Specified by:
addin interfaceBlockContext<T>
-
getScalarType
public Class<T> getScalarType()
- Specified by:
getScalarTypein interfaceBlockContext<T>
-
getResult
public T getResult()
Description copied from interface:BlockContextReturns the result of parsing the given part of YAML file.- Specified by:
getResultin interfaceBlockContext<T>- Returns:
-
getContext
public BlockContext<?> getContext(String nameOfSubcontext)
Description copied from interface:BlockContextCalled after reading a key of map entry in YAML file and before reading its value. The key of the entry is represented asnameOfSubcontextparameter, and provides means to specify aYamlContextfor transforming the mapping value into appropriate Java object.- Specified by:
getContextin interfaceBlockContext<T>- Parameters:
nameOfSubcontext- Key of the map entry- Returns:
- Context used for transforming the value,
or
nullif the default primitive / sequence / mapping context should be used instead. - See Also:
BlockContext.DefaultObjectContext,BlockContext.DefaultListContext,BlockContext.DefaultMapContext
-
writeValue
public void writeValue(T entity, WritingMechanism mech)
Description copied from interface:BlockContextWrites the given value usingWritingMechanism.- Specified by:
writeValuein interfaceBlockContext<T>
-
-