Skip to content
Snippets Groups Projects
Commit 14529236 authored by Terry D. Norbraten's avatar Terry D. Norbraten
Browse files

[Terry N.] remove gen'd material

parent dd4fdca9
No related branches found
No related tags found
No related merge requests found
package dis7;
// Standard library imports
import java.util.*;
// Application specific imports
import simkit.*;
import simkit.random.*;
public class ArrivalProcessOpenDis7 extends SimkitOpenDis7Examples.run.OpenDisHelper {
/* Simulation Parameters */
/* inherited parameter java.lang.String address */
/* inherited parameter int port */
/** Inter arrival time */
private simkit.random.RandomVariate tA;
/* Simulation State Variables */
/** Number of arrivals */
protected int N;
/** Number of entity creations */
protected int C;
/** Number of entity removals */
protected int R;
@viskit.ParameterMap (
names = {"address",
"port",
"tA"},
types = {"java.lang.String",
"int",
"simkit.random.RandomVariate"}
)
public ArrivalProcessOpenDis7(java.lang.String address,
int port,
simkit.random.RandomVariate tA) {
super(address, port);
setTA(tA);
}
@Override
public void reset() {
super.reset();
N = 0;
C = 1;
R = 0;
}
/** Bootstraps the first simulation event */
public void doRun() {
firePropertyChange("N", getN());
firePropertyChange("C", getC());
firePropertyChange("R", getR());
waitDelay("Arrival", tA.generate(), Priority.DEFAULT);
}
public void doArrival() {
/* Code insertion for Event Arrival */
int everyTen = 10;
int oldC = C;
int oldR = R;
if ((N % everyTen) == 0) {
disChannel.removeEntity(entityStatePdu_1.getEntityID());
firePropertyChange("R", oldR, R+1);
} else {
disChannel.addEntity(entityStatePdu_1.getEntityID());
Random random = new Random();
int randX = random.nextInt(10);
int randY = random.nextInt(10);
entityStatePdu_1.getEntityLocation().setX(randX);
entityStatePdu_1.getEntityLocation().setY(randY);
System.out.println("New entity created at: "+randX+" "+randY);
firePropertyChange("C", oldC, C+1);
}
/* End Code insertion */
/* StateTransition for N */
int _old_N = getN();
N = N + 1;
firePropertyChange("N", _old_N, getN());
waitDelay("Arrival", tA.generate(), Priority.DEFAULT);
}
public final void setTA(simkit.random.RandomVariate tA) {
this.tA = tA;
}
public simkit.random.RandomVariate getTA() {
return tA;
}
public int getN() {
return N;
}
public int getC() {
return C;
}
public int getR() {
return R;
}
/* Inserted code for ArrivalProcessOpenDis7 */
/* End inserted code */
}
package dis7;
// Standard library imports
import java.util.*;
// Application specific imports
import simkit.*;
import simkit.random.*;
public class SimpleServer extends SimEntityBase {
/* Simulation Parameters */
private simkit.random.RandomVariate serviceTime;
private int totalNumberServers;
/* Simulation State Variables */
protected int numberInQueue;
protected int numberAvailableServers;
@viskit.ParameterMap (
names = {"serviceTime",
"totalNumberServers"},
types = {"simkit.random.RandomVariate",
"int"}
)
/** Creates a new default instance of SimpleServer */
public SimpleServer() {
}
public SimpleServer(simkit.random.RandomVariate serviceTime,
int totalNumberServers) {
setServiceTime(serviceTime);
setTotalNumberServers(totalNumberServers);
}
@Override
public void reset() {
super.reset();
numberInQueue = 0;
numberAvailableServers = totalNumberServers;
}
/** Bootstraps the first simulation event */
public void doRun() {
firePropertyChange("numberInQueue", getNumberInQueue());
firePropertyChange("numberAvailableServers", getNumberAvailableServers());
}
public void doArrival() {
/* StateTransition for numberInQueue */
int _old_NumberInQueue = getNumberInQueue();
numberInQueue = numberInQueue + 1;
firePropertyChange("numberInQueue", _old_NumberInQueue, getNumberInQueue());
if (numberAvailableServers > 0) {
waitDelay("StartService", 0.0, Priority.DEFAULT, (Object) numberAvailableServers);
}
}
public void doStartService(int arg_0) {
/* Code insertion for Event StartService */
System.out.println("numberAvailableServers"+arg_0);
/* End Code insertion */
/* StateTransition for numberInQueue */
int _old_NumberInQueue = getNumberInQueue();
numberInQueue = numberInQueue - 1;
firePropertyChange("numberInQueue", _old_NumberInQueue, getNumberInQueue());
/* StateTransition for numberAvailableServers */
int _old_NumberAvailableServers = getNumberAvailableServers();
numberAvailableServers = numberAvailableServers - 1;
firePropertyChange("numberAvailableServers", _old_NumberAvailableServers, getNumberAvailableServers());
waitDelay("EndService", serviceTime.generate(), Priority.DEFAULT);
}
public void doEndService() {
/* StateTransition for numberAvailableServers */
int _old_NumberAvailableServers = getNumberAvailableServers();
numberAvailableServers = numberAvailableServers + 1;
firePropertyChange("numberAvailableServers", _old_NumberAvailableServers, getNumberAvailableServers());
if (numberInQueue > 0) {
waitDelay("StartService", 0.0, Priority.HIGH);
}
}
public final void setServiceTime(simkit.random.RandomVariate serviceTime) {
this.serviceTime = serviceTime;
}
public simkit.random.RandomVariate getServiceTime() {
return serviceTime;
}
public final void setTotalNumberServers(int totalNumberServers) {
this.totalNumberServers = totalNumberServers;
}
public int getTotalNumberServers() {
return totalNumberServers;
}
public int getNumberInQueue() {
return numberInQueue;
}
public int getNumberAvailableServers() {
return numberAvailableServers;
}
@Override
public String toString() {
return getName();
}
}
package dis7;
public class SimpleServerDis7Assembly extends viskit.assembly.ViskitAssembly {
public SimpleServerDis7Assembly() {
super();
setStopTime(100.0);
setVerbose(false);
setNumberReplications(1);
setPrintReplicationReports(true);
setPrintSummaryReport(true);
setSaveReplicationData(false);
}
@Override
protected void createSimEntities() {
addSimEntity( "arrivalProcessOpenDis7",
new SimkitOpenDis7Examples.ArrivalProcessOpenDis7(
simkit.random.RandomVariateFactory.getInstance(
"Uniform",
0.9, 2.2
)
)
);
addSimEntity( "simpleServer",
new SimkitOpenDis7Examples.SimpleServer(
1,
simkit.random.RandomVariateFactory.getInstance(
"Gamma",
1.7, 1.8
)
)
);
addSimEventListenerConnection("simpleServer", "arrivalProcessOpenDis7");
super.createSimEntities();
}
@Override
public void createPropertyChangeListeners() {
addPropertyChangeListenerConnection("numInQueueStat", "numberInQueue", "simpleServer");
addPropertyChangeListenerConnection("numAvailServersStat", "numberAvailableServers", "simpleServer");
addPropertyChangeListenerConnection("numArrivalsStat", "numberArrivals", "arrivalProcessOpenDis7");
addPropertyChangeListenerConnection("numServedStat", "numberServed", "simpleServer");
super.createPropertyChangeListeners();
}
@Override
public void createReplicationStats() {
addReplicationStats("numInQueueStat",
new simkit.stat.SimpleStatsTimeVarying(
"numberInQueue"
)
);
addReplicationStatsListenerConnection("numInQueueStat", "numberInQueue", "simpleServer");
addReplicationStats("numAvailServersStat",
new simkit.stat.SimpleStatsTimeVarying(
"numberAvailableServers"
)
);
addReplicationStatsListenerConnection("numAvailServersStat", "numberAvailableServers", "simpleServer");
addReplicationStats("numArrivalsStat",
new simkit.stat.SimpleStatsTimeVarying(
"numberArrivals"
)
);
addReplicationStatsListenerConnection("numArrivalsStat", "numberArrivals", "arrivalProcessOpenDis7");
addReplicationStats("numServedStat",
new simkit.stat.SimpleStatsTimeVarying(
"numberServed"
)
);
addReplicationStatsListenerConnection("numServedStat", "numberServed", "simpleServer");
super.createReplicationStats();
}
@Override
public void createDesignPointStats() {
super.createDesignPointStats();
}
@Override
public void printInfo() {
System.out.println();
System.out.println("Entity Details");
System.out.println("--------------");
System.out.println(getSimEntityByName("arrivalProcessOpenDis7"));
System.out.println(getSimEntityByName("simpleServer"));
System.out.println("--------------");
}
public static void main(String[] args) {
SimpleServerDis7Assembly simpleServerDis7Assembly = new SimpleServerDis7Assembly();
new Thread(simpleServerDis7Assembly).start();
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment