public abstract class ListAttributeDefinition extends AttributeDefinition
ModelType.LIST attribute in a Resource, with utility
methods for conversion to and from xml and for validation.| Modifier and Type | Class and Description |
|---|---|
static class |
ListAttributeDefinition.Builder<BUILDER extends ListAttributeDefinition.Builder,ATTRIBUTE extends ListAttributeDefinition> |
AttributeDefinition.NameAndGroupattributeMarshaller, COMPLEX_TYPES| Modifier | Constructor and Description |
|---|---|
protected |
ListAttributeDefinition(ListAttributeDefinition.Builder<?,?> builder) |
|
ListAttributeDefinition(String name,
boolean allowNull,
ParameterValidator elementValidator)
Deprecated.
|
|
ListAttributeDefinition(String name,
boolean allowNull,
ParameterValidator elementValidator,
AttributeAccess.Flag... flags)
Deprecated.
|
| Modifier and Type | Method and Description |
|---|---|
protected abstract void |
addAttributeValueTypeDescription(org.jboss.dmr.ModelNode node,
ResourceDescriptionResolver resolver,
Locale locale,
ResourceBundle bundle) |
org.jboss.dmr.ModelNode |
addOperationParameterDescription(org.jboss.dmr.ModelNode resourceDescription,
String operationName,
ResourceDescriptionResolver resolver,
Locale locale,
ResourceBundle bundle)
Creates a returns a basic model node describing a parameter that sets this attribute, after attaching it to the
given overall operation description model node.
|
org.jboss.dmr.ModelNode |
addOperationParameterDescription(ResourceBundle bundle,
String prefix,
org.jboss.dmr.ModelNode operationDescription)
Creates a returns a basic model node describing a parameter that sets this attribute, after attaching it to the
given overall operation description model node.
|
protected abstract void |
addOperationParameterValueTypeDescription(org.jboss.dmr.ModelNode node,
String operationName,
ResourceDescriptionResolver resolver,
Locale locale,
ResourceBundle bundle) |
org.jboss.dmr.ModelNode |
addResourceAttributeDescription(org.jboss.dmr.ModelNode resourceDescription,
ResourceDescriptionResolver resolver,
Locale locale,
ResourceBundle bundle)
Creates a returns a basic model node describing the attribute, after attaching it to the given overall resource
description model node.
|
org.jboss.dmr.ModelNode |
addResourceAttributeDescription(ResourceBundle bundle,
String prefix,
org.jboss.dmr.ModelNode resourceDescription)
Creates a returns a basic model node describing the attribute, after attaching it to the given overall resource
description model node.
|
protected abstract void |
addValueTypeDescription(org.jboss.dmr.ModelNode node,
ResourceBundle bundle) |
protected org.jboss.dmr.ModelNode |
convertParameterElementExpressions(org.jboss.dmr.ModelNode parameterElement)
Examine the given element of a parameter list for any expression syntax, converting the relevant node to
ModelType.EXPRESSION if such is supported. |
protected org.jboss.dmr.ModelNode |
convertParameterExpressions(org.jboss.dmr.ModelNode parameter)
Iterates through the elements in the
parameter list, calling convertParameterElementExpressions(ModelNode)
for each. |
ParameterValidator |
getElementValidator()
The validator used to validate elements in the list.
|
void |
marshallAsElement(org.jboss.dmr.ModelNode resourceModel,
boolean marshallDefault,
XMLStreamWriter writer)
Marshalls the value from the given
resourceModel as an xml element, if it
is marshallable. |
org.jboss.dmr.ModelNode |
parse(String value,
XMLStreamReader reader)
Creates and returns a
ModelNode using the given value after first validating the node
against this object's element validator. |
void |
parseAndAddParameterElement(String value,
org.jboss.dmr.ModelNode operation,
XMLStreamReader reader)
Creates a
ModelNode using the given value after first validating the node
against this object's element validator, and then stores it in the given operation
model node as an element in a ModelType.LIST value in a key/value pair whose key is this attribute's
name. |
void |
parseAndSetParameter(String value,
org.jboss.dmr.ModelNode operation,
XMLStreamReader reader)
Deprecated.
in favour of using
attribute parser |
addAccessConstraints, addAllowedValuesToDescription, addCapabilityRequirements, addDeprecatedInfo, convertStringExpression, correctValue, getAccessConstraints, getAllowedValues, getAlternatives, getAttributeDeprecatedDescription, getAttributeGroup, getAttributeMarshaller, getAttributeTextDescription, getCorrector, getDefaultValue, getDeprecationData, getFlags, getMeasurementUnit, getName, getNoTextDescription, getParser, getRequires, getType, getValidator, getXmlName, hasAlternative, isAllowed, isAllowExpression, isAllowNull, isDeprecated, isMarshallable, isMarshallable, isNullSignificant, isRequired, isResourceOnly, isValidatingNull, marshallAsElement, removeCapabilityRequirements, resolveModelAttribute, resolveModelAttribute, resolveValue, resolveValue, validateAndSet, validateOperation@Deprecated public ListAttributeDefinition(String name, boolean allowNull, ParameterValidator elementValidator)
@Deprecated public ListAttributeDefinition(String name, boolean allowNull, ParameterValidator elementValidator, AttributeAccess.Flag... flags)
protected ListAttributeDefinition(ListAttributeDefinition.Builder<?,?> builder)
public ParameterValidator getElementValidator()
public org.jboss.dmr.ModelNode parse(String value, XMLStreamReader reader) throws XMLStreamException
ModelNode using the given value after first validating the node
against this object's element validator.
If value is null an undefined node will be returned.
value - the value. Will be trimmed before use if not null.reader - XMLStreamReader from which the location from which
the attribute value was read can be obtained and used in any XMLStreamException, in case
the given value is invalid.ModelNode representing the parsed valueXMLStreamException - if value is not validparseAndAddParameterElement(String, ModelNode, XMLStreamReader)public void parseAndAddParameterElement(String value, org.jboss.dmr.ModelNode operation, XMLStreamReader reader) throws XMLStreamException
ModelNode using the given value after first validating the node
against this object's element validator, and then stores it in the given operation
model node as an element in a ModelType.LIST value in a key/value pair whose key is this attribute's
name.
If value is null an undefined node will be stored if such a value
is acceptable to the validator.
The expected usage of this method is in parsers seeking to build up an operation to store their parsed data into the configuration.
value - the value. Will be trimmed before use if not null.operation - model node of type ModelType.OBJECT into which the parsed value should be storedreader - XMLStreamReader from which the location from which
the attribute value was read can be obtained and used in any XMLStreamException, in case
the given value is invalid.XMLStreamException - if value is not validpublic org.jboss.dmr.ModelNode addResourceAttributeDescription(ResourceBundle bundle, String prefix, org.jboss.dmr.ModelNode resourceDescription)
AttributeDefinitionaddResourceAttributeDescription in class AttributeDefinitionbundle - resource bundle to use for text descriptionsprefix - prefix to prepend to the attribute name key when looking up descriptionsresourceDescription - the overall resource descriptionpublic org.jboss.dmr.ModelNode addResourceAttributeDescription(org.jboss.dmr.ModelNode resourceDescription,
ResourceDescriptionResolver resolver,
Locale locale,
ResourceBundle bundle)
AttributeDefinitionaddResourceAttributeDescription in class AttributeDefinitionresourceDescription - the overall resource descriptionresolver - provider of localized text descriptionslocale - locale to pass to the resolverbundle - bundle to pass to the resolverpublic org.jboss.dmr.ModelNode addOperationParameterDescription(org.jboss.dmr.ModelNode resourceDescription,
String operationName,
ResourceDescriptionResolver resolver,
Locale locale,
ResourceBundle bundle)
AttributeDefinitionaddOperationParameterDescription in class AttributeDefinitionresourceDescription - the overall resource descriptionoperationName - the operation nameresolver - provider of localized text descriptionslocale - locale to pass to the resolverbundle - bundle to pass to the resolverpublic org.jboss.dmr.ModelNode addOperationParameterDescription(ResourceBundle bundle, String prefix, org.jboss.dmr.ModelNode operationDescription)
AttributeDefinitionaddOperationParameterDescription in class AttributeDefinitionbundle - resource bundle to use for text descriptionsprefix - prefix to prepend to the attribute name key when looking up descriptionsoperationDescription - the overall resource descriptionprotected abstract void addValueTypeDescription(org.jboss.dmr.ModelNode node,
ResourceBundle bundle)
protected abstract void addAttributeValueTypeDescription(org.jboss.dmr.ModelNode node,
ResourceDescriptionResolver resolver,
Locale locale,
ResourceBundle bundle)
protected abstract void addOperationParameterValueTypeDescription(org.jboss.dmr.ModelNode node,
String operationName,
ResourceDescriptionResolver resolver,
Locale locale,
ResourceBundle bundle)
public void marshallAsElement(org.jboss.dmr.ModelNode resourceModel,
boolean marshallDefault,
XMLStreamWriter writer)
throws XMLStreamException
AttributeDefinitionresourceModel as an xml element, if it
is marshallable.marshallAsElement in class AttributeDefinitionresourceModel - the model, a non-null node of ModelType.OBJECT.writer - stream writer to use for writing the attributeXMLStreamException - if thrown by writerprotected org.jboss.dmr.ModelNode convertParameterExpressions(org.jboss.dmr.ModelNode parameter)
parameter list, calling convertParameterElementExpressions(ModelNode)
for each.
Note that the default implementation of convertParameterElementExpressions(ModelNode)
will only convert simple ModelType.STRING elements. If users need to handle complex elements
with embedded expressions, they should use a subclass that overrides that method.
ModelType.EXPRESSION if such is supported.
This implementation checks if expressions are allowed and if so, calls
AttributeDefinition.convertStringExpression(ModelNode) to convert a ModelType.STRING to a ModelType.EXPRESSION.
No other conversions are performed. For use cases requiring more complex behavior, a subclass that overrides
this method should be used.
If expressions are supported this implementation also checks if the attribute type is one of
the complex DMR types. If it is, an IllegalStateException is thrown, as this
implementation cannot properly handle such a combination, and a subclass that overrides this method should be used.
convertParameterExpressions in class AttributeDefinitionparameter - the node to examine. Cannot not be nullparameter but with expressions converted, or the original parameter if no
conversion was performed. Will not return nullprotected org.jboss.dmr.ModelNode convertParameterElementExpressions(org.jboss.dmr.ModelNode parameterElement)
ModelType.EXPRESSION if such is supported. This implementation will only convert elements of
ModelType.STRING. Subclasses that need to handle complex elements should override this method.parameterElement - the node to examine. Will not be nullnull@Deprecated public void parseAndSetParameter(String value, org.jboss.dmr.ModelNode operation, XMLStreamReader reader) throws XMLStreamException
attribute parservalue - String with "," separated string elementsoperation - operation to with this list elements are addedreader - xml reader from where reading is be doneXMLStreamExceptionCopyright © 2015 JBoss by Red Hat. All rights reserved.