Package org.bson.codecs.pojo
Class ClassModel<T>
- java.lang.Object
-
- org.bson.codecs.pojo.ClassModel<T>
-
- Type Parameters:
T- The type of the class the ClassModel represents
public final class ClassModel<T> extends Object
This model represents the metadata for a class and all its properties.- Since:
- 3.5
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static <S> ClassModelBuilder<S>builder(Class<S> type)Creates a new Class Model builder instance using reflection.booleanequals(Object o)StringgetDiscriminator()Returns the discriminator key.StringgetDiscriminatorKey()Gets the value for the discriminator.PropertyModel<?>getIdPropertyModel()Returns thePropertyModelmapped as the id property for this ClassModelStringgetName()Returns the name of the class represented by this ClassModelPropertyModel<?>getPropertyModel(String propertyName)Gets aPropertyModelby the property name.List<PropertyModel<?>>getPropertyModels()Returns all the properties on this modelClass<T>getType()inthashCode()booleanhasTypeParameters()StringtoString()booleanuseDiscriminator()
-
-
-
Method Detail
-
builder
public static <S> ClassModelBuilder<S> builder(Class<S> type)
Creates a new Class Model builder instance using reflection.- Type Parameters:
S- the type of the class- Parameters:
type- the POJO class to reflect and configure the builder with.- Returns:
- a new Class Model builder instance using reflection on the
clazz.
-
hasTypeParameters
public boolean hasTypeParameters()
- Returns:
- true if the underlying type has type parameters.
-
useDiscriminator
public boolean useDiscriminator()
- Returns:
- true if a discriminator should be used when storing the data.
-
getDiscriminatorKey
public String getDiscriminatorKey()
Gets the value for the discriminator.- Returns:
- the discriminator value or null if not set
-
getDiscriminator
public String getDiscriminator()
Returns the discriminator key.- Returns:
- the discriminator key or null if not set
-
getPropertyModel
public PropertyModel<?> getPropertyModel(String propertyName)
Gets aPropertyModelby the property name.- Parameters:
propertyName- the PropertyModel's property name- Returns:
- the PropertyModel or null if the property is not found
-
getPropertyModels
public List<PropertyModel<?>> getPropertyModels()
Returns all the properties on this model- Returns:
- the list of properties
-
getIdPropertyModel
public PropertyModel<?> getIdPropertyModel()
Returns thePropertyModelmapped as the id property for this ClassModel- Returns:
- the PropertyModel for the id
-
getName
public String getName()
Returns the name of the class represented by this ClassModel- Returns:
- the name
-
-