Salt  3.4.2
A powerful, tagset-independent and theory-neutral meta model and API for storing, manipulating, and representing nearly all types of linguistic data .
org.corpus_tools.salt.graph.impl.LabelImpl Class Reference

Inherits org.corpus_tools.salt.graph.impl.LabelableElementImpl, org.corpus_tools.salt.graph.Label, and org.corpus_tools.salt.util.Copyable< T >.

Inherited by org.corpus_tools.salt.core.impl.SAbstractAnnotationImpl, org.corpus_tools.salt.extensions.notification.graph.impl.LabelNotifierImpl, and org.corpus_tools.salt.graph.impl.IdentifierImpl.

Public Member Functions

 LabelImpl (Label delegatee)
 Initializes a new object and sets an internal delegatee. More...
 
String getNamespace ()
 {@inheritDoc Label::getNamespace()}
 
void setNamespace (String namespace)
 {@inheritDoc Label::setNamespace(String)}
 
String getName ()
 {@inheritDoc Label::getName()}
 
void setName (String name)
 {@inheritDoc Label::setName(String)}
 
String getQName ()
 {@inheritDoc Label::getQName()}
 
void setQName (String newQName)
 {@inheritDoc Label::setQName(String)}
 
Object getValue ()
 {@inheritDoc Label::getValue()}
 
void setValue (Object value)
 {@inheritDoc Label::setValue(Object)}
 
void setContainer (LabelableElement container)
 
LabelableElement getContainer ()
 Returns the container element, which contains this label.The label and the container are double chained, which means when a label is added to the container, the labels container is automatically set to it or even removed.
Returns
container of this label

 
void basicSetLabelableElement (LabelableElement container)
 This is an internally used method. More...
 
Label copy (Label other)
 This method the namespace, the name and the value from this object to the passed one and returns the passed one. More...
 
String toString ()
 
- Public Member Functions inherited from org.corpus_tools.salt.graph.impl.LabelableElementImpl
 LabelableElementImpl (LabelableElement delegatee)
 Initializes a new object and sets an internal delegate. More...
 
Collection< LabelgetLabels ()
 {@inheritDoc LabelableElement::getLabels()}
 
Label getLabel (String qName)
 {@inheritDoc LabelableElement::getLabel(String)}
 
Label getLabel (String namespace, String name)
 {@inheritedDoc LabelableElement::getLabel(String, String)}
 
Set< LabelgetLabelsByNamespace (String namespace)
 {@inheritDoc LabelableElement::getLabelsByNamespace(String)}
 
void addLabel (Label label)
 Adds the given Label object to the list of labels.
Parameters
labelthe Label object to be added

 
void basicAddLabel (Label label)
 This is an internally used method. More...
 
void removeLabel (String qName)
 {@inheritDoc LabelableElement::removeLabel(String)}
 
void basicRemoveLabel (String qName)
 This is an internally used method. More...
 
void removeLabel (String namespace, String name)
 {@inheritDoc LabelableElement::removeLabel(String, String))}
 
void removeAll ()
 {@inheritDoc LabelableElement::removeAll()}
 
boolean containsLabel (String qName)
 {@inheritDoc LabelableElement::containsLabel(String)}
 
Integer sizeLabels ()
 {@inheritDoc LabelableElement::sizeLabels()}
 
- Public Member Functions inherited from org.corpus_tools.salt.graph.Label
public< C extends LabelableElement > void setContainer (C container)
 Sets the container element, which contains this label. More...
 
- Public Member Functions inherited from org.corpus_tools.salt.util.Copyable< T >
copy (T other)
 Takes a new 'empty' object and sets all its fields by copying by value. More...
 

Protected Member Functions

Label getDelegate ()
 Returns the delegate object.If delegate is not null, all functions of this method are delegated to the delegate object. Setting delegate makes this object to a container.
Returns
the delegate object

 

Protected Attributes

String name = null
 
Object value = null
 The generic value field.
 
LabelableElement container = null
 The container of this object.
 
- Protected Attributes inherited from org.corpus_tools.salt.graph.impl.LabelableElementImpl
LabelableElement delegate = null
 A delegate object of the same type. More...
 

Additional Inherited Members

- Static Public Attributes inherited from org.corpus_tools.salt.graph.impl.LabelableElementImpl
static final int EXPECTED_NUMBER_OF_LABELS = 5
 Determines the expected number of labels.
 
- Static Public Attributes inherited from org.corpus_tools.salt.graph.Label
static final String NS_SEPERATOR = "::"
 Separator between namespace and name: qname= NAMESPACE {@value NS_SEPERATOR} NAME.
 

Constructor & Destructor Documentation

◆ LabelImpl()

org.corpus_tools.salt.graph.impl.LabelImpl.LabelImpl ( Label  delegatee)

Initializes a new object and sets an internal delegatee.

This means, all method invocations are passed to the delegatee.

Parameters
delegateeobject to pass method invocations to.

Member Function Documentation

◆ basicSetLabelableElement()

void org.corpus_tools.salt.graph.impl.LabelImpl.basicSetLabelableElement ( LabelableElement  container)

This is an internally used method.

To implement a double chaining of LabelableElement and label object. When a label is inserted into this container and to avoid an endless invocation the insertion of a label is split into the two methods addLabel(Label) and basicAddLabel(Label). The invocation of methods is implement as follows:

addLabel(Label)                      Label#setContainer(LabelableElement)
        ||             \ /                   ||
        ||              X                    ||
        \/             / \                   \/
basicAddLabel(Label)            LabelImpl#basicSetLabelableElement(LabelableElement)

That means method addLabel(Label) calls basicAddLabel(Label) and Label#basicSetGraph(Graph). And method Label#setContainer(LabelableElement) calls basicAddLabel(Label) and LabelImpl#basicSetLabelableElement(LabelableElement).

Parameters
labellabel to be inserted

◆ copy()

Label org.corpus_tools.salt.graph.impl.LabelImpl.copy ( Label  other)

This method the namespace, the name and the value from this object to the passed one and returns the passed one.

Parameters
clonethe clone to which all properties of this shall be copied to
Returns
other enhanced for namespace, name and value