Class NetworkDependency

java.lang.Object
desmoj.core.simulator.NamedObject
desmoj.core.simulator.ModelComponent
desmoj.core.simulator.Schedulable
desmoj.core.simulator.Entity
de.rss.fachstudie.MiSim.entities.networking.NetworkDependency

public class NetworkDependency
extends desmoj.core.simulator.Entity
This is an instance of a Dependency. It describes an actual existing dependency of a Request, that arrived at a MicroserviceInstance.
Author:
Lion Wagner
See Also:
Dependency, Request, MicroserviceInstance
  • Field Summary

    Fields inherited from class desmoj.core.simulator.Schedulable

    _schedule
  • Constructor Summary

    Constructors
    Constructor Description
    NetworkDependency​(desmoj.core.simulator.Model model, Request parent_request, Operation target_op, Dependency dependency_data)  
  • Method Summary

    Modifier and Type Method Description
    Request getChild_request()  
    double getNextCustomDelay()  
    double getNextExtraDelay()  
    Request getParent_request()  
    Operation getTarget_op()  
    Microservice getTarget_Service()  
    boolean hasCustomDelay()  
    boolean isCompleted()  
    void updateChild_request​(Request child_request)
    This method is used to overwrite the child request that was used to try to complete this dependency.

    Methods inherited from class desmoj.core.simulator.Entity

    clone, generateTraceForScheduling, getIdentNumber, getQueueingPriority, getQueues, getScheduledEvents, isEqual, isLarger, isLargerOrEqual, isNotEqual, isQueued, isSimProcess, isSmaller, isSmallerOrEqual, schedule, schedule, schedule, schedule, schedule, schedule, schedule, schedule, schedule, scheduleAfter, scheduleAfter, scheduleAfter, scheduleBefore, scheduleBefore, scheduleBefore, schedulePreempt, schedulePreempt, schedulePreempt, setQueueingPriority

    Methods inherited from class desmoj.core.simulator.Schedulable

    assignReporter, cancel, getCorrespondingReportable, isCurrent, isScheduled, rename, reSchedule, reSchedule, reSchedulePreempt, scheduledNext, setCorrespondingReportable

    Methods inherited from class desmoj.core.simulator.ModelComponent

    current, currentEntity, currentEntityAll, currentEvent, currentlySendDebugNotes, currentlySendTraceNotes, currentModel, currentSimProcess, debugIsOn, debugOff, debugOn, getModel, isExperimentCompatible, isModelCompatible, presentTime, sendDebugNote, sendMessage, sendTraceNote, sendWarning, skipTraceNote, skipTraceNote, traceIsOn, traceOff, traceOn

    Methods inherited from class desmoj.core.simulator.NamedObject

    getName, getQuotedName, toString

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • NetworkDependency

      public NetworkDependency​(desmoj.core.simulator.Model model, Request parent_request, Operation target_op, Dependency dependency_data)
  • Method Details

    • getParent_request

      public Request getParent_request()
    • getTarget_Service

      public Microservice getTarget_Service()
    • getTarget_op

      public Operation getTarget_op()
    • isCompleted

      public boolean isCompleted()
    • getChild_request

      public Request getChild_request()
    • updateChild_request

      public void updateChild_request​(Request child_request)
      This method is used to overwrite the child request that was used to try to complete this dependency. For example, if a retry creates a new request because the previous one timed out, it has to notify (update) the NetworkDependency that a new child request for this dependency was created.
      Parameters:
      child_request - new child request that overwrites the current one
    • getNextExtraDelay

      public double getNextExtraDelay()
    • hasCustomDelay

      public boolean hasCustomDelay()
    • getNextCustomDelay

      public double getNextCustomDelay()