public abstract class TagHandler
extends Object
Constructor and Description |
---|
TagHandler() |
Modifier and Type | Method and Description |
---|---|
void |
attributesAffected(Node node,
java.util.Map<String,Object> attributes,
java.util.List<ProviderChangeEvent> providerChanges)
Notifies the tag handler for a node that one of the attributes of the node has been affected by a property
change event.
|
Object |
getAttributeValueToSerialize(Node node,
String attribute)
Allows a tag handler to customize the value that should be serialized for a given attribute.
|
Iterable<Object> |
getOrderedStampKeys(Node node)
Allows the tag handler to customize the order that the node processes its children (for use with visiting).
|
void |
handleAmxEvent(Node node,
String eventName,
AMXEvent event)
Allows tag handlers for nodes that are children of a node that generates events to respond to those events.
|
String |
handleAmxEvent(Node node,
String attributeName,
Object newAttributeValue,
String eventName,
AMXEvent event)
Allows tag handlers to implement behaviors for when an AMX event has been generated for a node.
|
abstract void |
initializeNode(Node node)
Method to ask the tag handler to set all the attribute values onto the node as well as creating the children and
facets
|
abstract boolean |
isRenderedAttributeSupported(Node node)
Get if this node is one that supports a rendered attribute.
|
void |
nodeRemoved(Node node)
Notification of a node being removed to the type handler
|
boolean |
shouldSerializeAttribute(Node node,
String attributeName)
Check if an attribute should be serialized.
|
boolean |
shouldSerializeNode(Node node)
Check if the given node should be serialized when creating the JSON for the node hierarchy.
|
boolean |
supportsProviderChangeEvents(Node node)
Checks if the tag handler would like to be notified of provider change events for the given node.
|
void |
validate(Node node)
Perform validation of the node.
|
public abstract boolean isRenderedAttributeSupported(Node node)
public abstract void initializeNode(Node node)
node
- the node to initializepublic boolean shouldSerializeNode(Node node)
node
- the node to checkpublic boolean shouldSerializeAttribute(Node node, String attributeName)
node
- the nodeattributeName
- the attributepublic Object getAttributeValueToSerialize(Node node, String attribute)
node
- the node being serializedattribute
- the attribute being serializedpublic void attributesAffected(Node node, java.util.Map<String,Object> attributes, java.util.List<ProviderChangeEvent> providerChanges)
ProviderChangeEvent.OPERATION_BATCH
types of events will not be part of the
providerChanges
as they will be automatically separated into each provider change event that makes
them up.node
- the nodeattributes
- map of the the affected attributes. The value of the map entries are the previous values of
the attributesevent
- the property change event that is causing the changeproviderChanges
- any provider changes that have occurred for the node if
supportsProviderChangeEvents(Node)
returns true and there are events to be handledpublic boolean supportsProviderChangeEvents(Node node)
public String handleAmxEvent(Node node, String attributeName, Object newAttributeValue, String eventName, AMXEvent event)
node
- the nodeattributeName
- the attribute if a new value is being assigned or nullnewAttributeValue
- the new value of the attribute if the attribute name is not nulleventName
- the name of the eventevent
- the event objectpublic void handleAmxEvent(Node node, String eventName, AMXEvent event)
node
- the child node of the one for the eventeventName
- the name of the eventevent
- the event objectpublic void nodeRemoved(Node node)
public Iterable<Object> getOrderedStampKeys(Node node)
Node.getChildrenKeys()
for visiting which has a random order.node
- the nodepublic void validate(Node node) throws AdfException
node
- the node to validateAdfException