## org.eclipse.uml2.uml
Interface InformationFlow

All Superinterfaces:
  DirectedRelationship, Element, org.eclipse.emf.ecore.EModelElement, org.eclipse.emf.ecore.EObject, NamedElement, org.eclipse.emf.common.notify.Notifier, PackageableElement, ParameterableElement, Relationship

    public interface InformationFlow

extends PackageableElement, DirectedRelationship

A representation of the model object 'Information Flow'. An information flow specifies that one or more information items circulates from its sources to its targets. Information flows require some kind of information channel for transmitting information items from the source to the destination. An information channel is represented in various ways depending on the nature of its sources and targets. It may be represented by connectors, links, associations, or even dependencies. For example, if the source and destination are parts in some composite structure such as a collaboration, then the information channel is likely to be represented by a connector between them. Or, if the source and target are objects (which are a kind of instance specification), they may be represented by a link that joins the two, and so on.

The following features are supported:

- `Realization`
- `Conveyed`
- `Information Source`
- `Information Target`
- `Realizing Activity Edge`
- `Realizing Connector`
- `Realizing Message`

See Also:
  `UMLPackage.getInformationFlow()`

Field Summary

Fields inherited from interface org.eclipse.uml2.uml.NamedElement
`SEPARATOR`

Method Summary
`Classifier` `getConveyed(java.lang.String name)` Retrieves the first `Classifier` with the specified 'Name' from the 'Conveyed' reference list
`Classifier` `getConveyed(java.lang.String name, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass)` Retrieves the first `Classifier` with the specified 'Name' from the 'Conveyed' reference list
`org.eclipse.emf.common.util.EList<Classifier>` `getConveyeds()` Returns the value of the 'Conveyed' reference list.
`NamedElement` `getInformationSource(java.lang.String name)` Retrieves the first `NamedElement` with the specified 'Name' from the 'Information Source' reference list
`NamedElement` `getInformationSource(java.lang.String name, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass)` Retrieves the first `NamedElement` with the specified 'Name' from the 'Information Source' reference list
`org.eclipse.emf.common.util.EList<NamedElement>` `getInformationSources()` Returns the value of the 'Information Source' reference list.
`NamedElement` `getInformationTarget(java.lang.String name)` Retrieves the first `NamedElement` with the specified 'Name' from the 'Information Target' reference list
`NamedElement` `getInformationTarget(java.lang.String name, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass)` Retrieves the first `NamedElement` with the specified 'Name' from the 'Information Target' reference list
`org.eclipse.emf.common.util.EList<NamedElement>` `getInformationTargets()` Returns the value of the 'Information Target' reference list.
`org.eclipse.emf.common.util.EList<Relationship>` `getRealizations()` Returns the value of the 'Realization' reference list.
`ActivityEdge` `getRealizingActivityEdge(java.lang.String name)` Retrieves the first `ActivityEdge` with the specified 'Name' from the 'Realizing Activity Edge' reference list
`ActivityEdge` `getRealizingActivityEdge(java.lang.String name, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass)` Retrieves the first `ActivityEdge` with the specified 'Name' from the 'Realizing Activity Edge' reference list
`org.eclipse.emf.common.util.EList<ActivityEdge>` `getRealizingActivityEdges()` Returns the value of the 'Realizing Activity Edge' reference list.
`Connector` `getRealizingConnector(java.lang.String name)` Retrieves the first `Connector` with the specified 'Name' from the 'Realizing Connector' reference list
`Connector` `getRealizingConnector(java.lang.String name, boolean ignoreCase)` Retrieves the first `Connector` with the specified 'Name' from the 'Realizing Connector' reference list
`org.eclipse.emf.common.util.EList<Connector>` `getRealizingConnectors()` Returns the value of the 'Realizing Connector' reference list.
`Message` `getRealizingMessage(java.lang.String name)` Retrieves the first `Message` with the specified 'Name' from the 'Realizing Message' reference list
`Message` `getRealizingMessage(java.lang.String name, boolean ignoreCase)` Retrieves the first `Message` with the specified 'Name' from the 'Realizing Message' reference list
`org.eclipse.emf.common.util.EList<Message>` `getRealizingMessages()` Returns the value of the 'Realizing Message' reference list.
`boolean` `validateConveyClassifiers(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` An information flow can only convey classifiers that are allowed to represent an information item.
`boolean` `validateMustConform(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` The sources and targets of the information flow must conform with the sources and targets or conversely the targets and sources of the realization relationships.

