blob: d8d2ff93cfb62847a8c5490886555d315da73645 [file] [log] [blame]
/**
* Copyright (c) 2014 Fraunhofer FOKUS
* 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:
* Max Bureck
*/
package org.eclipse.upr.bpmnprof;
import java.util.Map;
import org.eclipse.emf.common.util.DiagnosticChain;
import org.eclipse.emf.common.util.EList;
import org.eclipse.uml2.uml.Element;
import org.eclipse.uml2.uml.Interface;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>BPMN Interface</b></em>'.
* <!-- end-user-doc -->
*
* <!-- begin-model-doc -->
* <p>From package BPMNProfile::CoreStructure::Service.</p>
* <p>From package BPMNProfile::Collaboration::Conversation.</p>
* <p>From package BPMNProfile::CoreStructure.</p>
* <p>From package BPMNProfile::Process::Activities.</p>
* <!-- end-model-doc -->
*
* <p>
* The following features are supported:
* <ul>
* <li>{@link org.eclipse.upr.bpmnprof.BPMNInterface#getBase_Interface <em>Base Interface</em>}</li>
* <li>{@link org.eclipse.upr.bpmnprof.BPMNInterface#getImplementationRef <em>Implementation Ref</em>}</li>
* <li>{@link org.eclipse.upr.bpmnprof.BPMNInterface#getOperations <em>Operations</em>}</li>
* <li>{@link org.eclipse.upr.bpmnprof.BPMNInterface#getCallableElements <em>Callable Elements</em>}</li>
* </ul>
* </p>
*
* @see org.eclipse.upr.bpmnprof.BpmnprofPackage#getBPMNInterface()
* @model
* @generated
*/
public interface BPMNInterface extends RootElement {
/**
* Returns the value of the '<em><b>Base Interface</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Base Interface</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Base Interface</em>' reference.
* @see #setBase_Interface(Interface)
* @see org.eclipse.upr.bpmnprof.BpmnprofPackage#getBPMNInterface_Base_Interface()
* @model required="true" ordered="false"
* @generated
*/
Interface getBase_Interface();
/**
* Sets the value of the '{@link org.eclipse.upr.bpmnprof.BPMNInterface#getBase_Interface <em>Base Interface</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Base Interface</em>' reference.
* @see #getBase_Interface()
* @generated
*/
void setBase_Interface(Interface value);
/**
* Returns the value of the '<em><b>Implementation Ref</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Implementation Ref</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Implementation Ref</em>' reference.
* @see #setImplementationRef(Element)
* @see org.eclipse.upr.bpmnprof.BpmnprofPackage#getBPMNInterface_ImplementationRef()
* @model ordered="false"
* @generated
*/
Element getImplementationRef();
/**
* Sets the value of the '{@link org.eclipse.upr.bpmnprof.BPMNInterface#getImplementationRef <em>Implementation Ref</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Implementation Ref</em>' reference.
* @see #getImplementationRef()
* @generated
*/
void setImplementationRef(Element value);
/**
* Returns the value of the '<em><b>Operations</b></em>' reference list.
* The list contents are of type {@link org.eclipse.upr.bpmnprof.BPMNOperation}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Operations</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Operations</em>' reference list.
* @see org.eclipse.upr.bpmnprof.BpmnprofPackage#getBPMNInterface_Operations()
* @model required="true" transient="true" volatile="true" derived="true" ordered="false"
* @generated
*/
EList<BPMNOperation> getOperations();
/**
* Returns the value of the '<em><b>Callable Elements</b></em>' reference list.
* The list contents are of type {@link org.eclipse.upr.bpmnprof.CallableElement}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Callable Elements</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Callable Elements</em>' reference list.
* @see org.eclipse.upr.bpmnprof.BpmnprofPackage#getBPMNInterface_CallableElements()
* @model required="true" transient="true" volatile="true" derived="true" ordered="false"
* @generated
*/
EList<CallableElement> getCallableElements();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* Interface may have from 1 to many operations.
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
* @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='Interface.operation.multiplicity'"
* @generated
*/
boolean Interfaceoperationmultiplicity(DiagnosticChain diagnostics, Map<Object, Object> context);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* All interface operations should have BPMN <<Operation>> sterereotype applied.
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
* @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='Interface.ownedOperation'"
* @generated
*/
boolean InterfaceownedOperation(DiagnosticChain diagnostics, Map<Object, Object> context);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* BPMNInterface::/callableElements : CallableElement [*] = Interface.interfaceRealization.implementingClassifier
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
* @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='BPMNInterface.callableElements'"
* @generated
*/
boolean BPMNInterfacecallableElements(DiagnosticChain diagnostics, Map<Object, Object> context);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
* BPMNInterface::/operations: BPMNOperation : Interface.ownedOperation
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
* @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='BPMNInterface.operations'"
* @generated
*/
boolean BPMNInterfaceoperations(DiagnosticChain diagnostics, Map<Object, Object> context);
} // BPMNInterface