|  | Advanced Modelling FeaturesBin
 The Ship Process | |
| 
 Ships are modelled as simulation processes. The Ship class carries four attributes to store the number of containers this ship delivers to each of the four different storage areas (bins); they are called numNorth, numCentral, numEast, and numGermany. Let's have a look at the lifeCycle() of this process: 
/**
 * Describes this ship's life cycle:
 *
 * On arrival, the ship will deliver a number of containers to each of
 * the four storage areas. The duration of the unloading is not modelled.
 * After unloading it leaves the system.
 */
public void lifeCycle() throws SuspendExecution {
   // the ship arrives and delivers containers to each bin
   // east
   myModel.east.store(numEast);
   sendTraceNote("number of containers in east: " + myModel.east.getAvail());
   // north
   myModel.north.store(numNorth);
   sendTraceNote("number of containers in north: " + myModel.north.getAvail());
   // central
   myModel.central.store(numCentral);
   sendTraceNote("number of containers in central: " + myModel.central.getAvail());
   // Germany
   myModel.germany.store(numGermany);
   sendTraceNote("number of containers in german: " + myModel.germany.getAvail());
   // send a message into the trace after service
   sendTraceNote("leaves the port");
   // ship finished and dismissed...
}
The lifeCycle() of a ship is exceptionally simple. The activated ship just delivers its stored containers to the corresponding bins and... terminates. Simple as that. | ||
| http://desmoj.sourceforge.net/tutorial/advanced/bin3.html |