All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.eclipse.uml2.uml.ActivityEdge Maven / Gradle / Ivy

The newest version!
/*
 * Copyright (c) 2005, 2014 IBM Corporation, Embarcadero Technologies, CEA, and others.
 * All rights reserved.   This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *   IBM - initial API and implementation
 *   Kenn Hussey (Embarcadero Technologies) - 205188
 *   Kenn Hussey (CEA) - 327039, 351774, 418466
 *   Christian W. Damus (CEA) - 251963
 *
 */
package org.eclipse.uml2.uml;

import java.util.Map;

import org.eclipse.emf.common.util.DiagnosticChain;

import org.eclipse.emf.common.util.EList;

import org.eclipse.emf.ecore.EClass;

/**
 * 
 * A representation of the model object 'Activity Edge'.
 * 
 *
 * 
 * An ActivityEdge is an abstract class for directed connections between two ActivityNodes.
 * 

From package UML::Activities.

* * *

* The following features are supported: *

    *
  • {@link org.eclipse.uml2.uml.ActivityEdge#getActivity Activity}
  • *
  • {@link org.eclipse.uml2.uml.ActivityEdge#getGuard Guard}
  • *
  • {@link org.eclipse.uml2.uml.ActivityEdge#getInPartitions In Partition}
  • *
  • {@link org.eclipse.uml2.uml.ActivityEdge#getInterrupts Interrupts}
  • *
  • {@link org.eclipse.uml2.uml.ActivityEdge#getInStructuredNode In Structured Node}
  • *
  • {@link org.eclipse.uml2.uml.ActivityEdge#getTarget Target}
  • *
  • {@link org.eclipse.uml2.uml.ActivityEdge#getSource Source}
  • *
  • {@link org.eclipse.uml2.uml.ActivityEdge#getRedefinedEdges Redefined Edge}
  • *
  • {@link org.eclipse.uml2.uml.ActivityEdge#getWeight Weight}
  • *
  • {@link org.eclipse.uml2.uml.ActivityEdge#getInGroups In Group}
  • *
*

* * @see org.eclipse.uml2.uml.UMLPackage#getActivityEdge() * @model abstract="true" * @generated */ public interface ActivityEdge extends RedefinableElement { /** * Returns the value of the 'Activity' container reference. * It is bidirectional and its opposite is '{@link org.eclipse.uml2.uml.Activity#getEdges Edge}'. *

* This feature subsets the following features: *

    *
  • '{@link org.eclipse.uml2.uml.Element#getOwner() Owner}'
  • *
*

* * * * The Activity containing the ActivityEdge, if it is directly owned by an Activity. *

From package UML::Activities.

* * @return the value of the 'Activity' container reference. * @see #setActivity(Activity) * @see org.eclipse.uml2.uml.UMLPackage#getActivityEdge_Activity() * @see org.eclipse.uml2.uml.Activity#getEdges * @model opposite="edge" transient="false" ordered="false" * @generated */ Activity getActivity(); /** * Sets the value of the '{@link org.eclipse.uml2.uml.ActivityEdge#getActivity Activity}' container reference. * * * @param value the new value of the 'Activity' container reference. * @see #getActivity() * @generated */ void setActivity(Activity value); /** * Returns the value of the 'In Group' reference list. * The list contents are of type {@link org.eclipse.uml2.uml.ActivityGroup}. * It is bidirectional and its opposite is '{@link org.eclipse.uml2.uml.ActivityGroup#getContainedEdges Contained Edge}'. * This feature is a derived union. * * * * ActivityGroups containing the ActivityEdge. *

From package UML::Activities.

* * @return the value of the 'In Group' reference list. * @see org.eclipse.uml2.uml.UMLPackage#getActivityEdge_InGroup() * @see org.eclipse.uml2.uml.ActivityGroup#getContainedEdges * @model opposite="containedEdge" transient="true" changeable="false" volatile="true" derived="true" ordered="false" * @generated */ EList getInGroups(); /** * Retrieves the first {@link org.eclipse.uml2.uml.ActivityGroup} with the specified 'Name' from the 'In Group' reference list. * * * @param name The 'Name' of the {@link org.eclipse.uml2.uml.ActivityGroup} to retrieve, or null. * @return The first {@link org.eclipse.uml2.uml.ActivityGroup} with the specified 'Name', or null. * @see #getInGroups() * @generated */ ActivityGroup getInGroup(String name); /** * Retrieves the first {@link org.eclipse.uml2.uml.ActivityGroup} with the specified 'Name' from the 'In Group' reference list. * * * @param name The 'Name' of the {@link org.eclipse.uml2.uml.ActivityGroup} to retrieve, or null. * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons. * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.ActivityGroup} to retrieve, or null. * @return The first {@link org.eclipse.uml2.uml.ActivityGroup} with the specified 'Name', or null. * @see #getInGroups() * @generated */ ActivityGroup getInGroup(String name, boolean ignoreCase, EClass eClass); /** * Returns the value of the 'In Partition' reference list. * The list contents are of type {@link org.eclipse.uml2.uml.ActivityPartition}. * It is bidirectional and its opposite is '{@link org.eclipse.uml2.uml.ActivityPartition#getEdges Edge}'. *

* This feature subsets the following features: *

    *
  • '{@link org.eclipse.uml2.uml.ActivityEdge#getInGroups() In Group}'
  • *
*

* * * * ActivityPartitions containing the ActivityEdge. *

From package UML::Activities.

* * @return the value of the 'In Partition' reference list. * @see org.eclipse.uml2.uml.UMLPackage#getActivityEdge_InPartition() * @see org.eclipse.uml2.uml.ActivityPartition#getEdges * @model opposite="edge" ordered="false" * @generated */ EList getInPartitions(); /** * Retrieves the first {@link org.eclipse.uml2.uml.ActivityPartition} with the specified 'Name' from the 'In Partition' reference list. * * * @param name The 'Name' of the {@link org.eclipse.uml2.uml.ActivityPartition} to retrieve, or null. * @return The first {@link org.eclipse.uml2.uml.ActivityPartition} with the specified 'Name', or null. * @see #getInPartitions() * @generated */ ActivityPartition getInPartition(String name); /** * Retrieves the first {@link org.eclipse.uml2.uml.ActivityPartition} with the specified 'Name' from the 'In Partition' reference list. * * * @param name The 'Name' of the {@link org.eclipse.uml2.uml.ActivityPartition} to retrieve, or null. * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons. * @return The first {@link org.eclipse.uml2.uml.ActivityPartition} with the specified 'Name', or null. * @see #getInPartitions() * @generated */ ActivityPartition getInPartition(String name, boolean ignoreCase); /** * Returns the value of the 'In Structured Node' container reference. * It is bidirectional and its opposite is '{@link org.eclipse.uml2.uml.StructuredActivityNode#getEdges Edge}'. *

* This feature subsets the following features: *

    *
  • '{@link org.eclipse.uml2.uml.ActivityEdge#getInGroups() In Group}'
  • *
  • '{@link org.eclipse.uml2.uml.Element#getOwner() Owner}'
  • *
*

* * * * The StructuredActivityNode containing the ActivityEdge, if it is owned by a StructuredActivityNode. *

From package UML::Activities.

* * @return the value of the 'In Structured Node' container reference. * @see #setInStructuredNode(StructuredActivityNode) * @see org.eclipse.uml2.uml.UMLPackage#getActivityEdge_InStructuredNode() * @see org.eclipse.uml2.uml.StructuredActivityNode#getEdges * @model opposite="edge" transient="false" ordered="false" * @generated */ StructuredActivityNode getInStructuredNode(); /** * Sets the value of the '{@link org.eclipse.uml2.uml.ActivityEdge#getInStructuredNode In Structured Node}' container reference. * * * @param value the new value of the 'In Structured Node' container reference. * @see #getInStructuredNode() * @generated */ void setInStructuredNode(StructuredActivityNode value); /** * Returns the value of the 'Target' reference. * It is bidirectional and its opposite is '{@link org.eclipse.uml2.uml.ActivityNode#getIncomings Incoming}'. * * * * The ActivityNode to which tokens are put when they traverse the ActivityEdge. *

From package UML::Activities.

* * @return the value of the 'Target' reference. * @see #setTarget(ActivityNode) * @see org.eclipse.uml2.uml.UMLPackage#getActivityEdge_Target() * @see org.eclipse.uml2.uml.ActivityNode#getIncomings * @model opposite="incoming" required="true" ordered="false" * @generated */ ActivityNode getTarget(); /** * Sets the value of the '{@link org.eclipse.uml2.uml.ActivityEdge#getTarget Target}' reference. * * * @param value the new value of the 'Target' reference. * @see #getTarget() * @generated */ void setTarget(ActivityNode value); /** * Returns the value of the 'Redefined Edge' reference list. * The list contents are of type {@link org.eclipse.uml2.uml.ActivityEdge}. *

* This feature subsets the following features: *

    *
  • '{@link org.eclipse.uml2.uml.RedefinableElement#getRedefinedElements() Redefined Element}'
  • *
*

* * * * ActivityEdges from a generalization of the Activity containing this ActivityEdge that are redefined by this ActivityEdge. *

From package UML::Activities.

* * @return the value of the 'Redefined Edge' reference list. * @see org.eclipse.uml2.uml.UMLPackage#getActivityEdge_RedefinedEdge() * @model ordered="false" * @generated */ EList getRedefinedEdges(); /** * Retrieves the first {@link org.eclipse.uml2.uml.ActivityEdge} with the specified 'Name' from the 'Redefined Edge' reference list. * * * @param name The 'Name' of the {@link org.eclipse.uml2.uml.ActivityEdge} to retrieve, or null. * @return The first {@link org.eclipse.uml2.uml.ActivityEdge} with the specified 'Name', or null. * @see #getRedefinedEdges() * @generated */ ActivityEdge getRedefinedEdge(String name); /** * Retrieves the first {@link org.eclipse.uml2.uml.ActivityEdge} with the specified 'Name' from the 'Redefined Edge' reference list. * * * @param name The 'Name' of the {@link org.eclipse.uml2.uml.ActivityEdge} to retrieve, or null. * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons. * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.ActivityEdge} to retrieve, or null. * @return The first {@link org.eclipse.uml2.uml.ActivityEdge} with the specified 'Name', or null. * @see #getRedefinedEdges() * @generated */ ActivityEdge getRedefinedEdge(String name, boolean ignoreCase, EClass eClass); /** * Returns the value of the 'Guard' containment reference. *

* This feature subsets the following features: *

    *
  • '{@link org.eclipse.uml2.uml.Element#getOwnedElements() Owned Element}'
  • *
*

* * * * A ValueSpecification that is evaluated to determine if a token can traverse the ActivityEdge. If an ActivityEdge has no guard, then there is no restriction on tokens traversing the edge. *

From package UML::Activities.

* * @return the value of the 'Guard' containment reference. * @see #setGuard(ValueSpecification) * @see org.eclipse.uml2.uml.UMLPackage#getActivityEdge_Guard() * @model containment="true" resolveProxies="true" ordered="false" * @generated */ ValueSpecification getGuard(); /** * Sets the value of the '{@link org.eclipse.uml2.uml.ActivityEdge#getGuard Guard}' containment reference. * * * @param value the new value of the 'Guard' containment reference. * @see #getGuard() * @generated */ void setGuard(ValueSpecification value); /** * Creates a new {@link org.eclipse.uml2.uml.ValueSpecification}, with the specified 'Name', and 'Type', and sets the 'Guard' containment reference. * * * @param name The 'Name' for the new {@link org.eclipse.uml2.uml.ValueSpecification}, or null. * @param type The 'Type' for the new {@link org.eclipse.uml2.uml.ValueSpecification}, or null. * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.ValueSpecification} to create. * @return The new {@link org.eclipse.uml2.uml.ValueSpecification}. * @see #getGuard() * @generated */ ValueSpecification createGuard(String name, Type type, EClass eClass); /** * Returns the value of the 'Weight' containment reference. *

* This feature subsets the following features: *

    *
  • '{@link org.eclipse.uml2.uml.Element#getOwnedElements() Owned Element}'
  • *
*

* * * * The minimum number of tokens that must traverse the ActivityEdge at the same time. If no weight is specified, this is equivalent to specifying a constant value of 1. *

From package UML::Activities.

* * @return the value of the 'Weight' containment reference. * @see #setWeight(ValueSpecification) * @see org.eclipse.uml2.uml.UMLPackage#getActivityEdge_Weight() * @model containment="true" resolveProxies="true" ordered="false" * @generated */ ValueSpecification getWeight(); /** * Sets the value of the '{@link org.eclipse.uml2.uml.ActivityEdge#getWeight Weight}' containment reference. * * * @param value the new value of the 'Weight' containment reference. * @see #getWeight() * @generated */ void setWeight(ValueSpecification value); /** * Creates a new {@link org.eclipse.uml2.uml.ValueSpecification}, with the specified 'Name', and 'Type', and sets the 'Weight' containment reference. * * * @param name The 'Name' for the new {@link org.eclipse.uml2.uml.ValueSpecification}, or null. * @param type The 'Type' for the new {@link org.eclipse.uml2.uml.ValueSpecification}, or null. * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.ValueSpecification} to create. * @return The new {@link org.eclipse.uml2.uml.ValueSpecification}. * @see #getWeight() * @generated */ ValueSpecification createWeight(String name, Type type, EClass eClass); /** * Returns the value of the 'Interrupts' reference. * It is bidirectional and its opposite is '{@link org.eclipse.uml2.uml.InterruptibleActivityRegion#getInterruptingEdges Interrupting Edge}'. * * * * The InterruptibleActivityRegion for which this ActivityEdge is an interruptingEdge. *

From package UML::Activities.

* * @return the value of the 'Interrupts' reference. * @see #setInterrupts(InterruptibleActivityRegion) * @see org.eclipse.uml2.uml.UMLPackage#getActivityEdge_Interrupts() * @see org.eclipse.uml2.uml.InterruptibleActivityRegion#getInterruptingEdges * @model opposite="interruptingEdge" ordered="false" * @generated */ InterruptibleActivityRegion getInterrupts(); /** * Sets the value of the '{@link org.eclipse.uml2.uml.ActivityEdge#getInterrupts Interrupts}' reference. * * * @param value the new value of the 'Interrupts' reference. * @see #getInterrupts() * @generated */ void setInterrupts(InterruptibleActivityRegion value); /** * Returns the value of the 'Source' reference. * It is bidirectional and its opposite is '{@link org.eclipse.uml2.uml.ActivityNode#getOutgoings Outgoing}'. * * * * The ActivityNode from which tokens are taken when they traverse the ActivityEdge. *

From package UML::Activities.

* * @return the value of the 'Source' reference. * @see #setSource(ActivityNode) * @see org.eclipse.uml2.uml.UMLPackage#getActivityEdge_Source() * @see org.eclipse.uml2.uml.ActivityNode#getOutgoings * @model opposite="outgoing" required="true" ordered="false" * @generated */ ActivityNode getSource(); /** * Sets the value of the '{@link org.eclipse.uml2.uml.ActivityEdge#getSource Source}' reference. * * * @param value the new value of the 'Source' reference. * @see #getSource() * @generated */ void setSource(ActivityNode value); /** * * * * If an ActivityEdge is directly owned by an Activity, then its source and target must be directly or indirectly contained in the same Activity. * activity<>null implies source.containingActivity() = activity and target.containingActivity() = activity * @param diagnostics The chain of diagnostics to which problems are to be appended. * @param context The cache of context-specific information. * * @model * @generated */ boolean validateSourceAndTarget(DiagnosticChain diagnostics, Map context); } // ActivityEdge




© 2015 - 2024 Weber Informatics LLC | Privacy Policy