Salt  3.3.6-SNAPSHOT
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 ()
 { Label::getNamespace()}
 
void setNamespace (String namespace)
 { Label::setNamespace(String)}
 
String getName ()
 { Label::getName()}
 
void setName (String name)
 { Label::setName(String)}
 
String getQName ()
 { Label::getQName()}
 
void setQName (String newQName)
 { Label::setQName(String)}
 
Object getValue ()
 { Label::getValue()}
 
void setValue (Object value)
 { 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 ()
 { LabelableElement::getLabels()}
 
Label getLabel (String qName)
 { LabelableElement::getLabel(String)}
 
Label getLabel (String namespace, String name)
 { LabelableElement::getLabel(String, String)}
 
Set< LabelgetLabelsByNamespace (String namespace)
 { 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)
 { LabelableElement::removeLabel(String)}
 
void basicRemoveLabel (String qName)
 This is an internally used method. More...
 
void removeLabel (String namespace, String name)
 { LabelableElement::removeLabel(String, String))}
 
void removeAll ()
 { LabelableElement::removeAll()}
 
boolean containsLabel (String qName)
 { LabelableElement::containsLabel(String)}
 
Integer sizeLabels ()
 { 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 ()
 
- Protected Member Functions inherited from org.corpus_tools.salt.graph.impl.LabelableElementImpl
LabelableElement getDelegate ()
 Returns the delegate object. More...
 

Protected Attributes

String name = null
 
Object value = null
 The generic value field. More...
 
LabelableElement container = null
 The container of this object. More...
 
- 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. More...
 
- Static Public Attributes inherited from org.corpus_tools.salt.graph.Label
static final String NS_SEPERATOR = "::"
 Separator between namespace and name: qname= NAMESPACE { NS_SEPERATOR} NAME.
 

Constructor & Destructor Documentation

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

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
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

Member Data Documentation

LabelableElement org.corpus_tools.salt.graph.impl.LabelImpl.container = null
protected

The container of this object.

Object org.corpus_tools.salt.graph.impl.LabelImpl.value = null
protected

The generic value field.