Class D4_MedianWindowing
java.lang.Object
org.palladiosimulator.indirections.scheduler.AbstractSimDataChannelResource
org.palladiosimulator.indirections.scheduler.implementations.D4_MedianWindowing
- All Implemented Interfaces:
IDataChannelResource
-
Field Summary
Modifier and TypeFieldDescriptionprotected final Queue<IndirectionDate>
static final String
protected final Map<Emitters.Window,
List<IndirectionDate>> Fields inherited from class org.palladiosimulator.indirections.scheduler.AbstractSimDataChannelResource
afterAcceptingAgeCalculator, assemblyContext, beforeProvidingAgeCalculator, dataChannel, dataChannelResourceRegistry, discardedAgeCalculator, id, mainContext, model, name, numberOfDiscardedIncomingElementsCalculator, numberOfDiscardedOutgoingElementsCalculator, numberOfStoredIncomingElementsCalculator, numberOfStoredOutgoingElementsCalculator, processesWaitingToGet, processesWaitingToPut, resourceTableManager, simulatedThreadComponentFactory, waitingToGetTimeCalculator, waitingToPutTimeCalculator
-
Constructor Summary
ConstructorDescriptionD4_MedianWindowing
(JavaClassDataChannel dataChannel, org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.simulizar.interpreter.InterpreterDefaultContext mainContext, de.uka.ipd.sdq.scheduler.SchedulerModel model, org.palladiosimulator.simulizar.di.component.interfaces.SimulatedThreadComponent.Factory simulatedThreadComponentFactory, DataChannelResourceRegistry dataChannelResourceRegistry) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
acceptData
(DataSinkRole role, IndirectionDate date) protected boolean
canAcceptData
(DataSinkRole role) protected boolean
canProvideData
(DataSourceRole role) protected void
emit
(Emitters.Window window) protected void
protected void
protected void
handleNewWatermarkedTime
(double oldWatermarkTime, double watermarkTime) protected boolean
isPushingRole
(DataSourceRole role) protected void
provideDataAndAdvance
(DataSourceRole role, Consumer<IndirectionDate> continuation) It must hold that#provideDataAndAdvance(DataChannelSourceConnector)
can be called iffAbstractSimDataChannelResource.canProvideData(DataChannelSourceConnector)
was true immediately before the call.Methods inherited from class org.palladiosimulator.indirections.scheduler.AbstractSimDataChannelResource
advance, blockUntilCanGet, blockUntilCanPut, continueWithoutData, discardDataAndContinue, discardDateIfTooOld, discardIncomingDate, get, getCurrentWatermarkedTime, getId, getName, isDateTooOld, notifyProcessesCanGetNewData, notifyProcessesCanPutNewData, processDataAvailableToGet, put, scheduleAdvance, scheduleDemand, unscheduleAdvance
-
Field Details
-
GRACE_PERIOD_PARAMETER_NAME
- See Also:
-
windowToDates
-
data
-
-
Constructor Details
-
D4_MedianWindowing
public D4_MedianWindowing(JavaClassDataChannel dataChannel, org.palladiosimulator.pcm.core.composition.AssemblyContext assemblyContext, org.palladiosimulator.simulizar.interpreter.InterpreterDefaultContext mainContext, de.uka.ipd.sdq.scheduler.SchedulerModel model, org.palladiosimulator.simulizar.di.component.interfaces.SimulatedThreadComponent.Factory simulatedThreadComponentFactory, DataChannelResourceRegistry dataChannelResourceRegistry)
-
-
Method Details
-
acceptData
- Specified by:
acceptData
in classAbstractSimDataChannelResource
-
emit
-
canAcceptData
- Specified by:
canAcceptData
in classAbstractSimDataChannelResource
-
canProvideData
- Specified by:
canProvideData
in classAbstractSimDataChannelResource
-
isPushingRole
- Specified by:
isPushingRole
in classAbstractSimDataChannelResource
-
handleCannotProceedToGet
- Specified by:
handleCannotProceedToGet
in classAbstractSimDataChannelResource
-
handleCannotProceedToPut
- Specified by:
handleCannotProceedToPut
in classAbstractSimDataChannelResource
-
handleNewWatermarkedTime
protected void handleNewWatermarkedTime(double oldWatermarkTime, double watermarkTime) - Specified by:
handleNewWatermarkedTime
in classAbstractSimDataChannelResource
-
provideDataAndAdvance
Description copied from class:AbstractSimDataChannelResource
It must hold that#provideDataAndAdvance(DataChannelSourceConnector)
can be called iffAbstractSimDataChannelResource.canProvideData(DataChannelSourceConnector)
was true immediately before the call.Calling
#provideDataAndAdvance(DataChannelSourceConnector)
in a loop must eventually lead toAbstractSimDataChannelResource.canProvideData(DataChannelSourceConnector)
returningfalse
.- Specified by:
provideDataAndAdvance
in classAbstractSimDataChannelResource
-