Package com.evolveum.midpoint.prism
Interface ItemFactory
- All Known Implementing Classes:
ItemFactoryImpl
public interface ItemFactory
Factory for items (property, reference, container, object) and item values.
Eliminates the need of calls like "new PrismPropertyValue(...)" in midPoint 3.x.
-
Method Summary
Modifier and TypeMethodDescription<C extends Containerable>
PrismContainer<C>createContainer
(QName name) <C extends Containerable>
PrismContainer<C>createContainer
(QName name, PrismContainerDefinition<C> definition) <C extends Containerable>
PrismContainerValue<C><C extends Containerable>
PrismContainerValue<C>createContainerValue
(C containerable) <V extends PrismValue,
D extends ItemDefinition<?>>
Item<V,D> createDummyItem
(Item<V, D> itemOld, D definition, ItemPath path) Creates a dummy container with a fixed path.<O extends Objectable>
PrismObject<O>createObject
(QName name, PrismObjectDefinition<O> definition) <O extends Objectable>
PrismObjectValue<O>createObjectValue
(O objectable) <T> PrismProperty<T>
createProperty
(QName itemName) <T> PrismProperty<T>
createProperty
(QName itemName, PrismPropertyDefinition<T> definition) <T> PrismPropertyValue<T>
<T> PrismPropertyValue<T>
createPropertyValue
(XNode rawContent) <T> PrismPropertyValue<T>
createPropertyValue
(T content) <T> PrismPropertyValue<T>
createPropertyValue
(T value, OriginType originType, Objectable originObject) default <T> Collection<PrismPropertyValue<T>>
createPropertyValues
(Collection<T> content) createReference
(QName name) createReference
(QName name, PrismReferenceDefinition definition) createReferenceValue
(PrismObject<?> target) createReferenceValue
(String targetOid) createReferenceValue
(String oid, OriginType originType, Objectable originObject) createReferenceValue
(String oid, QName targetType) default Collection<PrismReferenceValue>
createReferenceValues
(Collection<Referencable> content) createValue
(Object realValue)
-
Method Details
-
createValue
-
createProperty
-
createProperty
-
createPropertyValue
-
createPropertyValues
-
createPropertyValue
-
createPropertyValue
-
createPropertyValue
<T> PrismPropertyValue<T> createPropertyValue(T value, OriginType originType, Objectable originObject) -
createReference
-
createReference
-
createReferenceValue
PrismReferenceValue createReferenceValue() -
createReferenceValue
-
createReferenceValue
-
createReferenceValue
PrismReferenceValue createReferenceValue(String oid, OriginType originType, Objectable originObject) -
createReferenceValue
-
createReferenceValues
-
createContainer
-
createContainer
<C extends Containerable> PrismContainer<C> createContainer(QName name, PrismContainerDefinition<C> definition) -
createObject
-
createObjectValue
-
createContainerValue
-
createContainerValue
-
createDummyItem
@Experimental <V extends PrismValue,D extends ItemDefinition<?>> Item<V,D> createDummyItem(Item<V, D> itemOld, D definition, ItemPath path) throws SchemaExceptionCreates a dummy container with a fixed path. This container is good for storing values, e.g. in case of delta computations to get preview of the new item. But such container cannot be used to fit into any prism structure (cannot set parent).- Throws:
SchemaException
-