wrench::SimpleStorageService Class Reference
A storage service that provides direct access to some storage resource (e.g., a disk) More...
#include <SimpleStorageService.h>
Inheritance diagram for wrench::SimpleStorageService:
Public Member Functions | |
SimpleStorageService (std::string hostname, double capacity, std::map< std::string, std::string > property_list={}, std::map< std::string, std::string > messagepayload_list={}) | |
Public constructor. More... | |
~SimpleStorageService () | |
Destructor. | |
Public Member Functions inherited from wrench::StorageService | |
StorageService (const std::string &hostname, const std::string &service_name, const std::string &data_mailbox_name_prefix, double capacity) | |
Constructor. More... | |
virtual void | copyFile (WorkflowFile *file, StorageService *src, std::string src_dir, std::string dst_dir) |
Synchronously ask the storage service to read a file from another storage service. More... | |
virtual void | copyFile (WorkflowFile *file, StorageService *src) |
Synchronously ask the storage service to read a file from another storage service. More... | |
virtual void | copyFile (WorkflowFile *file, StorageService *src, WorkflowJob *src_job, WorkflowJob *dst_job) |
Synchronously ask the storage service to read a file from another storage service. More... | |
virtual void | deleteFile (WorkflowFile *file, FileRegistryService *file_registry_service=nullptr) |
Synchronously asks the storage service to delete a file copy. More... | |
virtual void | deleteFile (WorkflowFile *file, std::string dst_dir, FileRegistryService *file_registry_service=nullptr) |
Synchronously ask the storage service to delete a file copy. More... | |
virtual void | deleteFile (WorkflowFile *file, WorkflowJob *job, FileRegistryService *file_registry_service=nullptr) |
Synchronously ask the storage service to delete a file copy. More... | |
virtual double | getFreeSpace () |
Synchronously asks the storage service for its capacity. More... | |
double | getTotalSpace () |
Get the total static capacity of the storage service (in zero simulation time) More... | |
virtual void | initiateFileCopy (std::string answer_mailbox, WorkflowFile *file, StorageService *src, std::string src_dir, std::string dst_dir) |
Asynchronously ask the storage service to read a file from another storage service. More... | |
virtual void | initiateFileRead (std::string mailbox_that_should_receive_file_content, WorkflowFile *file, std::string src_dir) |
Asynchronously read a file from the storage service. More... | |
virtual bool | lookupFile (WorkflowFile *file) |
Synchronously asks the storage service whether it holds a file. More... | |
virtual bool | lookupFile (WorkflowFile *file, std::string dst_dir) |
Synchronously asks the storage service whether it holds a file. More... | |
virtual bool | lookupFile (WorkflowFile *file, WorkflowJob *) |
Synchronously asks the storage service whether it holds a file. More... | |
virtual void | readFile (WorkflowFile *file, std::string src_dir) |
Synchronously read a file from the storage service. More... | |
virtual void | readFile (WorkflowFile *file) |
Synchronously read a file from the storage service. More... | |
virtual void | readFile (WorkflowFile *file, WorkflowJob *job) |
Synchronously read a file from the storage service. More... | |
void | stop () |
Stop the service. | |
virtual void | writeFile (WorkflowFile *file, std::string dst_dir) |
Synchronously write a file to the storage service. More... | |
virtual void | writeFile (WorkflowFile *file) |
Synchronously write a file to the storage service. More... | |
virtual void | writeFile (WorkflowFile *file, WorkflowJob *job) |
Synchronously write a file to the storage service. More... | |
Public Member Functions inherited from wrench::Service | |
std::string | getHostname () |
Get the name of the host on which the service is / will be running. More... | |
double | getMessagePayloadValueAsDouble (std::string) |
Get a message payload of the Service as a double. More... | |
std::string | getMessagePayloadValueAsString (std::string) |
Get a message payload of the Service as a string. More... | |
double | getNetworkTimeoutValue () |
Returns the service's network timeout value. More... | |
bool | getPropertyValueAsBoolean (std::string) |
Get a property of the Service as a boolean. More... | |
double | getPropertyValueAsDouble (std::string) |
Get a property of the Service as a double. More... | |
std::string | getPropertyValueAsString (std::string) |
Get a property of the Service as a string. More... | |
bool | isUp () |
Returns true if the service is UP, false otherwise. More... | |
void | setNetworkTimeoutValue (double value) |
Sets the service's network timeout value. More... | |
void | setStateToDown () |
Set the state of the service to DOWN. | |
void | start (std::shared_ptr< Service > this_service, bool daemonize, bool auto_restart) |
Start the service. More... | |
Public Member Functions inherited from wrench::S4U_Daemon | |
S4U_Daemon (std::string hostname, std::string process_name_prefix, std::string mailbox_prefix) | |
Constructor (daemon with a mailbox) More... | |
virtual | ~S4U_Daemon () |
Constructor (daemon without a mailbox) More... | |
virtual void | cleanup () |
Cleanup function called when the daemon terminates (for whatever reason) | |
void | createLifeSaver (std::shared_ptr< S4U_Daemon > reference) |
Create a life saver for the daemon. More... | |
std::string | getName () |
Retrieve the process name. More... | |
bool | hasCleanlyTerminated () |
Returned the terminated status of the daemon/actor. | |
bool | isSetToAutoRestart () |
Return the auto-restart status of the daemon. More... | |
bool | join () |
Join (i.e., wait for) the daemon. More... | |
void | resume () |
Resume the daemon/actor. | |
void | setCleanlyTerminated () |
Set the terminated status of the daemon/actor. | |
void | startDaemon (bool daemonized, bool auto_restart) |
Start the daemon. More... | |
void | suspend () |
Suspend the daemon/actor. | |
Additional Inherited Members | |
Public Types inherited from wrench::Service | |
enum | State { UP, DOWN } |
Service states. More... | |
Static Public Member Functions inherited from wrench::StorageService | |
static void | deleteFiles (std::set< WorkflowFile *> files, std::map< WorkflowFile *, StorageService *> file_locations, StorageService *default_storage_service) |
Synchronously and sequentially delete a set of files from storage services. More... | |
static void | readFiles (std::set< WorkflowFile *> files, std::map< WorkflowFile *, StorageService *> file_locations, StorageService *default_storage_service, std::set< WorkflowFile *> &files_in_scratch, WorkflowJob *job=nullptr) |
Synchronously and sequentially read a set of files from storage services. More... | |
static void | writeFiles (std::set< WorkflowFile *> files, std::map< WorkflowFile *, StorageService *> file_locations, StorageService *default_storage_service, std::set< WorkflowFile *> &files_in_scratch, WorkflowJob *job=nullptr) |
Synchronously and sequentially upload a set of files from storage services. More... | |
Public Attributes inherited from wrench::S4U_Daemon | |
std::string | hostname |
The name of the host on which the daemon is running. | |
LifeSaver * | life_saver = nullptr |
The daemon's life saver. | |
std::string | mailbox_name |
The name of the daemon's mailbox. | |
std::string | process_name |
The name of the daemon. | |
Simulation * | simulation |
a pointer to the simulation object | |
Protected Member Functions inherited from wrench::StorageService | |
void | removeFileFromStorage (WorkflowFile *, std::string) |
Remove a file from storage (internal method) More... | |
void | stageFile (WorkflowFile *) |
Store a file on the storage service BEFORE the simulation is launched. More... | |
Protected Member Functions inherited from wrench::Service | |
Service (std::string hostname, std::string process_name_prefix, std::string mailbox_name_prefix) | |
Constructor. More... | |
void | serviceSanityCheck () |
Check whether the service is properly configured and running. More... | |
void | setMessagePayload (std::string, std::string) |
Set a message payload of the Service. More... | |
void | setMessagePayloads (std::map< std::string, std::string > default_messagepayload_values, std::map< std::string, std::string > overriden_messagepayload_values) |
Set default and user-defined message payloads. More... | |
void | setProperties (std::map< std::string, std::string > default_property_values, std::map< std::string, std::string > overriden_property_values) |
Set default and user-defined properties. More... | |
void | setProperty (std::string, std::string) |
Set a property of the Service. More... | |
Protected Member Functions inherited from wrench::S4U_Daemon | |
void | acquireDaemonLock () |
Lock the daemon's lock. | |
void | killActor () |
Kill the daemon/actor. | |
void | releaseDaemonLock () |
Unlock the daemon's lock. | |
void | runMainMethod () |
Method that run's the user-defined main method (that's called by the S4U actor class) | |
Protected Attributes inherited from wrench::StorageService | |
double | capacity |
The storage service's capacity. | |
double | occupied_space = 0 |
The storage service's occupied space. | |
std::map< std::string, std::set< WorkflowFile * > > | stored_files |
The map of file directories and the set of files stored on those directories inside the storage service. | |
Protected Attributes inherited from wrench::Service | |
std::map< std::string, std::string > | messagepayload_list |
The service's messagepayload list. | |
std::string | name |
The service's name. | |
double | network_timeout = 30.0 |
The time (in seconds) after which a service that doesn't send back a reply (control) message causes a NetworkTimeOut exception. (default: 30 second; if <0 never timeout) | |
std::map< std::string, std::string > | property_list |
The service's property list. | |
State | state |
The service's state. | |
Protected Attributes inherited from wrench::S4U_Daemon | |
unsigned int | num_starts = 0 |
Detailed Description
A storage service that provides direct access to some storage resource (e.g., a disk)
Constructor & Destructor Documentation
◆ SimpleStorageService()
wrench::SimpleStorageService::SimpleStorageService | ( | std::string | hostname, |
double | capacity, | ||
std::map< std::string, std::string > | property_list = {} , |
||
std::map< std::string, std::string > | messagepayload_list = {} |
||
) |
Public constructor.
- Parameters
-
hostname the name of the host on which to start the service capacity the storage capacity in bytes property_list a property list ({} means "use all defaults") messagepayload_list a message payload list ({} means "use all defaults")
The documentation for this class was generated from the following files:
- /Users/rafsilva/Documents/isi/workspace/wrench/wrench/include/wrench/services/storage/simple/SimpleStorageService.h
- /Users/rafsilva/Documents/isi/workspace/wrench/wrench/src/wrench/services/storage/simple/SimpleStorageService.cpp