IInteraction Interface

A definition of behavior that focuses on the observable exchange of information between objects.

Namespace:  Microsoft.VisualStudio.Uml.Interactions
Assembly:  Microsoft.VisualStudio.Uml.Interfaces (in Microsoft.VisualStudio.Uml.Interfaces.dll)

Syntax

'Declaration
Public Interface IInteraction _
    Inherits IInteractionFragment, IBehavior, IClass, IBehavioredClassifier,  _
    IEncapsulatedClassifier, IStructuredClassifier, IClassifier, IType, IPackageableElement,  _
    IParameterableElement, INamespace, IRedefinableElement, INamedElement, ITemplateableElement,  _
    IElement
public interface IInteraction : IInteractionFragment, 
    IBehavior, IClass, IBehavioredClassifier, IEncapsulatedClassifier, IStructuredClassifier, 
    IClassifier, IType, IPackageableElement, IParameterableElement, INamespace, 
    IRedefinableElement, INamedElement, ITemplateableElement, IElement
public interface class IInteraction : IInteractionFragment, 
    IBehavior, IClass, IBehavioredClassifier, IEncapsulatedClassifier, IStructuredClassifier, 
    IClassifier, IType, IPackageableElement, IParameterableElement, INamespace, 
    IRedefinableElement, INamedElement, ITemplateableElement, IElement
type IInteraction =  
    interface
        interface IInteractionFragment
        interface IBehavior
        interface IClass
        interface IBehavioredClassifier
        interface IEncapsulatedClassifier
        interface IStructuredClassifier
        interface IClassifier
        interface IType
        interface IPackageableElement
        interface IParameterableElement
        interface INamespace
        interface IRedefinableElement
        interface INamedElement
        interface ITemplateableElement
        interface IElement
    end
public interface IInteraction extends IInteractionFragment, IBehavior, IClass, IBehavioredClassifier, IEncapsulatedClassifier, IStructuredClassifier, IClassifier, IType, IPackageableElement, IParameterableElement, INamespace, IRedefinableElement, INamedElement, ITemplateableElement, IElement

The IInteraction type exposes the following members.

Properties

  Name Description
