public class SimpleServer extends SimEntityBase
ArrivalProcess2
.Modifier and Type | Field and Description |
---|---|
protected int |
numberAvailableServers
The number of servers that are not busy.
|
protected int |
numberInQueue
The current length of the queue.
|
protected int |
numberServed
The total number served by the system.
|
private RandomVariate |
serviceTimeGenerator
The RandomVariate used to generate service times.
|
private int |
totalNumberServers
The total number of servers in the system.
|
eventList, property
DEFAULT_ENTITY_NAME, DEFAULT_EVENT_NAME, DEFAULT_PRIORITY, EVENT_METHOD_PREFIX, NL
Constructor and Description |
---|
SimpleServer() |
SimpleServer(int totalNumberServers,
RandomVariate serviceTimeGenerator)
Creates a new Server with the given number of totalNumberServers and the
given service serviceTimeGenerator distribution.
|
Modifier and Type | Method and Description |
---|---|
void |
doArrival()
If there is an available server, schedules StartService now.
|
void |
doEndService()
If the queue is not empty, schedules StartService for now.
|
void |
doRun()
Fires property changes for numberInQueue and numberAvailableServers.
|
void |
doStartService()
Schedules EndService.
|
int |
getNumberAvailableServers() |
int |
getNumberInQueue() |
int |
getNumberInSystem() |
int |
getNumberServed() |
RandomVariate |
getServiceTimeGenerator() |
int |
getTotalNumberServers() |
void |
reset()
Resets the system to its initial state:
numberInQueue = 0
numberAvailableServers = totalNumberServers
numberServed = 0
|
void |
setServiceTimeGenerator(RandomVariate serviceTimeGenerator) |
void |
setTotalNumberServers(int totalNumberServers)
Sets the total number of totalNumberServers.
|
coldReset, dumpDoMethods, dumpDoMethodsStr, dumpNamesAndSignatures, dumpNamesAndSignaturesStr, getFullMethodName, getSignatureString, handleSimEvent, isAssignableFrom, isDebug, processSimEvent, setDebug, stopAtTime, stopOnTime
addPropertyChangeListener, addPropertyChangeListener, attemptSchedule, clearAddedProperty, compareTo, fireIndexedPropertyChange, fireIndexedPropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAddedProperties, getEventList, getEventListID, getName, getPriority, getPropertiesString, getProperty, getProperty, getPropertyChangeListeners, getSerial, interrupt, interrupt, interruptAll, interruptAll, interruptAll, interruptAllWithArgs, interruptAllWithArgs, isClearAddedPropertiesOnReset, isJustDefinedProperties, isPersistant, isReRunnable, isVerbose, parametersMatch, removePropertyChangeListener, removePropertyChangeListener, resetNextSerial, setClearAddedPropertiesOnReset, setEventList, setEventListID, setJustDefinedProperties, setName, setPersistant, setPriority, setProperty, setVerbose, toString, waitDelay, waitDelay, waitDelay, waitDelay
addSimEventListener, getSimEventListeners, notifyListeners, removeSimEventListener
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
addSimEventListener, getSimEventListeners, notifyListeners, removeSimEventListener
private int totalNumberServers
private RandomVariate serviceTimeGenerator
protected int numberAvailableServers
protected int numberInQueue
protected int numberServed
public SimpleServer()
public SimpleServer(int totalNumberServers, RandomVariate serviceTimeGenerator)
totalNumberServers
- total # serversserviceTimeGenerator
- generates service timespublic void reset()
reset
in interface ReRunnable
reset
in class BasicSimEntity
public void doRun()
public void doArrival()
public void doStartService()
public void doEndService()
public int getNumberAvailableServers()
public int getNumberInQueue()
public int getNumberInSystem()
public void setTotalNumberServers(int totalNumberServers)
totalNumberServers
- Given total number of serversjava.lang.IllegalArgumentException
- if the number of totalNumberServers is
not positive.public int getTotalNumberServers()
public void setServiceTimeGenerator(RandomVariate serviceTimeGenerator)
serviceTimeGenerator
- the RandomVariate used to generate
serviceTimeGenerator times.public RandomVariate getServiceTimeGenerator()
public int getNumberServed()