![JAR search and dependency download from the Maven repository](/logo.png)
fUML.Semantics.CommonBehaviors.Communications.EventOccurrence Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of fuml Show documentation
Show all versions of fuml Show documentation
This open source software is a reference implementation, consisting of software and related files, for the OMG specification called the Semantics of a Foundational Subset for Executable UML Models (fUML). The reference implementation is intended to implement the execution semantics of UML activity models, accepting an XMI file from a conformant UML model as its input and providing an execution trace of the selected activity model(s) as its output. The core execution engine, which is directly generated from the normative syntactic and semantic models for fUML, may also be used as a library implementation of fUML in other software.
/*
* Copyright 2015-2017 Data Access Technologies, Inc.
*
* Licensed under the Academic Free License version 3.0
* (http://www.opensource.org/licenses/afl-3.0.php), except as stated
* in the file entitled Licensing-Information.
*/
package fUML.Semantics.CommonBehaviors.Communications;
import org.modeldriven.fuml.FumlObject;
import fUML.Semantics.Classes.Kernel.Reference;
public abstract class EventOccurrence extends FumlObject {
public Reference target = null;
public void sendTo(Reference target) {
// Set the target reference and start the SendingBehavior, which
// will send this event occurrence to the target.
this.target = target;
_startObjectBehavior();
}
protected void doSend() {
// Send this event occurrence to the target.
this.target.send(this);
}
public abstract boolean match(fUML.Syntax.CommonBehaviors.Communications.Trigger trigger);
public boolean matchAny(fUML.Syntax.CommonBehaviors.Communications.TriggerList triggers) {
// Check that at least one of the given triggers is matched by this
// event occurrence.
boolean matches = false;
int i = 1;
while(!matches & i <= triggers.size()) {
if(this.match(triggers.get(i-1))) {
matches = true;
}
i = i + 1;
}
return matches;
}
public abstract fUML.Semantics.CommonBehaviors.BasicBehaviors.ParameterValueList getParameterValues();
private EventOccurrence_SendingBehaviorExecution behavior = new EventOccurrence_SendingBehaviorExecution(this);
private void _startObjectBehavior() {
this.behavior._startObjectBehavior();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy