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 ofPropertyFactoryforObjectProperty.- 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()booleanisPolymorphic()
-
-
-
Method Detail
-
getValueClass
public Class<? extends Id<E>> getValueClass()
- Returns:
- the
Classof theproperty value. May benullfor a generic property.
-
getReadableInterface
public Class<? extends ReadableProperty<Id<E>>> getReadableInterface()
- Returns:
- the
Classreflecting theReadablePropertyinterface. May benullif no dedicated readable interface exists.
-
getWritableInterface
public Class<? extends WritableProperty<Id<E>>> getWritableInterface()
- Returns:
- the
Classreflecting theWritablePropertyinterface. May benullif no dedicated writable interface exists.
-
getImplementationClass
public Class<IdProperty<E>> getImplementationClass()
- Returns:
- the
Classreflecting theWritablePropertyimplementation.
-
create
public IdProperty<E> create(String name, Class<? extends Id<E>> valueClass, PropertyMetadata<Id<E>> metadata)
Description copied from interface:PropertyFactoryCreates 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:
trueifvalue classis polymorphic and also sub-types are handled by thisPropertyFactory(unless there is a more specificPropertyFactoryavailable),falseotherwise.
-
-