public final class RelatedResource extends AbstractQualifierValue
| In DDMS | 2.0 | 3.0 | 3.1 | 4.0.1/4.1 | 5.0 |
| History |
|---|
|
Before DDMS 4.0.1, ddms:RelatedResources was the top-level component (0-many in a resource) and contained 1 to many ddms:relatedResource components. Starting in DDMS 4.0.1, the ddms:RelatedResources component was removed, and the ddms:relatedResource now contains all of the parent information (relationship and direction). The element-based constructor for this class can automatically handle these cases, and will automatically mediate the Text/HTML/JSON/XML output:
If you have a case where a pre-DDMS 4.0.1 ddms:RelatedResources element contained 5 ddms:relatedResource elements, the Resource class will automatically mediate it to create 5 RelatedResource instances. If an old-fashioned parent element containing multiple children is loaded in the element-based constructor, only the first child will be processed, and a warning will be provided. |
| Nested Elements | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| Attributes | ||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| Validation Rules | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Does NOT validate that the value is valid against the qualifier's vocabulary. |
| Modifier and Type | Class and Description |
|---|---|
static class |
RelatedResource.Builder
Builder for this DDMS component.
|
| Modifier and Type | Field and Description |
|---|---|
static String |
BIDRECTIONAL_DIRECTION
The value for an bidirectional direction.
|
static String |
INBOUND_DIRECTION
The value for an inbound direction.
|
static String |
OLD_INNER_NAME
The pre-DDMS 4.0.1 name of the nested resource elements
|
static String |
OUTBOUND_DIRECTION
The value for an outbound direction.
|
OUTPUT_TEMPLATES| Constructor and Description |
|---|
RelatedResource(nu.xom.Element element)
Constructor for creating a component from a XOM Element
|
RelatedResource(List<Link> links,
String relationship,
String direction,
String qualifier,
String value,
SecurityAttributes securityAttributes)
Constructor for creating a component from raw data
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object obj)
Test for logical equality.
|
String |
getDirection()
Accessor for the direction attribute (may be empty)
|
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.
|
List<Link> |
getLinks()
Accessor for the links (1 to many).
|
static String |
getName(DDMSVersion version)
Accessor for the element name of this component, based on the version of DDMS used
|
protected List<IDDMSComponent> |
getNestedComponents()
Accessor for a collection of nested components.
|
String |
getQualifier()
Accessor for the value of the qualifier attribute
|
String |
getRelationship()
Accessor for the relationship attribute
|
SecurityAttributes |
getSecurityAttributes()
Accessor for the Security Attributes.
|
String |
getValue()
Accessor for the value of the value attribute
|
int |
hashCode()
Returns a hashcode for the component.
|
protected void |
validate()
Base case for validation.
|
static void |
validateRelationshipDirection(String direction)
Asserts that a direction is valid.
|
protected void |
validateWarnings()
Base case for warnings.
|
getQualifierName, getValueNameaddDdms40Warning, addJson, addJson, addJson, addJson, addWarning, addWarnings, buildHTMLTextOutput, buildHTMLTextOutput, buildIndex, buildPrefix, getAttributeValue, getAttributeValue, getChild, getChildTextAsDouble, getDDMSVersion, getLocatorSuffix, getName, getNamespace, getPrefix, getQualifiedName, getValidationWarnings, getXOMElement, getXOMElementCopy, requireAtLeastVersion, requireAtMostVersion, setXOMElement, toHTML, toJSON, toString, toText, toXMLpublic static final String INBOUND_DIRECTION
public static final String OUTBOUND_DIRECTION
public static final String BIDRECTIONAL_DIRECTION
public static final String OLD_INNER_NAME
public RelatedResource(nu.xom.Element element)
throws InvalidDDMSException
element - the XOM element representing thisInvalidDDMSException - if any required information is missing or malformedpublic RelatedResource(List<Link> links, String relationship, String direction, String qualifier, String value, SecurityAttributes securityAttributes) throws InvalidDDMSException
links - the xlinksrelationship - the relationship attributedirection - the relationship directionqualifier - the value of the qualifier attributevalue - the value of the value attributesecurityAttributes - any security attributesInvalidDDMSException - if any required information is missing or malformedpublic static void validateRelationshipDirection(String direction)
throws InvalidDDMSException
direction - the string to checkInvalidDDMSException - if the value is null, empty or invalid.protected void validate()
throws InvalidDDMSException
AbstractBaseComponentvalidate in class AbstractBaseComponentInvalidDDMSExceptionAbstractBaseComponent.validate()protected void validateWarnings()
AbstractBaseComponentvalidateWarnings in class AbstractBaseComponentAbstractBaseComponent.validateWarnings()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)protected List<IDDMSComponent> getNestedComponents()
AbstractBaseComponentgetNestedComponents in class AbstractBaseComponentAbstractBaseComponent.getNestedComponents()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 AbstractQualifierValueObject.equals(Object)public int hashCode()
AbstractBaseComponentThis automatically includes any nested components or security attributes.
hashCode in class AbstractQualifierValueObject.hashCode()public static String getName(DDMSVersion version)
version - the DDMSVersionpublic List<Link> getLinks()
public String getRelationship()
public String getDirection()
public String getQualifier()
getQualifier in class AbstractQualifierValuepublic String getValue()
getValue in class AbstractQualifierValuepublic SecurityAttributes getSecurityAttributes()
getSecurityAttributes in interface IDDMSComponentgetSecurityAttributes in class AbstractBaseComponentCopyright 2010 - 2019 by Brian Uri!
Generated on 09/15/2016 12:36 PM
https://ddmsence.urizone.net/