Class ItemDefinitionImpl<I extends Item>

  • All Implemented Interfaces:
    Definition, ItemDefinition<I>, MutableDefinition, MutableItemDefinition<I>, Revivable, Visitable, DebugDumpable, Serializable, Cloneable
    Direct Known Subclasses:
    PrismContainerDefinitionImpl, PrismPropertyDefinitionImpl, PrismReferenceDefinitionImpl

    public abstract class ItemDefinitionImpl<I extends Item>
    extends DefinitionImpl
    implements MutableItemDefinition<I>
    Abstract item definition in the schema. This is supposed to be a superclass for all item definitions. Items are things that can appear in property containers, which generally means only a property and property container itself. Therefore this is in fact superclass for those two definitions. The definitions represent data structures of the schema. Therefore instances of Java objects from this class represent specific definitions from the schema, not specific properties or objects. E.g the definitions does not have any value. To transform definition to a real property or object use the explicit instantiate() methods provided in the definition classes. E.g. the instantiate() method will create instance of Property using appropriate PropertyDefinition. The convenience methods in Schema are using this abstract class to find appropriate definitions easily.
    Radovan Semancik
    See Also:
    Serialized Form