public abstract class Node
extends Object
Modifier and Type | Class and Description |
---|---|
static interface |
Node.VisitCallback<T>
Interface for a callback method of the visit
|
Constructor and Description |
---|
Node() |
Modifier and Type | Method and Description |
---|---|
abstract void |
addFacet(Node child,
String facetName)
Add a facet child
|
abstract void |
appendChild(Node child)
Appends a child node
|
abstract boolean |
attributeHasValue(String name)
Check if the attribute has a value.
|
abstract javax.el.MethodExpression |
createMethodExpression(oracle.adfmf.framework.model.MafElContext elContext,
String expression,
Class expectedReturnType,
Class[] expectedParamTypes)
Creates a method expression that has the correct environment for this node
|
abstract javax.el.ValueExpression |
createValueExpression(oracle.adfmf.framework.model.MafElContext elContext,
String expression)
Creates a value expression that includes the contextual EL variable map for this node and its ancestor nodes.
|
boolean |
equals(Object obj) |
abstract Node |
findAncestor(String tagNamespace,
String tagName)
Attempt to find an ancestor node with the given tag namespace and name.
|
abstract Node |
findRelativeNode(String idSearchExpression)
Attempts to find a node relative to the current node by its tag ID.
|
abstract Object |
getAttribute(String name)
Get the value of an attribute
|
abstract javax.el.ValueExpression |
getAttributeExpression(String name)
Get the value expression for an attribute
|
abstract Iterable<String> |
getAttributeNames()
Get the name of all the specified attributes.
|
abstract java.util.stream.Stream<Node> |
getChildren(Object key)
Get the children.
|
abstract java.util.stream.Stream<Node> |
getChildren(Object key,
String tagNamespace,
String tagName)
Get the children based on their namespace and tag
|
abstract int |
getChildrenCount(Object key)
Get the number of children for the given stamp key.
|
abstract Iterable<Object> |
getChildrenKeys()
Get an iterable of all children keys.
|
abstract java.util.Map<String,javax.el.ValueExpression> |
getElVariableMap()
Gets the EL variable map to use for this node.
|
abstract String |
getFacetName()
The name of the facet this node is in
|
abstract Iterable<String> |
getFacetNames(Object key)
Get an iterable of all facet names that have children
|
abstract java.util.stream.Stream<Node> |
getFacetNodes(String name,
Object key)
Get all the nodes for a given facet
|
abstract String |
getFeatureId()
Gets the feature ID needed to get the feature context on the node.
|
abstract String |
getId()
The unique identifier of the node.
|
abstract Object |
getKey()
The key to use for stamping.
|
abstract javax.el.MethodExpression |
getMethodExpression(String name)
Get the method expression for an attribute
|
abstract Node |
getParent()
Get the parent node
|
abstract java.util.stream.Stream<Node> |
getRenderedChildren(Object key)
Get a list of all the children that are currently rendered.
|
abstract Node |
getRenderingParent()
Get the node that renders this node.
|
abstract Tag |
getTag()
Get the tag for this node
|
TagHandler |
getTagHandler()
Convenience method to get the tag handler for this node's tag
|
int |
hashCode() |
abstract void |
initializeAttribute(oracle.adfmf.framework.model.MafElContext elContext,
String name)
Sets up an attribute on the node.
|
abstract void |
initializeAttribute(oracle.adfmf.framework.model.MafElContext elContext,
String name,
javax.el.ValueExpression expression)
Initializes an attribute using a given value expression.
|
abstract void |
initializeAttributes(oracle.adfmf.framework.model.MafElContext elContext,
java.util.Set<String> attributes)
Sets a set of attributes on the node.
|
abstract void |
insertChild(int index,
Node child)
Instert a child
|
abstract boolean |
isRendered()
Get if this node is ready to render.
|
abstract void |
markAttributeAsChanged(String name)
Forces an attribute to be sent to the WebView even if the value has not changed.
|
abstract void |
remove()
Removes this node from its parent
|
abstract void |
removeAllChildren()
Removes all facets and children for all stamps
|
abstract void |
removeAllChildrenForKey(Object key)
Removes all facets and children with the given stamp key
|
abstract void |
removeAttributeValue(String attributeName)
Removes the value for an attribute.
|
abstract void |
removeChildOrFacet(Node child)
Removes a child or facet
|
abstract void |
setAttribute(String attributeName,
Object object)
Sets the value of an attribute.
|
abstract void |
setRenderingParent(Node renderingParent)
Sets the rendering parent for this node
|
abstract void |
validate()
Validates the value of the node.
|
abstract <T> boolean |
visit(NodeVisitContext<T> visitContext,
Node.VisitCallback<T> callback)
Visit this node and descendents.
|
public abstract void initializeAttributes(oracle.adfmf.framework.model.MafElContext elContext, java.util.Set<String> attributes)
elContext
- the MAF EL contextattributes
- the name of the attributes to initializeinitializeAttribute(MafElContext, String)
public abstract void initializeAttribute(oracle.adfmf.framework.model.MafElContext elContext, String name)
elContext
- the MAF EL contextname
- the name of the attribute to initializepublic abstract void initializeAttribute(oracle.adfmf.framework.model.MafElContext elContext, String name, javax.el.ValueExpression expression)
createValueExpression(MafElContext, String)
method to ensure the variables
for the node are resolved correctly.elContext
- the EL contextname
- the name of the attribute to initialize and store the value on the nodeexpression
- the expression to use to get the attribute valuepublic abstract java.util.Map<String,javax.el.ValueExpression> getElVariableMap()
public abstract Object getKey()
public abstract String getFacetName()
public abstract String getId()
public abstract Tag getTag()
public abstract boolean attributeHasValue(String name)
name
- the name of the attribute to checkpublic abstract Iterable<String> getAttributeNames()
public abstract Object getAttribute(String name)
name
- the attribute namepublic abstract void markAttributeAsChanged(String name)
name
- the name of the attributepublic abstract javax.el.ValueExpression createValueExpression(oracle.adfmf.framework.model.MafElContext elContext, String expression)
elContext
- the MAF EL contextexpression
- the value expression string valuepublic abstract javax.el.MethodExpression createMethodExpression(oracle.adfmf.framework.model.MafElContext elContext, String expression, Class expectedReturnType, Class[] expectedParamTypes)
context
- the EL contextexpression
- the expression to parseexpectedReturnType
- the expected return type for the method to be found. Passing in a value of null indicates
the caller does not care what the return type is, and the return type will not be checkedexpectedParamTypes
- the expected parameter types for the method to be found. Must be an array with no
elements if there are no parameters expected. It is illegal to pass null, unless the method is specified
with arguments in the EL expression.ELException
- thrown if there are syntactical errors in the provided expression.NullPointerException
- if paramTypes is null.ExpressionFactory.createMethodExpression(ELContext, String, Class, Class[])
public abstract javax.el.ValueExpression getAttributeExpression(String name)
name
- name of the attributepublic abstract javax.el.MethodExpression getMethodExpression(String name)
name
- the name of the attributepublic abstract Node findAncestor(String tagNamespace, String tagName)
tagNamespace
- the namespace of the tag or null to not filter on namespacetagName
- the name of the tag or null to not filter on the tag namepublic abstract Node getParent()
public abstract Node getRenderingParent()
getParent()
but may be overridden
for specific tags (i.e. fragment facet references). This is used as part of the ID calculation.public abstract void setRenderingParent(Node renderingParent)
renderingParent
- the parent that is responsible for rendering the node on the clientpublic abstract String getFeatureId()
public abstract java.util.stream.Stream<Node> getFacetNodes(String name, Object key)
name
- the name of the facetkey
- the stamp key or null if not stampedpublic abstract java.util.stream.Stream<Node> getChildren(Object key)
getChildren(Object, String, String)
with null for the namespace
and tag name.key
- the stamp key or null for non-stamped childrenpublic abstract java.util.stream.Stream<Node> getChildren(Object key, String tagNamespace, String tagName)
key
- the stamp key or null for non-stamped childrentagNamespace
- the namespace to filter by or null to not filter on the namespacetagName
- the name of the tag to filter or or null to not filter by the tag namepublic abstract java.util.stream.Stream<Node> getRenderedChildren(Object key)
key
- the stamp key or null for non-stamped childrenpublic abstract boolean isRendered()
public abstract Iterable<String> getFacetNames(Object key)
key
- the stamp key or null for facets without stamped nodespublic abstract Iterable<Object> getChildrenKeys()
public abstract int getChildrenCount(Object key)
key
- the stamp key or null for non-stamped childrenpublic abstract void appendChild(Node child)
child
- the childpublic abstract void insertChild(int index, Node child)
index
- the index to insert the childchild
- the child to addpublic abstract void addFacet(Node child, String facetName)
child
- the child to addfacetName
- the name of the facetpublic abstract void remove()
public abstract void removeChildOrFacet(Node child)
child
- thi child to removepublic abstract void removeAllChildrenForKey(Object key)
key
- the key or null to remove non-stamped facets and childrenpublic abstract void removeAllChildren()
public abstract <T> boolean visit(NodeVisitContext<T> visitContext, Node.VisitCallback<T> callback)
T
- the type of the visit contextvisitContext
- the visit context specifying what nodes to visitcallback
- the method to call back for matching nodespublic abstract Node findRelativeNode(String idSearchExpression)
idSearchExpression
- the tag ID optionally separated by colons for a hierarchy of nodespublic abstract void removeAttributeValue(String attributeName)
attributeName
- the name of the attribute to removepublic abstract void setAttribute(String attributeName, Object object)
attributeName
- the name of the attributeobject
- the value to set (may be null)public abstract void validate() throws AdfException
AttributeDefinition
that is declared to support validation.AdfException
public TagHandler getTagHandler()
public boolean equals(Object obj)
equals
in class Object
public int hashCode()
hashCode
in class Object