Package org.javers.core.metamodel.type
Class OptionalType
- java.lang.Object
-
- org.javers.core.metamodel.type.JaversType
-
- org.javers.core.metamodel.type.EnumerableType
-
- org.javers.core.metamodel.type.ContainerType
-
- org.javers.core.metamodel.type.CollectionType
-
- org.javers.core.metamodel.type.OptionalType
-
public class OptionalType extends CollectionType
-
-
Field Summary
-
Fields inherited from class org.javers.core.metamodel.type.JaversType
DEFAULT_TYPE_PARAMETER
-
-
Constructor Summary
Constructors Constructor Description OptionalType()
OptionalType(java.lang.reflect.Type baseJavaType)
for TypeFactory.spawnFromPrototype()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
canBePrototype()
java.lang.Object
empty()
java.lang.Class
getBaseJavaClass()
protected java.lang.reflect.Type
getRawDehydratedType()
Type for JSON representation.boolean
isEmpty(java.lang.Object optional)
boolean
isInstance(java.lang.Object cdo)
protected java.util.stream.Stream<java.lang.Object>
items(java.lang.Object source)
java.lang.Object
map(java.lang.Object sourceOptional_, java.util.function.Function mapFunction)
Returns a new Enumerable (unmodifiable when possible) with items from sourceEnumerable mapped by mapFunction.java.lang.Object
map(java.lang.Object sourceOptional_, EnumerableFunction mapFunction, OwnerContext owner)
OwnerContext aware version ofEnumerableType.map(Object, EnumerableFunction, OwnerContext)
-
Methods inherited from class org.javers.core.metamodel.type.CollectionType
map, mapToList, mapToSet, wrapNull
-
Methods inherited from class org.javers.core.metamodel.type.ContainerType
getItemClass, getItemType
-
Methods inherited from class org.javers.core.metamodel.type.EnumerableType
filterToList
-
Methods inherited from class org.javers.core.metamodel.type.JaversType
equals, equals, getBaseJavaType, getConcreteClassTypeArguments, getName, hashCode, isGenericType, prettyPrint, prettyPrintBuilder, toString
-
-
-
-
Method Detail
-
map
public java.lang.Object map(java.lang.Object sourceOptional_, EnumerableFunction mapFunction, OwnerContext owner)
Description copied from class:EnumerableType
OwnerContext aware version ofEnumerableType.map(Object, EnumerableFunction, OwnerContext)
- Overrides:
map
in classCollectionType
- Returns:
- immutable List
-
map
public java.lang.Object map(java.lang.Object sourceOptional_, java.util.function.Function mapFunction)
Description copied from class:EnumerableType
Returns a new Enumerable (unmodifiable when possible) with items from sourceEnumerable mapped by mapFunction.- Overrides:
map
in classEnumerableType
-
items
protected java.util.stream.Stream<java.lang.Object> items(java.lang.Object source)
- Overrides:
items
in classCollectionType
-
isEmpty
public boolean isEmpty(java.lang.Object optional)
- Overrides:
isEmpty
in classCollectionType
-
empty
public java.lang.Object empty()
- Overrides:
empty
in classCollectionType
-
canBePrototype
public boolean canBePrototype()
- Specified by:
canBePrototype
in classJaversType
-
isInstance
public boolean isInstance(java.lang.Object cdo)
- Specified by:
isInstance
in classJaversType
-
getRawDehydratedType
protected java.lang.reflect.Type getRawDehydratedType()
Type for JSON representation. For Values it's simply baseJavaType. For ManagedTypes (references to Entities and ValueObjects) it's GlobalId because JaVers serializes references in the 'dehydrated' form.
-
getBaseJavaClass
public java.lang.Class getBaseJavaClass()
-
-