xrootd
Loading...
Searching...
No Matches
XrdClDefaultEnv.hh
Go to the documentation of this file.
1//------------------------------------------------------------------------------
2// Copyright (c) 2011-2012 by European Organization for Nuclear Research (CERN)
3// Author: Lukasz Janyst <ljanyst@cern.ch>
4//------------------------------------------------------------------------------
5// XRootD is free software: you can redistribute it and/or modify
6// it under the terms of the GNU Lesser General Public License as published by
7// the Free Software Foundation, either version 3 of the License, or
8// (at your option) any later version.
9//
10// XRootD is distributed in the hope that it will be useful,
11// but WITHOUT ANY WARRANTY; without even the implied warranty of
12// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13// GNU General Public License for more details.
14//
15// You should have received a copy of the GNU Lesser General Public License
16// along with XRootD. If not, see <http://www.gnu.org/licenses/>.
17//------------------------------------------------------------------------------
18
19#ifndef __XRD_CL_DEFAULT_ENV_HH__
20#define __XRD_CL_DEFAULT_ENV_HH__
21
23#include "XrdCl/XrdClEnv.hh"
24#include "XrdVersion.hh"
25
26class XrdOucPinLoader;
27struct EnvInitializer;
28
29namespace XrdCl
30{
31 class PostMaster;
32 class Log;
33 class ForkHandler;
34 class Monitor;
35 class CheckSumManager;
36 class TransportManager;
37 class FileTimer;
38 class PlugInManager;
39 class PlugInFactory;
40
41 //----------------------------------------------------------------------------
45 //----------------------------------------------------------------------------
46 class DefaultEnv: public Env
47 {
48 friend struct ::EnvInitializer;
49
50 //------------------------------------------------------------------------
52 //------------------------------------------------------------------------
54
55 public:
56
57 //------------------------------------------------------------------------
59 //------------------------------------------------------------------------
60 inline static std::string GetVersion()
61 {
62 return XrdVERSION;
63 }
64
65 //------------------------------------------------------------------------
67 //------------------------------------------------------------------------
68 static Env *GetEnv();
69
70 //------------------------------------------------------------------------
72 //------------------------------------------------------------------------
74
75 //------------------------------------------------------------------------
77 //------------------------------------------------------------------------
78 static Log *GetLog();
79
80 //------------------------------------------------------------------------
84 //------------------------------------------------------------------------
85 static void SetLogLevel( const std::string &level );
86
87 //------------------------------------------------------------------------
91 //------------------------------------------------------------------------
92 static bool SetLogFile( const std::string &filepath );
93
94 //------------------------------------------------------------------------
115 //------------------------------------------------------------------------
116 static void SetLogMask( const std::string &level,
117 const std::string &mask );
118
119 //------------------------------------------------------------------------
121 //------------------------------------------------------------------------
123
124 //------------------------------------------------------------------------
126 //------------------------------------------------------------------------
128
129 //------------------------------------------------------------------------
131 //------------------------------------------------------------------------
133
134 //------------------------------------------------------------------------
136 //------------------------------------------------------------------------
138
139 //------------------------------------------------------------------------
141 //------------------------------------------------------------------------
143
144 //------------------------------------------------------------------------
146 //------------------------------------------------------------------------
148
149 //------------------------------------------------------------------------
153 //------------------------------------------------------------------------
154 static PlugInFactory *GetPlugInFactory( const std::string url );
155
156 //------------------------------------------------------------------------
158 //------------------------------------------------------------------------
159 static void ReInitializeLogging();
160
161 private:
162
163 //------------------------------------------------------------------------
165 //------------------------------------------------------------------------
166 static void Initialize();
167
168 //------------------------------------------------------------------------
170 //------------------------------------------------------------------------
171 static void Finalize();
172
173
174 static void SetUpLog();
175
177 static Env *sEnv;
179 static Log *sLog;
188 };
189
190}
191
198
199
200#endif // __XRD_CL_DEFAULT_ENV_HH__
static struct EnvInitializer initializer
Manage the checksum calc objects.
Definition XrdClCheckSumManager.hh:42
Definition XrdClDefaultEnv.hh:47
static std::string GetVersion()
Get client version.
Definition XrdClDefaultEnv.hh:60
static XrdOucPinLoader * sMonitorLibHandle
Definition XrdClDefaultEnv.hh:183
static CheckSumManager * sCheckSumManager
Definition XrdClDefaultEnv.hh:185
DefaultEnv()
Constructor.
static Env * sEnv
Definition XrdClDefaultEnv.hh:177
static void SetLogMask(const std::string &level, const std::string &mask)
static XrdSysMutex sInitMutex
Definition XrdClDefaultEnv.hh:176
static Monitor * sMonitor
Definition XrdClDefaultEnv.hh:182
static PlugInManager * sPlugInManager
Definition XrdClDefaultEnv.hh:187
static ForkHandler * GetForkHandler()
Get the fork handler.
static CheckSumManager * GetCheckSumManager()
Get checksum manager.
static PostMaster * GetPostMaster()
Get default post master.
static bool SetLogFile(const std::string &filepath)
static TransportManager * GetTransportManager()
Get transport manager.
static void ReInitializeLogging()
Re-initialize the logging.
static void Finalize()
Finalize the environment.
static ForkHandler * sForkHandler
Definition XrdClDefaultEnv.hh:180
static Log * GetLog()
Get default log.
static void Initialize()
Initialize the environment.
static Monitor * GetMonitor()
Get the monitor object.
static bool sMonitorInitialized
Definition XrdClDefaultEnv.hh:184
static PostMaster * sPostMaster
Definition XrdClDefaultEnv.hh:178
static TransportManager * sTransportManager
Definition XrdClDefaultEnv.hh:186
static void SetUpLog()
static PlugInManager * GetPlugInManager()
Get plug-in manager.
static Log * sLog
Definition XrdClDefaultEnv.hh:179
static FileTimer * sFileTimer
Definition XrdClDefaultEnv.hh:181
static PlugInFactory * GetPlugInFactory(const std::string url)
static FileTimer * GetFileTimer()
Get file timer task.
static Env * GetEnv()
Get default client environment.
static void SetLogLevel(const std::string &level)
Definition XrdClEnv.hh:38
Task generating timeout events for FileStateHandlers in recovery mode.
Definition XrdClFileTimer.hh:33
Definition XrdClForkHandler.hh:36
Handle diagnostics.
Definition XrdClLog.hh:101
An abstract class to describe the client-side monitoring plugin interface.
Definition XrdClMonitor.hh:56
Plugin factory.
Definition XrdClPlugInInterface.hh:549
Manage client-side plug-ins and match them agains URLs.
Definition XrdClPlugInManager.hh:42
A hub for dispatching and receiving messages.
Definition XrdClPostMaster.hh:48
Manage transport handler objects.
Definition XrdClTransportManager.hh:33
Definition XrdOucPinLoader.hh:50
Definition XrdSysPthread.hh:165
Definition XrdClAction.hh:34
Definition XrdClDefaultEnv.hh:193
static int counter
Definition XrdClDefaultEnv.hh:196