`boolean`

`validateSourcesAndTargetsKind(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)`
The sources and targets of the information flow can only be one of the following kind: Actor, Node, UseCase, Artifact, Class, Component, Port, Property, Interface, Package, ActivityNode, ActivityPartition and InstanceSpecification except when its classifier is a relationship (i.e. it represents a link).

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, eInvoke, 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, eInvoke, 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.DirectedRelationship
`getSources, getTargets`

Methods inherited from interface org.eclipse.uml2.uml.Relationship
`getRelatedElements`

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, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset`

Methods inherited from interface org.eclipse.emf.common.notify.Notifier
`eAdapters, eDeliver, eNotify, eSetDeliver`

Method Detail

### getRealizations

    org.eclipse.emf.common.util.EList<Relationship> getRealizations()

  Returns the value of the 'Realization' reference list. The list contents are of type `Relationship`. Determines which Relationship will realize the specified flow

  Returns:
    the value of the 'Realization' reference list.
  See Also:
    `UMLPackage.getInformationFlow_Realization()`

### getConveyeds

    org.eclipse.emf.common.util.EList<Classifier> getConveyeds()

  Returns the value of the 'Conveyed' reference list. The list contents are of type `Classifier`. Specifies the information items that may circulate on this information flow.

  Returns:
    the value of the 'Conveyed' reference list.
  See Also:
    `UMLPackage.getInformationFlow_Conveyed()`

### getConveyed

    Classifier getConveyed(java.lang.String name)

  Retrieves the first `Classifier` with the specified 'Name' from the 'Conveyed' reference list.

  Parameters:
    `name` - The 'Name' of the `Classifier` to retrieve, or `null`.
  Returns:
    The first `Classifier` with the specified 'Name', or `null`.
  See Also:
    `getConveyeds()`

### getConveyed

    Classifier getConveyed(java.lang.String name,
                           boolean ignoreCase,
                           org.eclipse.emf.ecore.EClass eClass)

  Retrieves the first `Classifier` with the specified 'Name' from the 'Conveyed' reference list.

  Parameters:
    `name` - The 'Name' of the `Classifier` to retrieve, or `null`.
    `ignoreCase` - Whether to ignore case in `String` comparisons.
    `eClass` - The Ecore class of the `Classifier` to retrieve, or `null`.
  Returns:
    The first `Classifier` with the specified 'Name', or `null`.
  See Also:
    `getConveyeds()`

### getInformationSources

    org.eclipse.emf.common.util.EList<NamedElement> getInformationSources()

  Returns the value of the 'Information Source' reference list. The list contents are of type `NamedElement`.

  This feature subsets the following features:

  - '`Source`'
  Defines from which source the conveyed InformationItems are initiated.

  Returns:
    the value of the 'Information Source' reference list.
  See Also:
    `UMLPackage.getInformationFlow_InformationSource()`

### getInformationSource

    NamedElement getInformationSource(java.lang.String name)

  Retrieves the first `NamedElement` with the specified 'Name' from the 'Information Source' reference list.

  Parameters:
    `name` - The 'Name' of the `NamedElement` to retrieve, or `null`.
  Returns:
    The first `NamedElement` with the specified 'Name', or `null`.
  See Also:
    `getInformationSources()`

### getInformationSource

    NamedElement getInformationSource(java.lang.String name,
                                      boolean ignoreCase,
                                      org.eclipse.emf.ecore.EClass eClass)

  Retrieves the first `NamedElement` with the specified 'Name' from the 'Information Source' reference list.

  Parameters:
    `name` - The 'Name' of the `NamedElement` to retrieve, or `null`.
    `ignoreCase` - Whether to ignore case in `String` comparisons.
    `eClass` - The Ecore class of the `NamedElement` to retrieve, or `null`.
  Returns:
    The first `NamedElement` with the specified 'Name', or `null`.
  See Also:
    `getInformationSources()`

### getInformationTargets

    org.eclipse.emf.common.util.EList<NamedElement> getInformationTargets()

  Returns the value of the 'Information Target' reference list. The list contents are of type `NamedElement`.

  This feature subsets the following features:

  - '`Target`'
  Defines to which target the conveyed InformationItems are directed.

  Returns:
    the value of the 'Information Target' reference list.
  See Also:
    `UMLPackage.getInformationFlow_InformationTarget()`

### getInformationTarget

    NamedElement getInformationTarget(java.lang.String name)

  Retrieves the first `NamedElement` with the specified 'Name' from the 'Information Target' reference list.

  Parameters:
    `name` - The 'Name' of the `NamedElement` to retrieve, or `null`.
  Returns:
    The first `NamedElement` with the specified 'Name', or `null`.
  See Also:
    `getInformationTargets()`

### getInformationTarget

    NamedElement getInformationTarget(java.lang.String name,
                                      boolean ignoreCase,
                                      org.eclipse.emf.ecore.EClass eClass)

  Retrieves the first `NamedElement` with the specified 'Name' from the 'Information Target' reference list.

  Parameters:
    `name` - The 'Name' of the `NamedElement` to retrieve, or `null`.
    `ignoreCase` - Whether to ignore case in `String` comparisons.
    `eClass` - The Ecore class of the `NamedElement` to retrieve, or `null`.
  Returns:
    The first `NamedElement` with the specified 'Name', or `null`.
  See Also:
    `getInformationTargets()`

### getRealizingActivityEdges

    org.eclipse.emf.common.util.EList<ActivityEdge> getRealizingActivityEdges()

  Returns the value of the 'Realizing Activity Edge' reference list. The list contents are of type `ActivityEdge`. Determines which ActivityEdges will realize the specified flow.

  Returns:
    the value of the 'Realizing Activity Edge' reference list.
  See Also:
    `UMLPackage.getInformationFlow_RealizingActivityEdge()`

### getRealizingActivityEdge

    ActivityEdge getRealizingActivityEdge(java.lang.String name)

  Retrieves the first `ActivityEdge` with the specified 'Name' from the 'Realizing Activity Edge' reference list.

  Parameters:
    `name` - The 'Name' of the `ActivityEdge` to retrieve, or `null`.
  Returns:
    The first `ActivityEdge` with the specified 'Name', or `null`.
  See Also:
    `getRealizingActivityEdges()`

### getRealizingActivityEdge

    ActivityEdge getRealizingActivityEdge(java.lang.String name,
                                          boolean ignoreCase,
                                          org.eclipse.emf.ecore.EClass eClass)

  Retrieves the first `ActivityEdge` with the specified 'Name' from the 'Realizing Activity Edge' reference list.

  Parameters:
    `name` - The 'Name' of the `ActivityEdge` to retrieve, or `null`.
    `ignoreCase` - Whether to ignore case in `String` comparisons.
    `eClass` - The Ecore class of the `ActivityEdge` to retrieve, or `null`.
  Returns:
    The first `ActivityEdge` with the specified 'Name', or `null`.
  See Also:
    `getRealizingActivityEdges()`

### getRealizingConnectors

    org.eclipse.emf.common.util.EList<Connector> getRealizingConnectors()

  Returns the value of the 'Realizing Connector' reference list. The list contents are of type `Connector`. Determines which Connectors will realize the specified flow.

  Returns:
    the value of the 'Realizing Connector' reference list.
  See Also:
    `UMLPackage.getInformationFlow_RealizingConnector()`

### getRealizingConnector

    Connector getRealizingConnector(java.lang.String name)

  Retrieves the first `Connector` with the specified 'Name' from the 'Realizing Connector' reference list.

  Parameters:
    `name` - The 'Name' of the `Connector` to retrieve, or `null`.
  Returns:
    The first `Connector` with the specified 'Name', or `null`.
  See Also:
    `getRealizingConnectors()`

### getRealizingConnector

    Connector getRealizingConnector(java.lang.String name,
                                    boolean ignoreCase)

  Retrieves the first `Connector` with the specified 'Name' from the 'Realizing Connector' reference list.

  Parameters:
    `name` - The 'Name' of the `Connector` to retrieve, or `null`.
    `ignoreCase` - Whether to ignore case in `String` comparisons.
  Returns:
    The first `Connector` with the specified 'Name', or `null`.
  See Also:
    `getRealizingConnectors()`

### getRealizingMessages

    org.eclipse.emf.common.util.EList<Message> getRealizingMessages()

  Returns the value of the 'Realizing Message' reference list. The list contents are of type `Message`. Determines which Messages will realize the specified flow.

  Returns:
    the value of the 'Realizing Message' reference list.
  See Also:
    `UMLPackage.getInformationFlow_RealizingMessage()`

### getRealizingMessage

    Message getRealizingMessage(java.lang.String name)

  Retrieves the first `Message` with the specified 'Name' from the 'Realizing Message' reference list.

  Parameters:
    `name` - The 'Name' of the `Message` to retrieve, or `null`.
  Returns:
    The first `Message` with the specified 'Name', or `null`.
  See Also:
    `getRealizingMessages()`

### getRealizingMessage

    Message getRealizingMessage(java.lang.String name,
                                boolean ignoreCase)

  Retrieves the first `Message` with the specified 'Name' from the 'Realizing Message' reference list.

  Parameters:
    `name` - The 'Name' of the `Message` to retrieve, or `null`.
    `ignoreCase` - Whether to ignore case in `String` comparisons.
  Returns:
    The first `Message` with the specified 'Name', or `null`.
  See Also:
    `getRealizingMessages()`

### validateSourcesAndTargetsKind

    boolean validateSourcesAndTargetsKind(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                          java.util.Map<java.lang.Object,java.lang.Object> context)

  The sources and targets of the information flow can only be one of the following kind: Actor, Node, UseCase, Artifact, Class, Component, Port, Property, Interface, Package, ActivityNode, ActivityPartition and InstanceSpecification except when its classifier is a relationship (i.e. it represents a link). (self.source->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification))) and (self.target->forAll(p | p->oclIsKindOf(Actor) or oclIsKindOf(Node) or oclIsKindOf(UseCase) or oclIsKindOf(Artifact) or oclIsKindOf(Class) or oclIsKindOf(Component) or oclIsKindOf(Port) or oclIsKindOf(Property) or oclIsKindOf(Interface) or oclIsKindOf(Package) or oclIsKindOf(ActivityNode) or oclIsKindOf(ActivityPartition) or oclIsKindOf(InstanceSpecification)))

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

### validateMustConform

    boolean validateMustConform(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                java.util.Map<java.lang.Object,java.lang.Object> context)

  The sources and targets of the information flow must conform with the sources and targets or conversely the targets and sources of the realization relationships. true

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

### validateConveyClassifiers

    boolean validateConveyClassifiers(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                      java.util.Map<java.lang.Object,java.lang.Object> context)

  An information flow can only convey classifiers that are allowed to represent an information item. self.conveyed.represented->forAll(p | p->oclIsKindOf(Class) or oclIsKindOf(Interface) or oclIsKindOf(InformationItem) or oclIsKindOf(Signal) or oclIsKindOf(Component))

  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.