blob: e2ed6fa5af6d72ce2b5e543246100e4943db8494 [file] [log] [blame]
/*
* Copyright (c) 2005, 2006 IBM Corporation 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
*
* $Id: BroadcastSignalAction.java,v 1.3 2006/12/14 15:49:27 khussey Exp $
*/
package org.eclipse.uml2.uml;
import java.util.Map;
import org.eclipse.emf.common.util.DiagnosticChain;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Broadcast Signal Action</b></em>'.
* <!-- end-user-doc -->
*
* <!-- begin-model-doc -->
* A broadcast signal action is an action that transmits a signal instance to all the potential target objects in the system, which may cause the firing of a state machine transitions or the execution of associated activities of a target object. The argument values are available to the execution of associated behaviors. The requestor continues execution immediately after the signals are sent out. It does not wait for receipt. Any reply messages are ignored and are not transmitted to the requestor.
* <!-- end-model-doc -->
*
* <p>
* The following features are supported:
* <ul>
* <li>{@link org.eclipse.uml2.uml.BroadcastSignalAction#getSignal <em>Signal</em>}</li>
* </ul>
* </p>
*
* @see org.eclipse.uml2.uml.UMLPackage#getBroadcastSignalAction()
* @model
* @generated
*/
public interface BroadcastSignalAction
extends InvocationAction {
/**
* Returns the value of the '<em><b>Signal</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The specification of signal object transmitted to the target objects.
* <!-- end-model-doc -->
* @return the value of the '<em>Signal</em>' reference.
* @see #setSignal(Signal)
* @see org.eclipse.uml2.uml.UMLPackage#getBroadcastSignalAction_Signal()
* @model required="true" ordered="false"
* @generated
*/
Signal getSignal();
/**
* Sets the value of the '{@link org.eclipse.uml2.uml.BroadcastSignalAction#getSignal <em>Signal</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Signal</em>' reference.
* @see #getSignal()
* @generated
*/
void setSignal(Signal value);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The number and order of argument pins must be the same as the number and order of attributes in the signal.
* true
* <!-- end-model-doc -->
* @model
* @generated
*/
boolean validateNumberAndOrder(DiagnosticChain diagnostics,
Map<Object, Object> context);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* The type, ordering, and multiplicity of an argument pin must be the same as the corresponding attribute of the signal.
* true
* <!-- end-model-doc -->
* @model
* @generated
*/
boolean validateTypeOrderingMultiplicity(DiagnosticChain diagnostics,
Map<Object, Object> context);
} // BroadcastSignalAction