#include <StorageFactory.h>
Public Types | |
enum | CacheHint { CACHE_HINT_APPLICATION, CACHE_HINT_STORAGE, CACHE_HINT_LAZY_DOWNLOAD, CACHE_HINT_AUTO_DETECT } |
enum | ReadHint { READ_HINT_UNBUFFERED, READ_HINT_READAHEAD, READ_HINT_AUTO } |
Public Member Functions | |
bool | accounting (void) const |
CacheHint | cacheHint (void) const |
bool | check (const std::string &url, IOOffset *size=0) const |
unsigned int | debugLevel (void) const |
bool | enableAccounting (bool enabled) |
std::unique_ptr< Storage > | open (const std::string &url, int mode=IOFlags::OpenRead) const |
ReadHint | readHint (void) const |
void | setCacheHint (CacheHint value) |
void | setDebugLevel (unsigned int level) |
void | setReadHint (ReadHint value) |
void | setTempDir (const std::string &s, double minFreeSpace) |
void | setTimeout (unsigned int timeout) |
void | stagein (const std::string &url) const |
std::string | tempDir (void) const |
double | tempMinFree (void) const |
std::string | tempPath (void) const |
unsigned int | timeout (void) const |
std::unique_ptr< Storage > | wrapNonLocalFile (std::unique_ptr< Storage > s, const std::string &proto, const std::string &path, int mode) const |
~StorageFactory (void) | |
Static Public Member Functions | |
static const StorageFactory * | get (void) |
static StorageFactory * | getToModify (void) |
Private Types | |
typedef tbb::concurrent_unordered_map < std::string, std::shared_ptr < StorageMaker > > | MakerTable |
Private Member Functions | |
StorageMaker * | getMaker (const std::string &proto) const |
StorageMaker * | getMaker (const std::string &url, std::string &protocol, std::string &rest) const |
StorageFactory (void) | |
Private Attributes | |
bool | m_accounting |
CacheHint | m_cacheHint |
unsigned int | m_debugLevel |
LocalFileSystem | m_lfs |
MakerTable | m_makers |
ReadHint | m_readHint |
std::string | m_tempdir |
double | m_tempfree |
std::string | m_temppath |
unsigned int | m_timeout |
std::string | m_unusableDirWarnings |
Static Private Attributes | |
static StorageFactory | s_instance |
Definition at line 13 of file StorageFactory.h.
|
private |
Definition at line 71 of file StorageFactory.h.
Enumerator | |
---|---|
CACHE_HINT_APPLICATION | |
CACHE_HINT_STORAGE | |
CACHE_HINT_LAZY_DOWNLOAD | |
CACHE_HINT_AUTO_DETECT |
Definition at line 16 of file StorageFactory.h.
Enumerator | |
---|---|
READ_HINT_UNBUFFERED | |
READ_HINT_READAHEAD | |
READ_HINT_AUTO |
Definition at line 24 of file StorageFactory.h.
StorageFactory::~StorageFactory | ( | void | ) |
Definition at line 25 of file StorageFactory.cc.
|
private |
Definition at line 13 of file StorageFactory.cc.
bool StorageFactory::accounting | ( | void | ) | const |
Definition at line 46 of file StorageFactory.cc.
StorageFactory::CacheHint StorageFactory::cacheHint | ( | void | ) | const |
Definition at line 54 of file StorageFactory.cc.
Referenced by LocalStorageMaker::open(), DCacheStorageMaker::open(), StormStorageMaker::open(), StormLcgGtStorageMaker::open(), and RFIOStorageMaker::open().
bool StorageFactory::check | ( | const std::string & | url, |
IOOffset * | size = 0 |
||
) | const |
Definition at line 239 of file StorageFactory.cc.
Referenced by TStorageFactorySystem::AccessPathName().
unsigned int StorageFactory::debugLevel | ( | void | ) | const |
Definition at line 78 of file StorageFactory.cc.
bool StorageFactory::enableAccounting | ( | bool | enabled | ) |
Definition at line 38 of file StorageFactory.cc.
|
static |
Definition at line 30 of file StorageFactory.cc.
Referenced by Options.Options::__getitem__(), TStorageFactorySystem::AccessPathName(), TStorageFactorySystem::GetPathInfo(), HttpStorageMaker::open(), GsiFTPStorageMaker::open(), LocalStorageMaker::open(), DCacheStorageMaker::open(), StormStorageMaker::open(), StormLcgGtStorageMaker::open(), RFIOStorageMaker::open(), and edm::RootSecondaryFileSequence::RootSecondaryFileSequence().
|
private |
Definition at line 134 of file StorageFactory.cc.
|
private |
Definition at line 151 of file StorageFactory.cc.
|
static |
Definition at line 34 of file StorageFactory.cc.
std::unique_ptr< Storage > StorageFactory::open | ( | const std::string & | url, |
int | mode = IOFlags::OpenRead |
||
) | const |
Definition at line 171 of file StorageFactory.cc.
StorageFactory::ReadHint StorageFactory::readHint | ( | void | ) | const |
Definition at line 62 of file StorageFactory.cc.
Referenced by LocalStorageMaker::open(), DCacheStorageMaker::open(), StormStorageMaker::open(), StormLcgGtStorageMaker::open(), and RFIOStorageMaker::open().
void StorageFactory::setCacheHint | ( | CacheHint | value | ) |
Definition at line 50 of file StorageFactory.cc.
void StorageFactory::setDebugLevel | ( | unsigned int | level | ) |
Definition at line 74 of file StorageFactory.cc.
void StorageFactory::setReadHint | ( | ReadHint | value | ) |
Definition at line 58 of file StorageFactory.cc.
void StorageFactory::setTempDir | ( | const std::string & | s, |
double | minFreeSpace | ||
) |
Definition at line 82 of file StorageFactory.cc.
void StorageFactory::setTimeout | ( | unsigned int | timeout | ) |
Definition at line 66 of file StorageFactory.cc.
void StorageFactory::stagein | ( | const std::string & | url | ) | const |
Definition at line 212 of file StorageFactory.cc.
Referenced by edm::RootSecondaryFileSequence::RootSecondaryFileSequence().
std::string StorageFactory::tempDir | ( | void | ) | const |
Definition at line 122 of file StorageFactory.cc.
Referenced by GsiFTPStorageMaker::open(), and HttpStorageMaker::open().
double StorageFactory::tempMinFree | ( | void | ) | const |
Definition at line 130 of file StorageFactory.cc.
std::string StorageFactory::tempPath | ( | void | ) | const |
Definition at line 126 of file StorageFactory.cc.
unsigned int StorageFactory::timeout | ( | void | ) | const |
Definition at line 70 of file StorageFactory.cc.
std::unique_ptr< Storage > StorageFactory::wrapNonLocalFile | ( | std::unique_ptr< Storage > | s, |
const std::string & | proto, | ||
const std::string & | path, | ||
int | mode | ||
) | const |
Definition at line 269 of file StorageFactory.cc.
Referenced by LocalStorageMaker::open(), DCacheStorageMaker::open(), StormStorageMaker::open(), StormLcgGtStorageMaker::open(), and RFIOStorageMaker::open().
|
private |
Definition at line 82 of file StorageFactory.h.
|
private |
Definition at line 80 of file StorageFactory.h.
|
private |
Definition at line 88 of file StorageFactory.h.
|
private |
Definition at line 89 of file StorageFactory.h.
|
mutableprivate |
Definition at line 79 of file StorageFactory.h.
|
private |
Definition at line 81 of file StorageFactory.h.
|
private |
Definition at line 85 of file StorageFactory.h.
|
private |
Definition at line 83 of file StorageFactory.h.
|
private |
Definition at line 84 of file StorageFactory.h.
|
private |
Definition at line 87 of file StorageFactory.h.
|
private |
Definition at line 86 of file StorageFactory.h.
|
staticprivate |
Definition at line 90 of file StorageFactory.h.