Class AbstractAnyToAllChannel
java.lang.Object
org.palladiosimulator.indirections.scheduler.AbstractSimDataChannelResource
org.palladiosimulator.indirections.scheduler.implementations.generic.AbstractAnyToAllChannel
- All Implemented Interfaces:
IDataChannelResource
- Direct Known Subclasses:
AnyToAllPollingDataChannel,AnyToAllPushingDataChannel
-
Field Summary
FieldsFields 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
ConstructorsConstructorDescriptionAbstractAnyToAllChannel(DataChannel 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 voidacceptData(DataSinkRole role, IndirectionDate date) protected booleancanAcceptData(DataSinkRole role) protected booleancanProvideData(DataSourceRole role) protected voidprotected voidprotected voidhandleNewWatermarkedTime(double oldWatermarkTime, double watermarkTime) protected voidprovideDataAndAdvance(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, isPushingRole, notifyProcessesCanGetNewData, notifyProcessesCanPutNewData, processDataAvailableToGet, put, scheduleAdvance, scheduleDemand, unscheduleAdvance
-
Field Details
-
data
-
-
Constructor Details
-
AbstractAnyToAllChannel
public AbstractAnyToAllChannel(DataChannel 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:
acceptDatain classAbstractSimDataChannelResource
-
canAcceptData
- Specified by:
canAcceptDatain classAbstractSimDataChannelResource
-
canProvideData
- Specified by:
canProvideDatain classAbstractSimDataChannelResource
-
provideDataAndAdvance
Description copied from class:AbstractSimDataChannelResourceIt 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:
provideDataAndAdvancein classAbstractSimDataChannelResource
-
handleCannotProceedToGet
- Specified by:
handleCannotProceedToGetin classAbstractSimDataChannelResource
-
handleCannotProceedToPut
- Specified by:
handleCannotProceedToPutin classAbstractSimDataChannelResource
-
handleNewWatermarkedTime
protected void handleNewWatermarkedTime(double oldWatermarkTime, double watermarkTime) - Specified by:
handleNewWatermarkedTimein classAbstractSimDataChannelResource
-