Table of Contents

Class InterfaceRealization

Namespace
NMF.Interop.Uml
Assembly
NMF.UMLInterop.dll

An InterfaceRealization is a specialized realization relationship between a BehavioredClassifier and an Interface. This relationship signifies that the realizing BehavioredClassifier conforms to the contract specified by the Interface. <p>From package UML::SimpleClassifiers.</p>

[XmlNamespace("http://www.eclipse.org/uml2/5.0.0/UML")]
[XmlNamespacePrefix("uml")]
[ModelRepresentationClass("http://www.eclipse.org/uml2/5.0.0/UML#//InterfaceRealization")]
public class InterfaceRealization : PackageableElement, IInterfaceRealization, IRealization, IAbstraction, IDependency, IDirectedRelationship, IRelationship, IPackageableElement, IParameterableElement, INamedElement, IElement, IEModelElement, IModelElement, INotifyPropertyChanged, INotifyPropertyChanging
Inheritance
InterfaceRealization
Implements
Inherited Members

Properties

ClassInstance

Gets the Class model for this type

public static IClass ClassInstance { get; }

Property Value

IClass

Contract

References the Interface specifying the conformance contract. <p>From package UML::SimpleClassifiers.</p>

[XmlElementName("contract")]
[XmlAttribute(true)]
public IInterface Contract { get; set; }

Property Value

IInterface

ImplementingClassifier

References the BehavioredClassifier that owns this InterfaceRealization, i.e., the BehavioredClassifier that realizes the Interface to which it refers. <p>From package UML::SimpleClassifiers.</p>

[Browsable(false)]
[XmlElementName("implementingClassifier")]
[XmlAttribute(true)]
[XmlOpposite("interfaceRealization")]
public IBehavioredClassifier ImplementingClassifier { get; set; }

Property Value

IBehavioredClassifier

Mapping

An OpaqueExpression that states the abstraction relationship between the supplier(s) and the client(s). In some cases, such as derivation, it is usually formal and unidirectional; in other cases, such as trace, it is usually informal and bidirectional. The mapping expression is optional and may be omitted if the precise relationship between the Elements is not specified. <p>From package UML::CommonStructure.</p>

[Browsable(false)]
[XmlElementName("mapping")]
[XmlAttribute(false)]
[Containment]
public IOpaqueExpression Mapping { get; set; }

Property Value

IOpaqueExpression

ReferencedElements

Gets the referenced model elements of this model element

public override IEnumerableExpression<IModelElement> ReferencedElements { get; }

Property Value

IEnumerableExpression<IModelElement>

Methods

GetClass()

Gets the Class for this model element

public override IClass GetClass()

Returns

IClass

GetExpressionForReference(string)

Gets the property expression for the given reference

protected override INotifyExpression<IModelElement> GetExpressionForReference(string reference)

Parameters

reference string

The requested reference in upper case

Returns

INotifyExpression<IModelElement>

An incremental property expression

GetModelElementForReference(string, int)

Resolves the given URI to a child model element

protected override IModelElement GetModelElementForReference(string reference, int index)

Parameters

reference string

The requested reference name

index int

The index of this reference

Returns

IModelElement

The model element or null if it could not be found

GetRelativePathForNonIdentifiedChild(IModelElement)

Gets the relative URI fragment for the given child model element

protected override string GetRelativePathForNonIdentifiedChild(IModelElement element)

Parameters

element IModelElement

The element that should be looked for

Returns

string

A fragment of the relative URI

OnParentChanged(IModelElement, IModelElement)

Gets called when the parent model element of the current model element changes

protected override void OnParentChanged(IModelElement newParent, IModelElement oldParent)

Parameters

newParent IModelElement

The new parent model element

oldParent IModelElement

The old parent model element

OnParentChanging(IModelElement, IModelElement)

Gets called when the parent model element of the current model element is about to change

protected override void OnParentChanging(IModelElement newParent, IModelElement oldParent)

Parameters

newParent IModelElement

The new parent model element

oldParent IModelElement

The old parent model element

SetFeature(string, object)

Sets a value to the given feature

protected override void SetFeature(string feature, object value)

Parameters

feature string

The requested feature

value object

The value that should be set to that feature