Interface IMapValueDescriptor<V>
-
- Type Parameters:
V- Type of the mapped values.
- All Superinterfaces:
IAttributeConfigurable<IValueDescriptor<Map<String,V>,IMapValueBuilder<V>>>,IValueDescriptor<Map<String,V>,IMapValueBuilder<V>>,Serializable
public interface IMapValueDescriptor<V> extends IValueDescriptor<Map<String,V>,IMapValueBuilder<V>>
AIValueDescriptorfor a map value. The value must be a map from string to values. The key is always a string, and all values must conform to the same type of values. Compared withIRecordValueDescriptor, a map value descriptor requires all values to be of the same type, but allows arbitrary keys.- Since:
- 7.0.0
- Author:
- XIMA MEDIA GmbH
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description IMapValueDescriptorBuilder<V>configure()Creates a new builder pre-configured with the settings of this descriptor.default EValueTypegetBaseType()Gets the basic type of the value described by this value descriptor.default Class<Map<String,V>>getJavaClass()Gets the Java class of the values described by this descriptor.IValueDescriptor<V,? extends IValueBuilder<V>>getMapValueDescriptor()IMapValueDescriptor<V>withAddedAttribute(String key, Object value)Gets a new instance with the attribute at the given key changed to the given value.IMapValueDescriptor<V>withAddedAttributes(Map<String,Object> newAttributes)Gets a new instance with the attributes changed to the given map of attributes.IMapValueDescriptor<V>withAttributes(Map<String,Object> attributes)Gets a new instance with the attributes changed to the given map of attributes.IMapValueDescriptor<V>withDefaultValue(Object defaultValue)Gets a new value descriptor with the default value changed to the given value.IMapValueDescriptor<V>withDescription(String description)Deprecated.-
Methods inherited from interface de.xima.fc.interfaces.workflow.value.IAttributeConfigurable
getAttribute, getAttribute, getBooleanAttribute, getBooleanAttribute, getFloatAttribute, getFloatAttribute, getIntegerAttribute, getIntegerAttribute, getStringAttribute, getStringAttribute
-
Methods inherited from interface de.xima.fc.interfaces.workflow.value.IValueDescriptor
acceptsValue, acceptsValue, asAny, asBoolean, asConst, asFloat, asInteger, asLargeString, asList, asList, asMap, asMap, asNull, asRecord, asString, asTuple, asUnion, asUnion, asVoid, builder, builder, getAttributes, getDefaultValue, getDescription, getFullType, getFullTypeWithRestrictions, getKnownProperties, getKnownProperties, intersect, is, match, unwrap
-
-
-
-
Method Detail
-
configure
IMapValueDescriptorBuilder<V> configure()
Description copied from interface:IValueDescriptorCreates a new builder pre-configured with the settings of this descriptor. Lets you e.g. add additional properties.- Specified by:
configurein interfaceIValueDescriptor<Map<String,V>,IMapValueBuilder<V>>- Returns:
- A new builder pre-configured with the settings of this descriptor.
-
getBaseType
default EValueType getBaseType()
Description copied from interface:IValueDescriptorGets the basic type of the value described by this value descriptor.- Specified by:
getBaseTypein interfaceIValueDescriptor<Map<String,V>,IMapValueBuilder<V>>- Returns:
- The value's basic type.
-
getJavaClass
default Class<Map<String,V>> getJavaClass()
Description copied from interface:IValueDescriptorGets the Java class of the values described by this descriptor.- Specified by:
getJavaClassin interfaceIValueDescriptor<Map<String,V>,IMapValueBuilder<V>>- Returns:
- The value's Java class.
-
getMapValueDescriptor
IValueDescriptor<V,? extends IValueBuilder<V>> getMapValueDescriptor()
- Returns:
- The value descriptor for the map values. Each value in the map must conform to this descriptor.
-
withAddedAttribute
IMapValueDescriptor<V> withAddedAttribute(String key, Object value)
Description copied from interface:IAttributeConfigurableGets a new instance with the attribute at the given key changed to the given value.- Specified by:
withAddedAttributein interfaceIAttributeConfigurable<V>- Parameters:
key- The attribute key.value- The attribute value.- Returns:
- A new instance with the new attribute.
-
withAddedAttributes
IMapValueDescriptor<V> withAddedAttributes(Map<String,Object> newAttributes)
Description copied from interface:IAttributeConfigurableGets a new instance with the attributes changed to the given map of attributes. Preserves other existing attributes and only adds or replaces the given ones.- Specified by:
withAddedAttributesin interfaceIAttributeConfigurable<V>- Parameters:
newAttributes- The new attributes to add (or replace).- Returns:
- A new instance with the current attributes plus the given attributes.
-
withAttributes
IMapValueDescriptor<V> withAttributes(Map<String,Object> attributes)
Description copied from interface:IAttributeConfigurableGets a new instance with the attributes changed to the given map of attributes. Replaces all existing attributes.- Specified by:
withAttributesin interfaceIAttributeConfigurable<V>- Parameters:
attributes- The new attributes.- Returns:
- A new instance with the given attributes.
-
withDefaultValue
IMapValueDescriptor<V> withDefaultValue(Object defaultValue)
Description copied from interface:IValueDescriptorGets a new value descriptor with the default value changed to the given value.- Specified by:
withDefaultValuein interfaceIValueDescriptor<Map<String,V>,IMapValueBuilder<V>>- Parameters:
defaultValue- The new default value. May be changed when it does not conform to the restrictions imposed by this descriptor.- Returns:
- A new descriptor with the default value.
-
withDescription
@Deprecated IMapValueDescriptor<V> withDescription(String description)
Deprecated.Description copied from interface:IValueDescriptorGets a new value descriptor with the description changed to the given description.- Specified by:
withDescriptionin interfaceIValueDescriptor<Map<String,V>,IMapValueBuilder<V>>- Parameters:
description- The new description.- Returns:
- A new descriptor with the given description.
-
-