Class PrismContainerImpl<C extends Containerable>

All Implemented Interfaces:
Freezable, Item<PrismContainerValue<C>,PrismContainerDefinition<C>>, Itemable, ItemDefinitionTransformer.TransformableItem, ParentVisitable, PathVisitable, PrismContainer<C>, PrismContainerable<C>, PrismContextSensitive, Revivable, Visitable, DebugDumpable, Serializable
Direct Known Subclasses:
PrismObjectImpl, ResourceAttributeContainerImpl

public class PrismContainerImpl<C extends Containerable> extends ItemImpl<PrismContainerValue<C>,PrismContainerDefinition<C>> implements PrismContainer<C>

Property container groups properties into logical blocks.The reason for grouping may be as simple as better understandability of data structure. But the group usually means different meaning, source or structure of the data. For example, the property container is frequently used to hold properties that are dynamic, not fixed by a static schema. Such grouping also naturally translates to XML and helps to "quarantine" such properties to avoid Unique Particle Attribute problems.

Property Container contains a set of (potentially multi-valued) properties or inner property containers. The order of properties is not significant, regardless of the fact that it may be fixed in the XML representation. In the XML representation, each element inside Property Container must be either Property or a Property Container.

Property Container is mutable.

Author:
Radovan Semancik
See Also: