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()
java.lang.Class<?>
getEnumerableInterface()
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
-
getEnumerableInterface
public java.lang.Class<?> getEnumerableInterface()
- Overrides:
getEnumerableInterface
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()
-
-