public class PrismPropertyDefinitionImpl<T> extends ItemDefinitionImpl<PrismProperty<T>> implements PrismPropertyDefinition<T>
Property is a basic unit of information in midPoint. This class provides definition of property type, multiplicity and so on.
Property is a specific characteristic of an object. It may be considered object "attribute" or "field". For example User has fullName property that contains string value of user's full name.
Properties may be single-valued or multi-valued
Properties may contain primitive types or complex types (defined by XSD schema)
Property values are unordered, implementation may change the order of values
Duplicate values of properties should be silently removed by implementations, but clients must be able tolerate presence of duplicate values.
Operations that modify the objects work with the granularity of properties. They add/remove/replace the values of properties, but do not "see" inside the property.
This class represents schema definition for property. See Definition
for more details.
heterogeneousListItem, name, substitutionHead
deprecated, deprecatedSince, displayName, displayOrder, documentation, elaborate, emphasized, experimental, help, isAbstract, isRuntimeSchema, plannedRemoval, prismContext, processing, typeName
INDENT_STRING
Constructor and Description |
---|
PrismPropertyDefinitionImpl(QName elementName,
QName typeName,
PrismContext prismContext) |
PrismPropertyDefinitionImpl(QName elementName,
QName typeName,
PrismContext prismContext,
Collection<? extends DisplayableValue<T>> allowedValues,
T defaultValue) |
Modifier and Type | Method and Description |
---|---|
boolean |
canBeDefinitionOf(PrismValue pvalue) |
PrismPropertyDefinition<T> |
clone() |
protected void |
copyDefinitionData(PrismPropertyDefinitionImpl<T> clone) |
PropertyDelta<T> |
createEmptyDelta(ItemPath path) |
T |
defaultValue() |
boolean |
equals(Object obj) |
protected void |
extendToString(StringBuilder sb) |
Collection<? extends DisplayableValue<T>> |
getAllowedValues()
Returns allowed values for this property.
|
protected String |
getDebugDumpClassName()
Return a human readable name of this class suitable for logs.
|
String |
getDocClassName()
Returns human-readable name of this class suitable for documentation.
|
QName |
getMatchingRuleQName()
Returns matching rule name.
|
QName |
getValueType()
Returns QName of the property value type.
|
int |
hashCode() |
PrismProperty<T> |
instantiate()
Create an item instance.
|
PrismProperty<T> |
instantiate(QName name)
Create an item instance.
|
Boolean |
isIndexed()
This is XSD annotation that specifies whether a property should
be indexed in the storage.
|
void |
setIndexed(Boolean indexed) |
void |
setMatchingRuleQName(QName matchingRuleQName) |
accept, addNamespaceIfApplicable, adoptElementDefinitionFrom, canAdd, canBeDefinitionOf, canModify, canRead, copyDefinitionData, debugDumpShortToString, debugFlags, debugMultiplicity, deepClone, deepClone, findItemDefinition, getMaxOccurs, getMinOccurs, getName, getNamespace, getSubstitutionHead, getValueEnumerationRef, isDynamic, isHeterogeneousListItem, isInherited, isMandatory, isMultiValue, isOperational, isOptional, isSingleValue, isValidFor, isValidFor, revive, setCanAdd, setCanModify, setCanRead, setDynamic, setHeterogeneousListItem, setInherited, setMaxOccurs, setMinOccurs, setName, setOperational, setReadOnly, setSubstitutionHead, setValueEnumerationRef, toString
copyDefinitionData, debugDump, getAnnotation, getDeprecatedSince, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getPlannedRemoval, getPrismContext, getProcessing, getTypeClass, getTypeClassIfKnown, getTypeName, isAbstract, isDeprecated, isElaborate, isEmphasized, isExperimental, isIgnored, isRuntimeSchema, setAbstract, setAnnotation, setDeprecated, setDeprecatedSince, setDisplayName, setDisplayOrder, setDocumentation, setElaborate, setEmphasized, setExperimental, setHelp, setPlannedRemoval, setProcessing, setRuntimeSchema, setTypeName
finalize, getClass, notify, notifyAll, wait, wait, wait
getTypeClass, isAnyType
adoptElementDefinitionFrom, canAdd, canBeDefinitionOf, canModify, canRead, debugDumpShortToString, deepClone, deepClone, findItemDefinition, getMaxOccurs, getMinOccurs, getName, getNamespace, getSubstitutionHead, getValueEnumerationRef, isDynamic, isHeterogeneousListItem, isInherited, isMandatory, isMultiValue, isOperational, isOptional, isSingleValue, isValidFor, isValidFor, revive, setCanAdd, setCanModify, setCanRead, setMaxOccurs
debugDump, getAnnotation, getDeprecatedSince, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getPlannedRemoval, getPrismContext, getProcessing, getSchemaRegistry, getTypeClassIfKnown, getTypeName, isAbstract, isDeprecated, isElaborate, isEmphasized, isExperimental, isIgnored, isRuntimeSchema, setAnnotation
debugDump, debugDump, debugDumpLazily, debugDumpLazily
public PrismPropertyDefinitionImpl(QName elementName, QName typeName, PrismContext prismContext)
public PrismPropertyDefinitionImpl(QName elementName, QName typeName, PrismContext prismContext, Collection<? extends DisplayableValue<T>> allowedValues, T defaultValue)
public Collection<? extends DisplayableValue<T>> getAllowedValues()
getAllowedValues
in interface PrismPropertyDefinition<T>
public T defaultValue()
defaultValue
in interface PrismPropertyDefinition<T>
public QName getValueType()
PrismPropertyDefinition
The returned type is either XSD simple type or complex type. It may not be defined in the same schema (especially if it is standard XSD simple type).
getValueType
in interface PrismPropertyDefinition<T>
public Boolean isIndexed()
isIndexed
in interface PrismPropertyDefinition<T>
public void setIndexed(Boolean indexed)
public QName getMatchingRuleQName()
getMatchingRuleQName
in interface PrismPropertyDefinition<T>
public void setMatchingRuleQName(QName matchingRuleQName)
@NotNull public PrismProperty<T> instantiate()
ItemDefinition
instantiate
in interface ItemDefinition<PrismProperty<T>>
instantiate
in interface PrismPropertyDefinition<T>
@NotNull public PrismProperty<T> instantiate(QName name)
ItemDefinition
instantiate
in interface ItemDefinition<PrismProperty<T>>
instantiate
in interface PrismPropertyDefinition<T>
public PropertyDelta<T> createEmptyDelta(ItemPath path)
createEmptyDelta
in interface ItemDefinition<PrismProperty<T>>
createEmptyDelta
in interface PrismPropertyDefinition<T>
public boolean canBeDefinitionOf(PrismValue pvalue)
canBeDefinitionOf
in interface ItemDefinition<PrismProperty<T>>
@NotNull public PrismPropertyDefinition<T> clone()
clone
in interface Definition
clone
in interface ItemDefinition<PrismProperty<T>>
clone
in interface PrismPropertyDefinition<T>
clone
in class ItemDefinitionImpl<PrismProperty<T>>
protected void copyDefinitionData(PrismPropertyDefinitionImpl<T> clone)
protected void extendToString(StringBuilder sb)
extendToString
in class ItemDefinitionImpl<PrismProperty<T>>
public int hashCode()
hashCode
in class ItemDefinitionImpl<PrismProperty<T>>
public boolean equals(Object obj)
equals
in class ItemDefinitionImpl<PrismProperty<T>>
protected String getDebugDumpClassName()
getDebugDumpClassName
in class DefinitionImpl
public String getDocClassName()
DefinitionImpl
getDocClassName
in class DefinitionImpl
Copyright © 2019 Evolveum. All rights reserved.