org.eclipse.uml2.uml
Interface StringExpression

All Superinterfaces:
Element, org.eclipse.emf.ecore.EModelElement, org.eclipse.emf.ecore.EObject, Expression, NamedElement, org.eclipse.emf.common.notify.Notifier, PackageableElement, ParameterableElement, TemplateableElement, TypedElement, ValueSpecification

public interface StringExpression
extends Expression, TemplateableElement

A representation of the model object 'String Expression'. An expression that specifies a string value that is derived by concatenating a set of sub string expressions, some of which might be template parameters.

The following features are supported:

See Also:
UMLPackage.getStringExpression()

Field Summary
 
Fields inherited from interface org.eclipse.uml2.uml.NamedElement
SEPARATOR
 
Fields inherited from interface org.eclipse.uml2.uml.NamedElement
SEPARATOR
 
Method Summary
 StringExpression createSubExpression(java.lang.String name, Type type)
          Creates a new StringExpression, with the specified 'Name', and 'Type', and appends it to the 'Sub Expression' containment reference list
 StringExpression getOwningExpression()
          Returns the value of the 'Owning Expression' container reference.
 StringExpression getSubExpression(java.lang.String name, Type type)
          Retrieves the first StringExpression with the specified 'Name', and 'Type' from the 'Sub Expression' containment reference list
 StringExpression getSubExpression(java.lang.String name, Type type, boolean ignoreCase, boolean createOnDemand)
          Retrieves the first StringExpression with the specified 'Name', and 'Type' from the 'Sub Expression' containment reference list
 org.eclipse.emf.common.util.EList<StringExpression> getSubExpressions()
          Returns the value of the 'Sub Expression' containment reference list.
 void setOwningExpression(StringExpression value)
          Sets the value of the 'Owning Expression' container reference
 boolean validateOperands(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          All the operands of a StringExpression must be LiteralStrings operand->forAll (op | op.oclIsKindOf (LiteralString))
 boolean validateSubexpressions(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          If a StringExpression has sub-expressions, it cannot have operands and vice versa (this avoids the problem of having to define a collating sequence between operands and subexpressions).
 
Methods inherited from interface org.eclipse.uml2.uml.Expression
createOperand, getOperand, getOperand, getOperands, getSymbol, isSetSymbol, setSymbol, unsetSymbol
 
Methods inherited from interface org.eclipse.uml2.uml.ValueSpecification
booleanValue, integerValue, isComputable, isNull, stringValue, unlimitedValue
 
Methods inherited from interface org.eclipse.uml2.uml.NamedElement
allNamespaces, allOwningPackages, createDependency, createNameExpression, createUsage, getClientDependencies, getClientDependency, getClientDependency, getLabel, getLabel, getName, getNameExpression, getNamespace, getQualifiedName, getVisibility, isDistinguishableFrom, isSetName, isSetVisibility, separator, setName, setNameExpression, setVisibility, unsetName, unsetVisibility, validateHasNoQualifiedName, validateHasQualifiedName, validateVisibilityNeedsOwnership
 
Methods inherited from interface org.eclipse.uml2.uml.Element
addKeyword, allOwnedElements, applyStereotype, createEAnnotation, createOwnedComment, destroy, getApplicableStereotype, getApplicableStereotypes, getAppliedStereotype, getAppliedStereotypes, getAppliedSubstereotype, getAppliedSubstereotypes, getKeywords, getModel, getNearestPackage, getOwnedComments, getOwnedElements, getOwner, getRelationships, getRelationships, getRequiredStereotype, getRequiredStereotypes, getSourceDirectedRelationships, getSourceDirectedRelationships, getStereotypeApplication, getStereotypeApplications, getTargetDirectedRelationships, getTargetDirectedRelationships, getValue, hasKeyword, hasValue, isStereotypeApplicable, isStereotypeApplied, isStereotypeRequired, mustBeOwned, removeKeyword, setValue, unapplyStereotype, validateHasOwner, validateNotOwnSelf
 
Methods inherited from interface org.eclipse.emf.ecore.EModelElement
getEAnnotation, getEAnnotations
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 
Methods inherited from interface org.eclipse.uml2.uml.ParameterableElement
getOwningTemplateParameter, getTemplateParameter, isCompatibleWith, isTemplateParameter, setOwningTemplateParameter, setTemplateParameter
 
Methods inherited from interface org.eclipse.uml2.uml.Element
addKeyword, allOwnedElements, applyStereotype, createEAnnotation, createOwnedComment, destroy, getApplicableStereotype, getApplicableStereotypes, getAppliedStereotype, getAppliedStereotypes, getAppliedSubstereotype, getAppliedSubstereotypes, getKeywords, getModel, getNearestPackage, getOwnedComments, getOwnedElements, getOwner, getRelationships, getRelationships, getRequiredStereotype, getRequiredStereotypes, getSourceDirectedRelationships, getSourceDirectedRelationships, getStereotypeApplication, getStereotypeApplications, getTargetDirectedRelationships, getTargetDirectedRelationships, getValue, hasKeyword, hasValue, isStereotypeApplicable, isStereotypeApplied, isStereotypeRequired, mustBeOwned, removeKeyword, setValue, unapplyStereotype, validateHasOwner, validateNotOwnSelf
 
Methods inherited from interface org.eclipse.emf.ecore.EModelElement
getEAnnotation, getEAnnotations
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 
Methods inherited from interface org.eclipse.uml2.uml.TypedElement
getType, setType
 
Methods inherited from interface org.eclipse.uml2.uml.NamedElement
allNamespaces, allOwningPackages, createDependency, createNameExpression, createUsage, getClientDependencies, getClientDependency, getClientDependency, getLabel, getLabel, getName, getNameExpression, getNamespace, getQualifiedName, getVisibility, isDistinguishableFrom, isSetName, isSetVisibility, separator, setName, setNameExpression, setVisibility, unsetName, unsetVisibility, validateHasNoQualifiedName, validateHasQualifiedName, validateVisibilityNeedsOwnership
 
Methods inherited from interface org.eclipse.uml2.uml.Element
addKeyword, allOwnedElements, applyStereotype, createEAnnotation, createOwnedComment, destroy, getApplicableStereotype, getApplicableStereotypes, getAppliedStereotype, getAppliedStereotypes, getAppliedSubstereotype, getAppliedSubstereotypes, getKeywords, getModel, getNearestPackage, getOwnedComments, getOwnedElements, getOwner, getRelationships, getRelationships, getRequiredStereotype, getRequiredStereotypes, getSourceDirectedRelationships, getSourceDirectedRelationships, getStereotypeApplication, getStereotypeApplications, getTargetDirectedRelationships, getTargetDirectedRelationships, getValue, hasKeyword, hasValue, isStereotypeApplicable, isStereotypeApplied, isStereotypeRequired, mustBeOwned, removeKeyword, setValue, unapplyStereotype, validateHasOwner, validateNotOwnSelf
 
Methods inherited from interface org.eclipse.emf.ecore.EModelElement
getEAnnotation, getEAnnotations
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 
Methods inherited from interface org.eclipse.uml2.uml.TemplateableElement
createOwnedTemplateSignature, createOwnedTemplateSignature, createTemplateBinding, getOwnedTemplateSignature, getTemplateBinding, getTemplateBinding, getTemplateBindings, isTemplate, parameterableElements, setOwnedTemplateSignature
 

Method Detail

getSubExpressions

org.eclipse.emf.common.util.EList<StringExpression> getSubExpressions()
Returns the value of the 'Sub Expression' containment reference list. The list contents are of type StringExpression. It is bidirectional and its opposite is 'Owning Expression'. The StringExpressions that constitute this StringExpression.

Returns:
the value of the 'Sub Expression' containment reference list.
See Also:
UMLPackage.getStringExpression_SubExpression(), getOwningExpression()

createSubExpression

StringExpression createSubExpression(java.lang.String name,
                                     Type type)
Creates a new StringExpression, with the specified 'Name', and 'Type', and appends it to the 'Sub Expression' containment reference list.

Parameters:
name - The 'Name' for the new StringExpression, or null.
type - The 'Type' for the new StringExpression, or null.
Returns:
The new StringExpression.
See Also:
getSubExpressions()

getSubExpression

StringExpression getSubExpression(java.lang.String name,
                                  Type type)
Retrieves the first StringExpression with the specified 'Name', and 'Type' from the 'Sub Expression' containment reference list.

Parameters:
name - The 'Name' of the StringExpression to retrieve, or null.
type - The 'Type' of the StringExpression to retrieve, or null.
Returns:
The first StringExpression with the specified 'Name', and 'Type', or null.
See Also:
getSubExpressions()

getSubExpression

StringExpression getSubExpression(java.lang.String name,
                                  Type type,
                                  boolean ignoreCase,
                                  boolean createOnDemand)
Retrieves the first StringExpression with the specified 'Name', and 'Type' from the 'Sub Expression' containment reference list.

Parameters:
name - The 'Name' of the StringExpression to retrieve, or null.
type - The 'Type' of the StringExpression to retrieve, or null.
ignoreCase - Whether to ignore case in String comparisons.
createOnDemand - Whether to create a StringExpression on demand if not found.
Returns:
The first StringExpression with the specified 'Name', and 'Type', or null.
See Also:
getSubExpressions()

getOwningExpression

StringExpression getOwningExpression()
Returns the value of the 'Owning Expression' container reference. It is bidirectional and its opposite is 'Sub Expression'. The string expression of which this expression is a substring.

Returns:
the value of the 'Owning Expression' container reference.
See Also:
setOwningExpression(StringExpression), UMLPackage.getStringExpression_OwningExpression(), getSubExpressions()

setOwningExpression

void setOwningExpression(StringExpression value)
Sets the value of the 'Owning Expression' container reference.

Parameters:
value - the new value of the 'Owning Expression' container reference.
See Also:
getOwningExpression()

validateOperands

boolean validateOperands(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                         java.util.Map<java.lang.Object,java.lang.Object> context)
All the operands of a StringExpression must be LiteralStrings operand->forAll (op | op.oclIsKindOf (LiteralString))

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

validateSubexpressions

boolean validateSubexpressions(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                               java.util.Map<java.lang.Object,java.lang.Object> context)
If a StringExpression has sub-expressions, it cannot have operands and vice versa (this avoids the problem of having to define a collating sequence between operands and subexpressions). if subExpression->notEmpty() then operand->isEmpty() else operand->notEmpty()

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

Copyright 2003, 2007 IBM Corporation and others.
All Rights Reserved.