A base class for simulation timestamps regarding file writes. More...

#include <SimulationTimestampTypes.h>

Inheritance diagram for wrench::SimulationTimestampFileWrite:
wrench::SimulationTimestampPair wrench::SimulationTimestampType wrench::SimulationTimestampFileWriteCompletion wrench::SimulationTimestampFileWriteFailure wrench::SimulationTimestampFileWriteStart

Public Member Functions

FileLocation * getDestination ()
 retrieves the location from which the WorkflowFile is being copied More...
 
SimulationTimestampFileWritegetEndpoint () override
 Retrieve the matching endpoint, if any. More...
 
WorkflowFilegetFile ()
 retrieves the WorkflowFile being written More...
 
StorageServicegetService ()
 retrieves the Service that ordered file write More...
 
WorkflowTaskgetTask ()
 retrieves task associated w/ file write More...
 
- Public Member Functions inherited from wrench::SimulationTimestampType
 SimulationTimestampType ()
 
More...
 
double getDate ()
 Retrieve the date recorded for this timestamp. More...
 

Protected Member Functions

 SimulationTimestampFileWrite (WorkflowFile *file, FileLocation *dst, StorageService *service, WorkflowTask *task=nullptr)
 Constructor. More...
 
void setEndpoints ()
 Sets the endpoint of the calling object (SimulationTimestampFileWriteFailure, SimulationTimestampFileWriteTerminated, SimulationTimestampFileWriteStart) with a SimulationTimestampFileWriteStart object.
 

Protected Attributes

FileLocation * destination
 The location where the WorkflowFile was being write from.
 
WorkflowFilefile
 The WorkflowFile that was being write.
 
StorageServiceservice
 Service that initiated the write.
 
WorkflowTasktask
 Task associated with write.
 
- Protected Attributes inherited from wrench::SimulationTimestampPair
SimulationTimestampPairendpoint = nullptr
 An optional associated "endpoint" simulation timestamp.
 

Static Protected Attributes

static std::unordered_multimap< File, std::pair< SimulationTimestampFileWrite *, WorkflowTask * > > pending_file_writes
 the data structure that holds the ongoing file writes. More...
 

Detailed Description

A base class for simulation timestamps regarding file writes.

Constructor & Destructor Documentation

◆ SimulationTimestampFileWrite()

wrench::SimulationTimestampFileWrite::SimulationTimestampFileWrite ( WorkflowFile file,
FileLocation *  dst_location,
StorageService service,
WorkflowTask task = nullptr 
)
protected

Constructor.

Parameters
filethe WorkflowFile associated with this file write
dst_locationthe destination location
serviceservice requesting file write
taska task associated to this file read (or nullptr)

Member Function Documentation

◆ getDestination()

FileLocation * wrench::SimulationTimestampFileWrite::getDestination ( )

retrieves the location from which the WorkflowFile is being copied

Returns
the write's destination location

◆ getEndpoint()

SimulationTimestampFileWrite * wrench::SimulationTimestampFileWrite::getEndpoint ( )
overridevirtual

Retrieve the matching endpoint, if any.

retrieves the corresponding SimulationTimestampFileWrite object

Returns
a pointer to the start or end SimulationTimestampFileWrite object

Reimplemented from wrench::SimulationTimestampPair.

◆ getFile()

WorkflowFile * wrench::SimulationTimestampFileWrite::getFile ( )

retrieves the WorkflowFile being written

Returns
a pointer to the WorkflowFile associated with this writes

◆ getService()

StorageService * wrench::SimulationTimestampFileWrite::getService ( )

retrieves the Service that ordered file write

Returns
point to the service associated with this write

◆ getTask()

WorkflowTask * wrench::SimulationTimestampFileWrite::getTask ( )

retrieves task associated w/ file write

Returns
a pointer to the WorkflowTask associated with this timestamp

Member Data Documentation

◆ pending_file_writes

std::unordered_multimap< File, std::pair< SimulationTimestampFileWrite *, WorkflowTask * > > wrench::SimulationTimestampFileWrite::pending_file_writes
staticprotected

the data structure that holds the ongoing file writes.

A static unordered multimap of SimulationTimestampFileWriteStart objects that have yet to be matched with Failure, Terminated or Completion timestamps.

static std::unordered_multimap<File, std::pair<SimulationTimestampFileWrite *, double>, decltype(&file_hash)> pending_file_writes;


The documentation for this class was generated from the following files: