xrootd
|
#include <XrdSfsInterface.hh>
Public Types | |
enum | csFunc { csCalc = 0 , csGet , csSize } |
enum | gpfFunc { gpfCancel =0 , gpfGet , gpfPut } |
Public Member Functions | |
virtual XrdSfsDirectory * | newDir (char *user=0, int MonID=0)=0 |
virtual XrdSfsDirectory * | newDir (XrdOucErrInfo &eInfo) |
virtual XrdSfsFile * | newFile (char *user=0, int MonID=0)=0 |
virtual XrdSfsFile * | newFile (XrdOucErrInfo &eInfo) |
virtual int | chksum (csFunc Func, const char *csName, const char *path, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0, const char *opaque=0) |
virtual int | chmod (const char *path, XrdSfsMode mode, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0, const char *opaque=0)=0 |
virtual void | Connect (const XrdSecEntity *client=0) |
virtual void | Disc (const XrdSecEntity *client=0) |
virtual void | EnvInfo (XrdOucEnv *envP) |
virtual int | exists (const char *path, XrdSfsFileExistence &eFlag, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0, const char *opaque=0)=0 |
virtual int | FAttr (XrdSfsFACtl *faReq, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0) |
uint64_t | Features () |
virtual int | FSctl (const int cmd, XrdSfsFSctl &args, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0) |
virtual int | fsctl (const int cmd, const char *args, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0)=0 |
virtual int | getChkPSize () |
virtual int | getStats (char *buff, int blen)=0 |
virtual const char * | getVersion ()=0 |
virtual int | gpFile (gpfFunc &gpAct, XrdSfsGPFile &gpReq, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0) |
virtual int | mkdir (const char *path, XrdSfsMode mode, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0, const char *opaque=0)=0 |
virtual int | prepare (XrdSfsPrep &pargs, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0)=0 |
virtual int | rem (const char *path, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0, const char *opaque=0)=0 |
virtual int | remdir (const char *path, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0, const char *opaque=0)=0 |
virtual int | rename (const char *oPath, const char *nPath, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0, const char *opaqueO=0, const char *opaqueN=0)=0 |
virtual int | stat (const char *Name, struct stat *buf, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0, const char *opaque=0)=0 |
virtual int | stat (const char *path, mode_t &mode, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0, const char *opaque=0)=0 |
virtual int | truncate (const char *path, XrdSfsFileOffset fsize, XrdOucErrInfo &eInfo, const XrdSecEntity *client=0, const char *opaque=0)=0 |
XrdSfsFileSystem () | |
Constructor and Destructor. | |
virtual | ~XrdSfsFileSystem () |
Protected Attributes | |
uint64_t | FeatureSet |
Adjust features at initialization. | |
Common parameters: Many of the methods have certain common parameters. These are documented here to avoid lengthy duplicate descriptions.
eInfo | - The object where error info or results are to be returned. For errors, you should return information as follows: SFS_OK eInfo may contain results, as described in specified method description that follows. SFS_ERROR eInfo.code - errno number eInfo.message - error message text SFS_REDIRECT eInfo.code - target port number eInfo.message - target host address/name SFS_STALL eInfo.code - expected seconds to stall eInfo.message - reason for the delay SFS_STARTED eInfo.code - expected seconds to completion eInfo.message - reason for the delay SFS_DATA eInfo.code - length of data in message eInfo.message - the request data |
client | - Pointer to the client's identity information or nil if the identity is not known. |
opaque | - Pointer to the CGI information associated with Path or nil if there is no opaque information. |
Obtain checksum information for a file.
Func | - The checksum operation to be performed: csCalc - (re)calculate and return the checksum value csGet - return the existing checksum value, if any csSize - return the size of the checksum value that corresponds to csName (path may be null). |
csName | - The name of the checksum value wanted. |
path | - Pointer to the path of the file in question. |
eInfo | - The object where error info or results are to be returned. |
client | - Client's identify (see common description). |
opaque | - Path's CGI information (see common description). |
Enumerator | |
---|---|
csCalc | |
csGet | |
csSize |
Perform a third party file transfer or cancel one.
gpAct | - What to do as one of the enums listed below. |
gpReq | - reference tothe object describing the request. This object is also used communicate the request status. |
eInfo | - The object where error info or results are to be returned. |
client | - Client's identify (see common description). |
Enumerator | |
---|---|
gpfCancel | Cancel this request. |
gpfGet | Perform a file retrieval. |
gpfPut | Perform a file push. |
XrdSfsFileSystem::XrdSfsFileSystem | ( | ) |
Constructor and Destructor.
|
inlinevirtual |
|
virtual |
Reimplemented in XrdSsiSfs, XrdThrottle::FileSystem, and XrdOfs.
|
pure virtual |
Change file mode settings.
path | - Pointer to the path of the file in question. |
mode | - The new file mode setting. |
eInfo | - The object where error info or results are to be returned. |
client | - Client's identify (see common description). |
opaque | - Path's CGI information (see common description). |
Implemented in XrdSsiSfs, XrdBwm, XrdOfs, and XrdThrottle::FileSystem.
|
inlinevirtual |
Notify filesystem that a client has connected.
client | - Client's identify (see common description). |
Reimplemented in XrdOfs, and XrdThrottle::FileSystem.
|
inlinevirtual |
Notify filesystem that a client has disconnected.
client | - Client's identify (see common description). |
Reimplemented in XrdOfs, and XrdThrottle::FileSystem.
|
inlinevirtual |
Notify filesystem about implmentation dependent environment. This method may be called only once, if at all, right after obtaining this object.
envP | - Pointer to environmental information. |
Reimplemented in XrdThrottle::FileSystem.
|
pure virtual |
Return directory/file existence information (short stat).
path | - Pointer to the path of the file/directory in question. |
eFlag | - Where the results are to be returned. |
eInfo | - The object where error info is to be returned. |
client | - Client's identify (see common description). |
opaque | - Path's CGI information (see common description). |
Implemented in XrdSsiSfs, XrdBwm, XrdOfs, and XrdThrottle::FileSystem.
|
virtual |
Perform a filesystem extended attribute function.
faReq | - pointer to the request object (see XrdSfsFAttr.hh). If the pointer is nill, simply return whether or not extended attributes are supported. |
eInfo | - The object where error info or results are to be returned. |
client | - Client's identify (see common description). |
Reimplemented in XrdOfs, and XrdThrottle::FileSystem.
|
inline |
Obtain file system feature set.
References FeatureSet.
|
pure virtual |
Perform a filesystem control operation (version 1)
cmd | - The operation to be performed: SFS_FSCTL_LOCATE Locate a file or file servers SFS_FSCTL_STATCC Return cluster config status SFS_FSCTL_STATFS Return physical filesystem information SFS_FSCTL_STATLS Return logical filesystem information SFS_FSCTL_STATXA Return extended attributes |
args | - Arguments specific to cmd. SFS_FSCTL_LOCATE args points to the path to be located "" path is the first exported path "*" return all current servers "*‍/" return servers exporting path o/w return servers having the path SFS_FSCTL_STATFS Path in the filesystem in question. SFS_FSCTL_STATLS Path in the filesystem in question. SFS_FSCTL_STATXA Path of the file whose xattr is wanted. |
eInfo | - The object where error info or results are to be returned. |
client | - Client's identify (see common description). |
Implemented in XrdSsiSfs, XrdBwm, XrdThrottle::FileSystem, and XrdOfs.
|
virtual |
Perform a filesystem control operation (version 2)
cmd | - The operation to be performed: SFS_FSCTL_PLUGIN Return Implementation Dependent Data v1 SFS_FSCTL_PLUGIO Return Implementation Dependent Data v2 |
args | - Arguments specific to cmd. SFS_FSCTL_PLUGIN path and opaque information. SFS_FSCTL_PLUGIO Unscreened argument string. |
eInfo | - The object where error info or results are to be returned. |
client | - Client's identify (see common description). |
Reimplemented in XrdOfs.
|
inlinevirtual |
Return maximum checkpoint size.
Reimplemented in XrdThrottle::FileSystem.
|
pure virtual |
Return statistical information.
buff | - Pointer to the buffer where results are to be returned. Statistics should be in standard XML format. If buff is nil then only maximum size information is wanted. |
blen | - The length available in buff. |
Implemented in XrdBwm, XrdDigFS, XrdOfs, XrdSfsNative, XrdSsiSfs, and XrdThrottle::FileSystem.
|
pure virtual |
Get version string.
Implemented in XrdBwm, XrdDigFS, XrdOfs, XrdSfsNative, XrdSsiSfs, and XrdThrottle::FileSystem.
|
virtual |
Reimplemented in XrdThrottle::FileSystem.
|
pure virtual |
Create a directory.
path | - Pointer to the path of the directory to be created. |
mode | - The directory mode setting. |
eInfo | - The object where error info is to be returned. |
client | - Client's identify (see common description). |
opaque | - Path's CGI information (see common description). |
Implemented in XrdSsiSfs, XrdBwm, XrdOfs, and XrdThrottle::FileSystem.
|
pure virtual |
Obtain a new director object to be used for future directory requests.
user | - Text identifying the client responsible for this call. The pointer may be null if identification is missing. |
MonID | - The monitoring identifier assigned to this and all future requests using the returned object. |
Implemented in XrdBwm, XrdDigFS, XrdOfs, XrdSfsNative, XrdSsiSfs, and XrdThrottle::FileSystem.
|
inlinevirtual |
Obtain a new wrapped directory object to be used for future requests.
eInfo | - Reference to the error object to be used by the new directory object. Note that an implementation is supplied for compatibility purposes but it returns a nil pointer which is considered to be a failure. You must supply an implementation for this to work correctly. |
Reimplemented in XrdOfs.
|
pure virtual |
Obtain a new file object to be used for a future file requests.
user | - Text identifying the client responsible for this call. The pointer may be null if identification is missing. |
MonID | - The monitoring identifier assigned to this and all future requests using the returned object. |
Implemented in XrdBwm, XrdDigFS, XrdOfs, XrdSfsNative, XrdSsiSfs, and XrdThrottle::FileSystem.
|
inlinevirtual |
Obtain a new wrapped file object to be used for a future requests.
eInfo | - Reference to the error object to be used by the new file object. Note that an implementation is supplied for compatibility purposes but it returns a nil pointer which is considered to be a failure. You must supply an implementation for this to work correctly. |
Reimplemented in XrdOfs.
|
pure virtual |
Prepare a file for future processing.
pargs | - The preapre arguments. |
eInfo | - The object where error info is to be returned. |
client | - Client's identify (see common description). |
Implemented in XrdSsiSfs, XrdBwm, XrdOfs, and XrdThrottle::FileSystem.
|
pure virtual |
Remove a file.
path | - Pointer to the path of the file to be removed. |
eInfo | - The object where error info is to be returned. |
client | - Client's identify (see common description). |
opaque | - Path's CGI information (see common description). |
Implemented in XrdSsiSfs, XrdBwm, XrdOfs, and XrdThrottle::FileSystem.
|
pure virtual |
Remove a directory.
path | - Pointer to the path of the directory to be removed. |
eInfo | - The object where error info is to be returned. |
client | - Client's identify (see common description). |
opaque | - Path's CGI information (see common description). |
Implemented in XrdSsiSfs, XrdBwm, XrdOfs, and XrdThrottle::FileSystem.
|
pure virtual |
Rename a file or directory.
oPath | - Pointer to the path to be renamed. |
nPath | - Pointer to the path oPath is to have. |
eInfo | - The object where error info is to be returned. |
client | - Client's identify (see common description). |
opaqueO | - oPath's CGI information (see common description). |
opaqueN | - nPath's CGI information (see common description). |
Implemented in XrdSsiSfs, XrdBwm, XrdOfs, and XrdThrottle::FileSystem.
|
pure virtual |
Return state information on a file or directory.
Name | - Pointer to the path in question. |
buf | - Pointer to the structure where info it to be returned. |
eInfo | - The object where error info is to be returned. |
client | - Client's identify (see common description). |
opaque | - path's CGI information (see common description). |
Implemented in XrdSsiSfs, XrdBwm, XrdOfs, and XrdThrottle::FileSystem.
|
pure virtual |
Return mode information on a file or directory.
path | - Pointer to the path in question. |
mode | - Where full mode information is to be returned. |
eInfo | - The object where error info is to be returned. |
client | - Client's identify (see common description). |
opaque | - path's CGI information (see common description). |
Implemented in XrdSsiSfs, XrdBwm, XrdOfs, and XrdThrottle::FileSystem.
|
pure virtual |
Truncate a file.
path | - Pointer to the path of the file to be truncated. |
fsize | - The size that the file is to have. |
eInfo | - The object where error info is to be returned. |
client | - Client's identify (see common description). |
opaque | - path's CGI information (see common description). |
Implemented in XrdSsiSfs, XrdBwm, XrdDigFS, XrdOfs, XrdSfsNative, and XrdThrottle::FileSystem.
|
protected |
Adjust features at initialization.
Referenced by Features().