XRootD
Loading...
Searching...
No Matches
XrdPfcFSctl.hh
Go to the documentation of this file.
1
#ifndef __XRDPFCFSCTL_H__
2
#define __XRDPFCFSCTL_H__
3
/******************************************************************************/
4
/* */
5
/* X r d P f c F S c t l . h h */
6
/* */
7
/* (c) 2023 by the Board of Trustees of the Leland Stanford, Jr., University */
8
/* All Rights Reserved */
9
/* Produced by Andrew Hanushevsky for Stanford University under contract */
10
/* DE-AC02-76-SFO0515 with the Department of Energy */
11
/* */
12
/* This file is part of the XRootD software suite. */
13
/* */
14
/* XRootD is free software: you can redistribute it and/or modify it under */
15
/* the terms of the GNU Lesser General Public License as published by the */
16
/* Free Software Foundation, either version 3 of the License, or (at your */
17
/* option) any later version. */
18
/* */
19
/* XRootD is distributed in the hope that it will be useful, but WITHOUT */
20
/* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or */
21
/* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public */
22
/* License for more details. */
23
/* */
24
/* You should have received a copy of the GNU Lesser General Public License */
25
/* along with XRootD in a file called COPYING.LESSER (LGPL license) and file */
26
/* COPYING (GPL license). If not, see <http://www.gnu.org/licenses/>. */
27
/* */
28
/* The copyright holder's institutional names and contributor's names may not */
29
/* be used to endorse or promote products derived from this software without */
30
/* specific prior written permission of the institution or contributor. */
31
/******************************************************************************/
32
33
#include "
XrdOfs/XrdOfsFSctl_PI.hh
"
34
#include "
XrdSys/XrdSysError.hh
"
35
36
class
XrdOfsHandle
;
37
class
XrdOucErrInfo
;
38
class
XrdOucEnv
;
39
class
XrdSecEntity
;
40
class
XrdSfsFile
;
41
class
XrdSysLogger
;
42
class
XrdSysTrace
;
43
44
namespace
XrdPfc
{
class
Cache
;}
45
46
class
XrdPfcFSctl
:
public
XrdOfsFSctl_PI
47
{
public
:
48
49
virtual
bool
Configure
(
const
char
*CfgFN,
50
const
char
*Parms,
51
XrdOucEnv
*envP,
52
const
Plugins
&plugs)
override
;
53
54
virtual
int
FSctl
(
const
int
cmd,
55
int
alen,
56
const
char
*args,
57
XrdSfsFile
&file,
58
XrdOucErrInfo
&eInfo,
59
const
XrdSecEntity
*client = 0)
override
;
60
61
virtual
int
FSctl
(
const
int
cmd,
62
XrdSfsFSctl
&args,
63
XrdOucErrInfo
&eInfo,
64
const
XrdSecEntity
*client = 0)
override
;
65
66
//------------------------------------------------------------------------------
68
//------------------------------------------------------------------------------
69
70
XrdPfcFSctl
(
XrdPfc::Cache
&cInst,
XrdSysLogger
*logP);
71
72
//------------------------------------------------------------------------------
74
//------------------------------------------------------------------------------
75
76
virtual
~XrdPfcFSctl
() {}
77
78
private
:
79
XrdSysTrace
* GetTrace() {
return
sysTrace;}
80
81
XrdPfc::Cache
& myCache;
82
XrdOfsHandle
* hProc;
83
XrdSysError
Log;
84
XrdSysTrace
* sysTrace;
85
const
char
* m_traceID;
86
};
87
#endif
XrdOfsFSctl_PI.hh
XrdSfsFSctl
< SFS_FSCTL_PLUGIN/PLUGIO/PLUGXC parms
Definition
XrdSfsInterface.hh:162
XrdSysError.hh
XrdOfsFSctl_PI
Definition
XrdOfsFSctl_PI.hh:52
XrdOfsFSctl_PI::Plugins
The Plugins struct is used to pass plugin pointers to configure.
Definition
XrdOfsFSctl_PI.hh:61
XrdOfsHandle
Definition
XrdOfsHandle.hh:126
XrdOucEnv
Definition
XrdOucEnv.hh:42
XrdOucErrInfo
Definition
XrdOucErrInfo.hh:101
XrdPfcFSctl
Definition
XrdPfcFSctl.hh:47
XrdPfcFSctl::~XrdPfcFSctl
virtual ~XrdPfcFSctl()
Destructor.
Definition
XrdPfcFSctl.hh:76
XrdPfcFSctl::FSctl
virtual int FSctl(const int cmd, int alen, const char *args, XrdSfsFile &file, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0) override
Definition
XrdPfcFSctl.cc:72
XrdPfcFSctl::Configure
virtual bool Configure(const char *CfgFN, const char *Parms, XrdOucEnv *envP, const Plugins &plugs) override
Definition
XrdPfcFSctl.cc:57
XrdPfc::Cache
Attaches/creates and detaches/deletes cache-io objects for disk based cache.
Definition
XrdPfc.hh:152
XrdSecEntity
Definition
XrdSecEntity.hh:65
XrdSfsFile
Definition
XrdSfsInterface.hh:370
XrdSysError
Definition
XrdSysError.hh:90
XrdSysLogger
Definition
XrdSysLogger.hh:53
XrdSysTrace
Definition
XrdSysTrace.hh:49
XrdCms::Cache
XrdCmsCache Cache
Definition
XrdPfcFile.hh:204
XrdPfc
Definition
XrdPfc.hh:41
XrdPfc
XrdPfcFSctl.hh
Generated by
1.9.8