Module io.github.mmm.entity.bean
Package io.github.mmm.entity.property.id
Class PropertyFactoryId<E>
- java.lang.Object
-
- io.github.mmm.property.factory.AbstractPropertyFactory<Id<E>,IdProperty<E>>
-
- io.github.mmm.entity.property.id.PropertyFactoryId<E>
-
- Type Parameters:
E
- the generic type of theentity
.
- All Implemented Interfaces:
PropertyFactory<Id<E>,IdProperty<E>>
public class PropertyFactoryId<E> extends AbstractPropertyFactory<Id<E>,IdProperty<E>>
This is the implementation ofPropertyFactory
forObjectProperty
.- Since:
- 1.0.0
-
-
Constructor Summary
Constructors Constructor Description PropertyFactoryId()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description IdProperty<E>
create(String name, Class<? extends Id<E>> valueClass, PropertyMetadata<Id<E>> metadata)
Creates a new instance of the property.Class<IdProperty<E>>
getImplementationClass()
Class<? extends ReadableProperty<Id<E>>>
getReadableInterface()
Class<? extends Id<E>>
getValueClass()
Class<? extends WritableProperty<Id<E>>>
getWritableInterface()
boolean
isPolymorphic()
-
-
-
Method Detail
-
getValueClass
public Class<? extends Id<E>> getValueClass()
- Returns:
- the
Class
of theproperty value
. May benull
for a generic property.
-
getReadableInterface
public Class<? extends ReadableProperty<Id<E>>> getReadableInterface()
- Returns:
- the
Class
reflecting theReadableProperty
interface. May benull
if no dedicated readable interface exists.
-
getWritableInterface
public Class<? extends WritableProperty<Id<E>>> getWritableInterface()
- Returns:
- the
Class
reflecting theWritableProperty
interface. May benull
if no dedicated writable interface exists.
-
getImplementationClass
public Class<IdProperty<E>> getImplementationClass()
- Returns:
- the
Class
reflecting theWritableProperty
implementation.
-
create
public IdProperty<E> create(String name, Class<? extends Id<E>> valueClass, PropertyMetadata<Id<E>> metadata)
Description copied from interface:PropertyFactory
Creates a new instance of the property.- Parameters:
name
- theproperty name
.valueClass
- thevalue class
.metadata
- TODO- Returns:
- the new instance of the property.
-
isPolymorphic
public boolean isPolymorphic()
- Returns:
true
ifvalue class
is polymorphic and also sub-types are handled by thisPropertyFactory
(unless there is a more specificPropertyFactory
available),false
otherwise.
-
-