public final class ExtensibleElement extends AbstractBaseComponent
| In DDMS | 2.0 | 3.0 | 3.1 | 4.0.1/4.1 | 5.0 |
Extensible elements must live in any other namespace besides the DDMS XML namespace.
No validation or processing of any kind is performed by DDMSence on extensible attributes, other than the base
validation used when loading attributes from an XML file. This class merely exposes a
getXOMElementCopy()
method which returns a XOM Element that can be manipulated in business-specific ways.
XOM elements can be created as follows:
Element element = new Element("ddmsence:extension", "https://ddmsence.urizone.net/");
element.appendChild("This will be the child text.");
Because it is impossible to cover all of the HTML/JSON/Text output cases for ExtensibleElements, DDMSence will simply print out the existence of extensible elements at the Resource level:
Extensible Layer: true
<meta name="extensible.layer" content="true" />
{"extensible.layer":true}
Details about the XOM Element class can be found at: http://www.xom.nu/apidocs/index.html?nu/xom/Element.html
| History |
|---|
|
In DDMS 2.0, only one element is allowed on the resource. In DDMS 3.0 - 4.1, zero to many may appear. The ExtensibleElement extension point was removed in DDMS 5.0. |
| Nested Elements | |||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| Attributes | |||
|---|---|---|---|
|
| Validation Rules | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| Modifier and Type | Class and Description |
|---|---|
static class |
ExtensibleElement.Builder
Builder for this DDMS component.
|
OUTPUT_TEMPLATES| Constructor and Description |
|---|
ExtensibleElement(nu.xom.Element element)
Constructor for creating a component from a XOM Element
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object obj)
Test for logical equality.
|
String |
getHTMLTextOutput(OutputFormat format,
String prefix,
String suffix)
Renders this component as HTML or Text, with an optional prefix to nest it.
|
com.google.gson.JsonObject |
getJSONObject()
Renders this component as a JSON object, which can either be converted to a JSON string or inserted into the
parent JSON object.
|
int |
hashCode()
Returns a hashcode for the component.
|
protected void |
validate()
Base case for validation.
|
addDdms40Warning, addJson, addJson, addJson, addJson, addWarning, addWarnings, buildHTMLTextOutput, buildHTMLTextOutput, buildIndex, buildPrefix, getAttributeValue, getAttributeValue, getChild, getChildTextAsDouble, getDDMSVersion, getLocatorSuffix, getName, getNamespace, getNestedComponents, getPrefix, getQualifiedName, getSecurityAttributes, getValidationWarnings, getXOMElement, getXOMElementCopy, requireAtLeastVersion, requireAtMostVersion, setXOMElement, toHTML, toJSON, toString, toText, toXML, validateWarningspublic ExtensibleElement(nu.xom.Element element)
throws InvalidDDMSException
element - the XOM element representing thisInvalidDDMSException - if any required information is missing or malformedprotected void validate()
throws InvalidDDMSException
AbstractBaseComponentvalidate in class AbstractBaseComponentInvalidDDMSExceptionAbstractBaseComponent.validate()public com.google.gson.JsonObject getJSONObject()
AbstractBaseComponentgetJSONObject in class AbstractBaseComponentAbstractBaseComponent.getJSONObject()public String getHTMLTextOutput(OutputFormat format, String prefix, String suffix)
AbstractBaseComponentI consider this to be an internal method, that unfortunately must be marked as public to allow cross-package access when generating output. Use toHTML() and toText() as the formal, public methods to generate output.
getHTMLTextOutput in class AbstractBaseComponentformat - the desired format of this outputprefix - an optional prefix to put on each name.suffix - an optional suffix to append to each name, such as an index.AbstractBaseComponent.getHTMLTextOutput(OutputFormat, String, String)public boolean equals(Object obj)
AbstractBaseComponentThe base case tests against the name value and namespaceURI, as well as any child components classified as "nested components" and any security attributes. Extending classes may require additional rules for equality. This case automatically includes any nested components or security attributes.
equals in class AbstractBaseComponentObject.equals(Object)public int hashCode()
AbstractBaseComponentThis automatically includes any nested components or security attributes.
hashCode in class AbstractBaseComponentObject.hashCode()Copyright 2010 - 2019 by Brian Uri!
Generated on 09/15/2016 12:36 PM
https://ddmsence.urizone.net/