org.eclipse.uml2.uml
Interface OpaqueExpression

All Superinterfaces:
Element, EModelElement, EObject, NamedElement, Notifier, PackageableElement, ParameterableElement, TypedElement, ValueSpecification

public interface OpaqueExpression
extends ValueSpecification

A representation of the model object 'Opaque Expression'. An opaque expression is an uninterpreted textual statement that denotes a (possibly empty) set of values when evaluated in a context. Provides a mechanism for precisely defining the behavior of an opaque expression. An opaque expression is defined by a behavior restricted to return one result.

The following features are supported:

See Also:
UMLPackage.getOpaqueExpression()

Field Summary
 
Fields inherited from interface org.eclipse.uml2.uml.NamedElement
SEPARATOR
 
Method Summary
 Behavior getBehavior()
          Returns the value of the 'Behavior' reference
 EList getBodies()
          Returns the value of the 'Body' attribute list.
 EList getLanguages()
          Returns the value of the 'Language' attribute list.
 Parameter getResult()
          Returns the value of the 'Result' reference
 boolean isIntegral()
           The query isIntegral() tells whether an expression is intended to produce an integer.
 boolean isNonNegative()
           The query isNonNegative() tells whether an integer expression has a non-negative value.
 boolean isPositive()
           The query isPositive() tells whether an integer expression has a positive value.
 boolean isSetBodies()
          Returns whether the value of the 'Body' attribute list is set
 boolean isSetLanguages()
          Returns whether the value of the 'Language' attribute list is set
 void setBehavior(Behavior value)
          Sets the value of the 'Behavior' reference
 void unsetBodies()
          Unsets the value of the 'Body' attribute list
 void unsetLanguages()
          Unsets the value of the 'Language' attribute list
 boolean validateLanguageBodySize(DiagnosticChain diagnostics, Map context)
           If the language attribute is not empty, then the size of the body and language arrays must be the same.
 boolean validateOneReturnResultParameter(DiagnosticChain diagnostics, Map context)
           The behavior must have exactly one return result parameter.
 boolean validateOnlyReturnResultParameters(DiagnosticChain diagnostics, Map context)
           The behavior may only have return result parameters.
 int value()
           The query value() gives an integer value for an expression intended to produce one.
 
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, 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.TypedElement
getType, setType
 

Method Detail

getBodies

public EList getBodies()
Returns the value of the 'Body' attribute list. The list contents are of type String. The text of the expression, possibly in multiple languages.

Returns:
the value of the 'Body' attribute list.
See Also:
OpaqueExpression.isSetBodies(), OpaqueExpression.unsetBodies(), UMLPackage.getOpaqueExpression_Body()

unsetBodies

public void unsetBodies()
Unsets the value of the 'Body' attribute list.

See Also:
OpaqueExpression.isSetBodies(), OpaqueExpression.getBodies()

isSetBodies

public boolean isSetBodies()
Returns whether the value of the 'Body' attribute list is set.

Returns:
whether the value of the 'Body' attribute list is set.
See Also:
OpaqueExpression.unsetBodies(), OpaqueExpression.getBodies()

getLanguages

public EList getLanguages()
Returns the value of the 'Language' attribute list. The list contents are of type String. Specifies the languages in which the expression is stated. The interpretation of the expression body depends on the languages. If the languages are unspecified, they might be implicit from the expression body or the context. Languages are matched to body strings by order.

Returns:
the value of the 'Language' attribute list.
See Also:
OpaqueExpression.isSetLanguages(), OpaqueExpression.unsetLanguages(), UMLPackage.getOpaqueExpression_Language()

unsetLanguages

public void unsetLanguages()
Unsets the value of the 'Language' attribute list.

See Also:
OpaqueExpression.isSetLanguages(), OpaqueExpression.getLanguages()

isSetLanguages

public boolean isSetLanguages()
Returns whether the value of the 'Language' attribute list is set.

Returns:
whether the value of the 'Language' attribute list is set.
See Also:
OpaqueExpression.unsetLanguages(), OpaqueExpression.getLanguages()

getResult

public Parameter getResult()
Returns the value of the 'Result' reference. Restricts an opaque expression to return exactly one return result. When the invocation of the opaque expression completes, a single set of values is returned to its owner. This association is derived from the single return result parameter of the associated behavior.

Returns:
the value of the 'Result' reference.
See Also:
UMLPackage.getOpaqueExpression_Result()

getBehavior

public Behavior getBehavior()
Returns the value of the 'Behavior' reference. Specifies the behavior of the opaque expression.

Returns:
the value of the 'Behavior' reference.
See Also:
OpaqueExpression.setBehavior(Behavior), UMLPackage.getOpaqueExpression_Behavior()

setBehavior

public void setBehavior(Behavior value)
Sets the value of the 'Behavior' reference.

Parameters:
value - the new value of the 'Behavior' reference.
See Also:
OpaqueExpression.getBehavior()

validateLanguageBodySize

public boolean validateLanguageBodySize(DiagnosticChain diagnostics,
                                        Map context)
If the language attribute is not empty, then the size of the body and language arrays must be the same. language->notEmpty() implies (body->size() = language->size())


validateOnlyReturnResultParameters

public boolean validateOnlyReturnResultParameters(DiagnosticChain diagnostics,
                                                  Map context)
The behavior may only have return result parameters. self.behavior.notEmpty() implies self.behavior.ownedParameters->select(p | p.direction<>#return)->isEmpty()


validateOneReturnResultParameter

public boolean validateOneReturnResultParameter(DiagnosticChain diagnostics,
                                                Map context)
The behavior must have exactly one return result parameter. self.behavior.notEmpty() implies self.behavior.ownedParameter->select(p | p.direction=#return)->size() = 1


value

public int value()
The query value() gives an integer value for an expression intended to produce one. self.isIntegral() true


isIntegral

public boolean isIntegral()
The query isIntegral() tells whether an expression is intended to produce an integer. result = false


isPositive

public boolean isPositive()
The query isPositive() tells whether an integer expression has a positive value. self.isIntegral() result = false


isNonNegative

public boolean isNonNegative()
The query isNonNegative() tells whether an integer expression has a non-negative value. self.isIntegral() result = false


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