16 #define OFS_NAME "libXrdOfs.so"
36 eDest.
Emsg(
"Config",
"Unable to load OFS filesystem.");
45 if (!(fs = (*ep)(0,
eDest.
logger(), config_file.c_str())))
47 eDest.
Emsg(
"Config",
"Unable to create file system object via", fslib.c_str());
66 eDest.
Emsg(
"Config",
"XrdOssThrottle is loaded; not stacking XrdThrottle on OFS. "
67 "This is a warning for backward compatability; this configuration may generate an "
68 "error in the future.");
71 FileSystem::Initialize(fs, native_fs, lp, configfn,
envP);
101 FileSystem::FileSystem()
102 : m_eroute(0), m_trace(&m_eroute), m_sfs_ptr(0), m_initialized(false), m_throttle(&m_eroute, &m_trace)
107 FileSystem::~FileSystem() {}
113 const char *configfn,
117 if (m_instance == NULL && !(m_instance =
new FileSystem()))
122 if (!fs->m_initialized)
124 fs->m_config_file = configfn;
126 fs->m_eroute.
Say(
"Initializing a Throttled file system.");
127 if (fs->Configure(fs->m_eroute, native_fs,
envP))
129 fs->m_eroute.
Say(
"Initialization of throttled file system failed.");
133 fs->m_throttle.
Init();
134 fs->m_initialized =
true;
138 #define TS_Xeq(key, func) NoGo = (strcmp(key, var) == 0) ? func(Config) : 0
143 if (
Config.Configure(m_config_file))
145 log.
Emsg(
"Config",
"Unable to load configuration file", m_config_file.c_str());
153 m_sfs_ptr = native_fs ? native_fs :
LoadFS(
Config.GetFileSystemLibrary(), m_eroute, m_config_file);
154 if (!m_sfs_ptr)
return 1;
162 log.
Say(
"Config",
"Throttle g-stream has", gstream ?
"" :
" NOT",
" been configured via xrootd.mongstream directive");
static XrdSysError eDest(0,"crypto_")
XrdSfsFileSystem * XrdSfsGetDefaultFileSystem(XrdSfsFileSystem *native_fs, XrdSysLogger *lp, const char *configfn, XrdOucEnv *EnvInfo)
static XrdSfsFileSystem * LoadFS(const std::string &fslib, XrdSysError &eDest, const std::string &config_file)
XrdSfsFileSystem * XrdSfsGetFileSystem2(XrdSfsFileSystem *native_fs, XrdSysLogger *lp, const char *configfn, XrdOucEnv *envP)
XrdSfsFileSystem * XrdSfsGetFileSystem(XrdSfsFileSystem *native_fs, XrdSysLogger *lp, const char *configfn)
XrdVERSIONINFO(XrdSfsGetFileSystem, FileSystem)
long GetInt(const char *varname)
static int Export(const char *Var, const char *Val)
void * GetPtr(const char *varname)
uint64_t FeatureSet
Adjust features at initialization.
int Emsg(const char *esfx, int ecode, const char *text1, const char *text2=0)
void Say(const char *text1, const char *text2=0, const char *txt3=0, const char *text4=0, const char *text5=0, const char *txt6=0)
XrdSysLogger * logger(XrdSysLogger *lp=0)
void * getPlugin(const char *pname, int optional=0)
void FromConfig(XrdThrottle::Configuration &config)
void SetMonitor(XrdXrootdGStream *gstream)
XrdSfsFileSystem * XrdSfsGetFileSystem_Internal(XrdSfsFileSystem *native_fs, XrdSysLogger *lp, const char *configfn, XrdOucEnv *envP)