Public property ApplicableStereotypes The set of stereotypes that could be applied to this element. (Inherited from IElement.)
Public property AppliedStereotypes Each IStereotypeInstance denotes that a stereotype has been applied to this element. (Inherited from IElement.)
Public property ClientDependencies Gets the Dependency relationships for which this element is the Client. (Inherited from INamedElement.)
Public property Context Gets the classifier that is the context for the execution of the behavior. (Inherited from IBehavior.)
Public property CoveredLifelines For some types of fragment, gets the lifelines on which the fragment is situated. (Inherited from IInteractionFragment.)
Public property Description The description of this element. (Inherited from IElement.)
Public property EnclosingInteraction Gets the Interaction that contains this Interaction Fragment. (Inherited from IInteractionFragment.)
Public property EnclosingOperand Gets the Interaction Operand that contains a nested Combined Fragment. Applies to Combined Fragments. (Inherited from IInteractionFragment.)
Public property Features Gets the Attributes, Operations and Receptions that are associated with every member of this class. A subset of Namespace::Member. (Inherited from IClassifier.)
Public property Fragments Gets the elements of the interaction, including top-level Combined Fragments and Interaction Uses. Also all message sends, behavior executions, and so on, including those contained in Combined Fragments.
Public property Generalizations Gets the Generalization relationships through which this Classifier inherits Features. (Inherited from IClassifier.)
Public property Generals Gets the Classifiers from which this Classifier inherits Members. (Inherited from IClassifier.)
Public property InheritedMembers Gets the subset of Members that are inherited. (Inherited from IClassifier.)
Public property InteractionUses Gets the Interaction Uses that reference this Interaction from other Interactions.
Public property InterfaceRealizations Gets the Interfaces realized by this behavior. (Inherited from IBehavioredClassifier.)
Public property IsAbstract True if this is a partial description intended to be extended or overridden in specializing classes. (Inherited from IClassifier.)
Public property IsActiveClass True if each instance of this class is associated with a thread of control. (Inherited from IClass.)
Public property IsLeaf True if this element should not be specialized. That is, it should not be the target of a Generalization relationship. (Inherited from IRedefinableElement.)
Public property IsReentrant True if the behavior can be invoked while it is still executing from a previous invocation. (Inherited from IBehavior.)
Public property IsTemplate True if this class is a template that can be bound to parameters. (Inherited from IClassifier.)
Public property Lifelines Gets all the lifelines that are described in this Interaction.
Public property Members Gets the elements that are part of this Namespace. (Inherited from INamespace.)
Public property Messages Gets all the messages that are described in this interaction, including any that are inside Combined Fragments.
Public property Name The name of this element within the Namespace that contains it. In this Namespace, there should be no other element that has this Name. (Inherited from INamedElement.)
Public property Namespace Gets the Namespace in which this element is defined. May be null. (Inherited from INamedElement.)
Public property NestedClassifiers Gets the list of classes that are defined inside this class. (Inherited from IClass.)
Public property OwnedAttributes Gets the list of attributes (properties) that are defined in this class. (Inherited from IClass.)
Public property OwnedBehaviors Gets the Behaviors defined within the scope of this classifier. (Inherited from IBehavioredClassifier.)
Public property OwnedComments Gets Comments contained in this element (not comments linked to it). (Inherited from IElement.)
Public property OwnedConnectors Gets the connectors owned by the classifier, for example the Assembly and Delegate connectors in a Component. (Inherited from IStructuredClassifier.)
Public property OwnedElements Gets Elements owned by this element. Every element has one owner, except the root IModel. (Inherited from IElement.)
Public property OwnedMembers Gets the elements that are defined within this Namespace. (Inherited from INamespace.)
Public property OwnedOperations Gets the list of operations that are defined in this class. (Inherited from IClass.)
Public property OwnedParameters Gets the Parameters that are owned by the Behavior. (Inherited from IBehavior.)
Public property OwnedPorts Gets the Ports through which instances of this type interact with other instances. (Inherited from IEncapsulatedClassifier.)
Public property OwnedRedefinableTemplateSignature (Inherited from IClassifier.)
Public property Owner Gets the Element that owns this element. Every element except the root IModel has one owner. (Inherited from IElement.)
Public property OwningPackage Gets the package that contains this element. (Inherited from IPackageableElement.)
Public property OwningTemplateParameter If not null, this element is defined as a parameter in a template. (Inherited from IParameterableElement.)
Public property Package Gets the package to which the type belongs. (Inherited from IType.)
Public property PackageImports Gets the packages that are imported by this namespace. (Inherited from INamespace.)
Public property Parts Gets the Properties of which this classifier is composed. (Inherited from IStructuredClassifier.)
Public property QualifiedName Gets the name of this element, prefixed with the Qualified Name of the Namespace that contains it. Empty if the Name is empty or if the Qualified Name of the Namespace is empty. (Inherited from INamedElement.)
Public property Specification The behavioral feature that the Behavior implements. (Inherited from IBehavior.)
Public property SuperClasses Gets the Classes from which this class inherits features. (Inherited from IClass.)
Public property TemplateBindings Gets the Bindings in which this element is used. (Inherited from ITemplateableElement.)
Public property TemplateParameter If not null, this element is defined as a parameter in a template. (Inherited from IParameterableElement.)
Public property TypedElements Gets the Typed elements that are constrained to contain values of this type. (Inherited from IType.)
Public property UseCases Gets the Use Cases for which this Classifier is the Subject. (Inherited from IClassifier.)
Public property Visibility Defines where the element can be referenced. Public = visible anywhere; private = visible only in the owning Namespace; protected = visible to elements that have a generalization relationship to the owning Namespace; package = visible only in the Package owning the Namespace, if there is one. Default = public. (Inherited from INamedElement.)
Public property VisibleAppliedStereotypes (Inherited from IElement.)

Top

Extension Methods

  Name Description
