public interface AttributeValueReader
For example, by reflection and introspection, for the purpose of performing validation against constraints defined in the DictionaryValidationService implementation.
Practically speaking, this interface should only need to be implemented by a small number of classes. The two major use cases are for
In the first case, implementing classes should provide access to all underlying members of the object via reflection or some other mechanism. In the second case, implementing classes only need to provide access to the value associated with that specific member, and constraints requiring access to additional members will be skipped.
Modifier and Type | Method and Description |
---|---|
AttributeValueReader |
clone()
overrides
Object.clone() |
String |
getAttributeName()
acts as an accessor for the attribute name that is currently being processed by the DictionaryValidationService
implementation
|
List<String> |
getCleanSearchableValues(String attributeName)
enables legacy processing of string representations of attribute values like a date range in the format
12/03/2001..1/29/2009
|
Constrainable |
getDefinition(String attributeName)
provides access to the constrainable attribute definition of a specific attribute name
|
List<Constrainable> |
getDefinitions()
gets a list of all constrainable dictionary metadata definitions for attributes or fields encapsulated by this
object
|
Constrainable |
getEntry()
gets the dictionary metadata associated with an object (its "entry" in the dictionary)
|
String |
getEntryName()
gets the entry name for the purposes of correct error look up
|
String |
getLabel(String attributeName)
looks up a label for a specific attribute name
|
Object |
getObject()
gets the underlying object itself (not the field/attribute value, but the object)
|
String |
getPath()
gets the path, which is a string representation of specifically which attribute (at some depth) is being
accessed
|
Class<?> |
getType(String attributeName)
gets the type of the attribute specified - A Java class
|
<X> X |
getValue()
looks up the attribute value that is currently being processed
|
<X> X |
getValue(String attributeName)
looks up any attribute value by name for the object being processed
|
boolean |
isReadable()
Indicates whether the configured attribute name is readable for the object
|
void |
setAttributeName(String attributeName)
Setter for the current attribute that is being processed
|
String getAttributeName()
Constrainable getDefinition(String attributeName)
If the value of the metadata associated with the object field does not implement constrainable, or if no metadata is associated with this object field, then null should be returned.
attributeName
- - the name of the attribute/field whose metadata is being requestedList<Constrainable> getDefinitions()
Constrainable getEntry()
It can also be constrainable, in which case the object value itself can be validated against one or more constraints. If the specific entry for the dictionary object encapsulated by this reader is not constrainable, or if no entry exists for this dictionary object, or no dictionary object is being encapsulted, then null should be returned.
String getEntryName()
Errors are generally found by entry name + attribute name + error key
String getLabel(String attributeName)
attributeName
- - the name of attributeObject getObject()
String getPath()
For example, on a person object there might be the following field path: joe.home.mailingAddress.state
Class<?> getType(String attributeName)
attributeName
- - the name of attributeboolean isReadable()
<X> X getValue() throws AttributeValidationException
X
- - the type of the attributeAttributeValidationException
<X> X getValue(String attributeName) throws AttributeValidationException
X
- - the type of the attributeattributeName
- - the name of attribute whose value is looked upAttributeValidationException
List<String> getCleanSearchableValues(String attributeName) throws AttributeValidationException
attributeName
- - the attribute nameAttributeValidationException
void setAttributeName(String attributeName)
attributeName
- AttributeValueReader clone()
Object.clone()
AttributeValueReader
Copyright © 2005–2014 The Kuali Foundation. All rights reserved.