Package org.javers.core.metamodel.type
Class ArrayType
- 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.ArrayType
-
public class ArrayType extends ContainerType
-
-
Field Summary
-
Fields inherited from class org.javers.core.metamodel.type.JaversType
DEFAULT_TYPE_PARAMETER
-
-
Constructor Summary
Constructors Constructor Description ArrayType(java.lang.reflect.Type baseJavaType)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
canBePrototype()
java.lang.Object
empty()
boolean
equals(java.lang.Object left, java.lang.Object right)
Used for comparing as Valuesjava.lang.Class
getBaseJavaClass()
java.util.List<java.lang.reflect.Type>
getConcreteClassTypeArguments()
For generic types, returns a list of actual Class arguments.protected java.lang.reflect.Type
getRawDehydratedType()
Type for JSON representation.boolean
isEmpty(java.lang.Object array)
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 sourceArray, java.util.function.Function mapFunction, boolean filterNulls)
java.lang.Object
map(java.lang.Object sourceArray, EnumerableFunction mapFunction, OwnerContext owner)
OwnerContext aware version ofEnumerableType.map(Object, EnumerableFunction, OwnerContext)
-
Methods inherited from class org.javers.core.metamodel.type.ContainerType
getItemClass, getItemType
-
Methods inherited from class org.javers.core.metamodel.type.EnumerableType
filterToList, map
-
Methods inherited from class org.javers.core.metamodel.type.JaversType
equals, getBaseJavaType, getName, hashCode, isGenericType, prettyPrint, prettyPrintBuilder, toString
-
-
-
-
Method Detail
-
getConcreteClassTypeArguments
public java.util.List<java.lang.reflect.Type> getConcreteClassTypeArguments()
Description copied from class:JaversType
For generic types, returns a list of actual Class arguments. For example, for Set<String>, returns String. Non-concrete (like ?) or missing type arguments like are defaulted to Object.
For array, returns List withClass.getComponentType()
- Overrides:
getConcreteClassTypeArguments
in classJaversType
-
map
public java.lang.Object map(java.lang.Object sourceArray, EnumerableFunction mapFunction, OwnerContext owner)
Description copied from class:EnumerableType
OwnerContext aware version ofEnumerableType.map(Object, EnumerableFunction, OwnerContext)
- Specified by:
map
in classEnumerableType
- Returns:
- immutable Enumerable
-
isEmpty
public boolean isEmpty(java.lang.Object array)
- Specified by:
isEmpty
in classEnumerableType
-
map
public java.lang.Object map(java.lang.Object sourceArray, java.util.function.Function mapFunction, boolean filterNulls)
- Specified by:
map
in classEnumerableType
-
items
protected java.util.stream.Stream<java.lang.Object> items(java.lang.Object source)
- Specified by:
items
in classEnumerableType
-
equals
public boolean equals(java.lang.Object left, java.lang.Object right)
Description copied from class:JaversType
Used for comparing as Values- Overrides:
equals
in classJaversType
-
empty
public java.lang.Object empty()
- Specified by:
empty
in classEnumerableType
-
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()
-
-