Public Extension Method AddReference Links a string to an element, usually where the string is a reference such as a URI, modelbus reference, or work item ID. Use the name to indicate the type of reference. Returns an IReference object that represents the link. (Defined by UmlExtensions.)
Public Extension Method ApplyStereotype Applies the stereotype to element. Creates an IStereotypeInstance that represents the extension of the model element by the stereotype. (Defined by ProfileStereotypeExtensions.)
Public Extension Method CreateAttribute Create a new IProperty object in the Class (Defined by ClassExtensions.)
Public Extension Method CreateCombinedFragment(InteractionOperatorKind, IEnumerable<IMessage>) Overloaded. Create a Combined Fragment containing one operand. You can add more operands later. (Defined by InteractionExtensions.)
Public Extension Method CreateCombinedFragment(InteractionOperatorKind, IInteractionUse) Overloaded. Create a Combined Fragment containing one operand. You can add more operands later. (Defined by InteractionExtensions.)
Public Extension Method CreateCombinedFragment(InteractionOperatorKind, IEnumerable<IInsertionPoint>) Overloaded. Create a Combined Fragment containing one operand. You can add more operands later. (Defined by InteractionExtensions.)
Public Extension Method CreateComment Create a Comment. (Defined by InteractionExtensions.)
Public Extension Method CreateConnector Connect the source element to a target element, such as a Part or Port. If the source or target is a Port located on a Part, specify both. (Defined by ConnectableElementExtensions.)
Public Extension Method CreateGeneralization Create a new generalization of this classifier. An IGeneralization relationship is created between this and another given classifier. (Defined by ClassifierExtensions.)
Public Extension Method CreateInteraction Create a new IInteraction object in the BehavioredClassifier (Defined by BehavioredClassifierExtensions.)
Public Extension Method CreateInteractionUse (Defined by InteractionExtensions.)
Public Extension Method CreateLifeline Create a new ILifeline object in the Interaction (Defined by InteractionExtensions.)
Public Extension Method CreateLostFoundMessage Create a message that does not begin on a lifeline, or that does not end on a lifeline. (Defined by InteractionExtensions.)
Public Extension Method CreateMessage Create a complete message, beginning and ending on specified lifelines. (Defined by InteractionExtensions.)
Public Extension Method CreateNestedActivity Create an activity that describes the behavior of this element. (Defined by BehavioredClassifierExtensions.)
Public Extension Method CreateOperation Create a new IOperation object in the Class (Defined by ClassExtensions.)
Public Extension Method CreatePackageImport Import a package into a namespace. Creates an IPackageImport link to the package. (Defined by NamespaceExtensions.)
Public Extension Method CreateParameter Create a new IParameter object in the Behavior (Defined by BehaviorExtensions.)
Public Extension Method CreatePart() Overloaded. Create a new Part, with an unspecified type. (Defined by StructuredClassifierExtensions.)
Public Extension Method CreatePart(IComponent) Overloaded. Create a new Part, with a given type, or with a new type. Specify a null type to create a new Component as the type of the Part. (Defined by StructuredClassifierExtensions.)
Public Extension Method CreateProperty Create a new IProperty object in the Interaction (Defined by InteractionExtensions.)
Public Extension Method CreateTemplateBinding Bind the given classifier to given template classifier. If required, add parameter substitutions using CreateSubstitution. (Defined by TemplateBindingExtensions.)
Public Extension Method CreateTemplateParameter(IParameterableElement) Overloaded. Creates a template parameter that references given parameteredElement. (Defined by TemplateBindingExtensions.)
Public Extension Method CreateTemplateParameter(TemplateParameterKind, String) Overloaded. Creates a template parameter with the given name. (Defined by TemplateBindingExtensions.)
Public Extension Method CreateTemplateSignature Creates a template signature on the given classifier. (Defined by TemplateBindingExtensions.)
Public Extension Method Delete Deletes this element and any relationships, owned elements, and shapes. (Defined by UmlExtensions.)
Public Extension Method DeleteAllReference Remove all the references of a given tag. (Defined by UmlExtensions.)
Public Extension Method FindTemplateParameter Find a template parameter by name. (Defined by TemplateBindingExtensions.)
Public Extension Method GetCombinedFragments All the combined fragments under the interaction. (Defined by InteractionExtensions.)
Public Extension Method GetDependencyClients Return a collection of elements that are dependent on this. (Defined by NamedElementExtensions.)
Public Extension Method GetDependencySuppliers Return a collection of elements on which this is dependent. (Defined by NamedElementExtensions.)
Public Extension Method GetId Gets a GUID that identifies this element. (Defined by UmlExtensions.)
Public Extension Method GetImportedPackages The imported packages of the namespace (Defined by PackageExtensions.)
Public Extension Method GetModelStore Gets the IModelStore that contains this element. (Defined by UmlExtensions.)
Public Extension Method GetOutgoingAssociationEnds The opposite ends of the associations that are linked to this classifier. From the association ends, you can get the linked classifier and its type. (Defined by ClassifierExtensions.)
Public Extension Method GetRealizedInterfaces Returns a collection of the IInterfaces implemented by the given classifier. (Defined by BehavioredClassifierExtensions.)
Public Extension Method GetReferences Get the IReferences of a given tag that are associated with this element. (Defined by UmlExtensions.)
Public Extension Method GetRelatedElements<T> Gets elements related to this element by relationships of the specified type. (Defined by UmlExtensions.)
Public Extension Method GetRelatedLinks<T> Gets relationships of a specified type from or to this element. (Defined by UmlExtensions.)
Public Extension Method GetSpecifics Returns all the classifiers that specialize this classifier. (Defined by ClassifierExtensions.)
Public Extension Method SetOwner(IClassifier) Overloaded. Change the owner. (Defined by SetOwnerExtensions.)
Public Extension Method SetOwner(IPackage) Overloaded. Change the owner. (Defined by SetOwnerExtensions.)
Public Extension Method SetOwner(IPackage) Overloaded. Change the owner. (Defined by SetOwnerExtensions.)
Public Extension Method Shapes All the shapes that display the model element on any open diagram, or on a specified open diagram. (Defined by PresentationHelpers.)

Top

Remarks

For more information about using this type, see How to: Edit Sequence Diagrams by Using the UML API.

Note

The methods defined on this type are extension methods. To use the methods, you must add a project reference to the .NET assembly Microsoft.VisualStudio.ArchitectureTools.Extensibility.dll, and you must include the directive using Microsoft.VisualStudio.ArchitectureTools.Extensibility.Uml; in your code.

See Also

Reference

Microsoft.VisualStudio.Uml.Interactions Namespace