DJ - The delegate-job type.DQ - The queue-type for delegate jobs.J - The job type.Q - The queue type for jobs.public class Jackson<DJ extends AbstractSimJob,DQ extends SimQueue,J extends SimJob,Q extends Jackson> extends AbstractSimQueueComposite_LocalStart<DJ,DQ,J,Q>
SimQueueComposite implementation of a Jackson queueing network.
This queue uses the LocalStart model as explained with AbstractSimQueueComposite_LocalStart.
For more documentation see JacksonSimQueueSelector.
Copyright (C) 2005-2017 Jan de Jongh, TNO
This file is covered by the LICENSE file in the root of this project.
AbstractSimQueueComposite.RealDelegateJobMapper<J extends SimJob,DJ extends SimJob>AbstractSimEntity.Notifier, AbstractSimEntity.PreNotificationHookSimQueue.AutoRevocationPolicySimEntity.Action, SimEntity.UnknownNotificationTypePolicy, SimEntity.UnknownOperationPolicyrealDelegateJobMappereventsScheduled, SANITYUSE_ARRAY_OPTIMIZATION| Constructor and Description |
|---|
Jackson(org.javades.jsimulation.r5.SimEventList eventList,
Set<DQ> queues,
double[] pdfArrival,
double[][] pdfTransition,
Random userRNG,
DelegateSimJobFactory delegateSimJobFactory)
Creates a Jackson queueing network.
|
| Modifier and Type | Method and Description |
|---|---|
Jackson<DJ,DQ,J,Q> |
getCopySimQueue()
Returns a new
Jackson object on the same SimEventList with copies of the sub-queues and
probability arguments, a new RNG, and the same delegate-job factory. |
protected void |
processSubQueueNotifications(List<MultiSimQueueNotificationProcessor.Notification<DJ,DQ>> notifications)
Calls super method (and made final).
|
protected void |
resetEntitySubClass()
Calls super method and clear the administration of visits.
|
String |
toStringDefault()
Returns "Jackson[queue list]".
|
getQoS, getQoSClass, getServiceTimeForJob, insertJobInQueueUponArrival, insertJobInQueueUponStart, isStartArmed, queueAccessVacationDropSubClass, removeJobFromQueueUponDeparture, removeJobFromQueueUponDrop, removeJobFromQueueUponRevokation, rescheduleAfterArrival, rescheduleAfterDeparture, rescheduleAfterDrop, rescheduleAfterRevokation, rescheduleAfterStart, rescheduleForNewServerAccessCredits, setServerAccessCreditsSubClassaddRealJobLocal, getCopySimQueues, getCopySubSimQueues, getDelegateJob, getDelegateJobMild, getDelegateSimJobFactory, getIndex, getIndex, getQueue, getQueue, getQueues, getRealJob, getRealJob, getSimQueueSelector, isDelegateJob, isRealJob, notifyResetEntity, notifyStateChanged, notifyUpdate, removeJobsFromQueueLocal, resetSimQueueSelector, selectFirstQueue, selectNextQueue, setDelegateSimJobFactoryarrive, autoRevoke, cancelDepartureEvent, cancelDepartureEvent, depart, departureFromEventList, drop, getAutoRevocationPolicy, getDepartureEvents, getDepartureEvents, getFirstJob, getFirstJobInServiceArea, getFirstJobInWaitingArea, getJobs, getJobsInServiceArea, getJobsInWaitingArea, getNumberOfJobs, getNumberOfJobsInServiceArea, getNumberOfJobsInWaitingArea, getServerAccessCredits, hasJobs, hasJobsInServiceArea, hasJobsInWaitingArea, hasServerAcccessCredits, isJob, isJobInServiceArea, isJobInWaitingArea, isQueueAccessVacation, registerStdOutSimQueueListener, revoke, revoke, scheduleDepartureEvent, scheduleJobArrival, setAutoRevocationPolicy, setQueueAccessVacation, setServerAccessCredits, start, takeServerAccessCredit, triggerPotentialNewStartArmed, unregisterStdOutSimQueueListeneraddPendingNotification, addPendingNotification, clearAndUnlockPendingNotificationsIfLocked, delegateOperation, doAfterNotifications, doOperation, fireAndLockPendingNotifications, getEventList, getLastUpdateTime, getRegisteredDelegatedOperations, getRegisteredNotificationTypes, getRegisteredOperations, getSimEntityListeners, getUnknownNotificationTypePolicy, getUnknownOperationPolicy, isIgnoreEventListReset, notifyEventListReset, registerDelegatedOperation, registerNotificationType, registerOperation, registerPreEventHook, registerPreNotificationHook, registerPreUpdateHook, registerSimEntityListener, registerStdOutSimEntityListener, removeDelegationForOperation, resetEntity, setIgnoreEventListReset, setName, setUnknownNotificationTypePolicy, setUnknownOperationPolicy, toString, unregisterSimEntityListener, unregisterStdOutSimEntityListener, updateclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitarrive, getAutoRevocationPolicy, getJobs, getJobsInServiceArea, getJobsInWaitingArea, getNumberOfJobs, getNumberOfJobsInServiceArea, getNumberOfJobsInWaitingArea, getServerAccessCredits, isJob, isJobInServiceArea, isJobInWaitingArea, isQueueAccessVacation, revoke, revoke, setAutoRevocationPolicy, setQueueAccessVacation, setServerAccessCreditsdoAfterNotifications, doOperation, getEventList, getLastUpdateTime, getRegisteredNotificationTypes, getRegisteredOperations, getSimEntityListeners, getUnknownNotificationTypePolicy, getUnknownOperationPolicy, isIgnoreEventListReset, registerSimEntityListener, resetEntity, setIgnoreEventListReset, setName, setUnknownNotificationTypePolicy, setUnknownOperationPolicy, unregisterSimEntityListener, updatepublic Jackson(org.javades.jsimulation.r5.SimEventList eventList,
Set<DQ> queues,
double[] pdfArrival,
double[][] pdfTransition,
Random userRNG,
DelegateSimJobFactory delegateSimJobFactory)
For brevity, |Q| is used as a shorthand for queues.size ().
eventList - The event list to use.queues - The queues, an iteration over the set must return (deterministically)
the non-null queues
as indexed in the probability arguments;
see also JacksonSimQueueSelector.JacksonSimQueueSelector(java.util.Set<DQ>, double[], double[][], java.util.Random).pdfArrival - See JacksonSimQueueSelector.JacksonSimQueueSelector(java.util.Set<DQ>, double[], double[][], java.util.Random).pdfTransition - See JacksonSimQueueSelector.JacksonSimQueueSelector(java.util.Set<DQ>, double[], double[][], java.util.Random).userRNG - See JacksonSimQueueSelector.JacksonSimQueueSelector(java.util.Set<DQ>, double[], double[][], java.util.Random).delegateSimJobFactory - An optional factory for the delegate SimJobs.IllegalArgumentException - If the event list is null,
the queues argument is null,
or if it contains a null entry,
or if one or both of the probability arguments is improperly dimensioned or contains
illegal values.DelegateSimJobFactory,
DefaultDelegateSimJobFactorypublic Jackson<DJ,DQ,J,Q> getCopySimQueue()
Jackson object on the same SimEventList with copies of the sub-queues and
probability arguments, a new RNG, and the same delegate-job factory.Jackson object on the same SimEventList with copies of the sub-queues and
probability arguments, a new RNG, and the same delegate-job factory.UnsupportedOperationException - If the encapsulated queues could not be copied through SimQueue.getCopySimQueue().AbstractSimEntity.getEventList(),
AbstractSimQueueComposite.getCopySubSimQueues(),
JacksonSimQueueSelector.getPdfArrival(),
JacksonSimQueueSelector.getPdfTransition(),
AbstractSimQueueComposite.getDelegateSimJobFactory()public String toStringDefault()
toStringDefault in interface SimEntitytoStringDefault in class AbstractSimQueue<J extends SimJob,Q extends Jackson>SimEntity.setName(java.lang.String),
Object.toString()protected final void resetEntitySubClass()
resetEntitySubClass in class AbstractSimQueueComposite_LocalStart<DJ extends AbstractSimJob,DQ extends SimQueue,J extends SimJob,Q extends Jackson>AbstractSimQueueComposite_LocalStart.removeJobFromQueueUponRevokation(J, double, boolean),
AbstractSimQueueComposite_LocalStart.rescheduleAfterRevokation(J, double, boolean),
SimEntity.resetEntity()protected final void processSubQueueNotifications(List<MultiSimQueueNotificationProcessor.Notification<DJ,DQ>> notifications)
processSubQueueNotifications in class AbstractSimQueueComposite_LocalStart<DJ extends AbstractSimJob,DQ extends SimQueue,J extends SimJob,Q extends Jackson>notifications - The sub-queue notifications, will be modified; empty upon return.MultiSimQueueNotificationProcessor,
MultiSimQueueNotificationProcessor.Processor,
MultiSimQueueNotificationProcessor.setProcessor(org.javades.jqueues.r5.listener.MultiSimQueueNotificationProcessor.Processor),
SimEntitySimpleEventType.RESET,
SimJQSimpleEventType.ARRIVAL,
SimQueueSimpleEventType.QUEUE_ACCESS_VACATION,
SimQueueSimpleEventType.QAV_START,
SimQueueSimpleEventType.QAV_END,
SimQueueSimpleEventType.SERVER_ACCESS_CREDITS,
SimQueueSimpleEventType.OUT_OF_SAC,
SimQueueSimpleEventType.REGAINED_SAC,
SimQueueSimpleEventType.STA_FALSE,
SimQueueSimpleEventType.STA_TRUE,
SimJQSimpleEventType.DROP,
SimJQSimpleEventType.REVOCATION,
SimJQSimpleEventType.AUTO_REVOCATION,
SimJQSimpleEventType.START,
SimJQSimpleEventType.DEPARTURE,
AbstractSimEntity.addPendingNotification(java.util.Map<org.javades.jqueues.r5.entity.SimEntitySimpleEventType.Member, org.javades.jqueues.r5.entity.SimEntityEvent>),
SimQueue.arrive(double, J),
AbstractSimQueue.start(double, J),
AbstractSimQueueComposite.selectNextQueue(double, J, DQ),
AbstractSimQueue.depart(double, J),
AbstractSimQueue.triggerPotentialNewStartArmed(double),
AbstractSimEntity.clearAndUnlockPendingNotificationsIfLocked(),
AbstractSimEntity.fireAndLockPendingNotifications()Copyright © 2018. All rights reserved.