XrdOssAt Class Reference

#include <XrdOssAt.hh>

Collaboration diagram for XrdOssAt:
Collaboration graph
[legend]

List of all members.

Public Member Functions

int Opendir (XrdOssDF &atDir, const char *path, XrdOucEnv &env, XrdOssDF *&ossDF)
int OpenRO (XrdOssDF &atDir, const char *path, XrdOucEnv &env, XrdOssDF *&ossDF)
int Remdir (XrdOssDF &atDir, const char *path)
int Stat (XrdOssDF &atDir, const char *path, struct stat &buf, int opts=0)
int Unlink (XrdOssDF &atDir, const char *path)
 XrdOssAt (XrdOss &ossfs)
 ~XrdOssAt ()
 Destructor.

Static Public Attributes

static const int At_dInfo = 0x00000001

Private Attributes

XrdOssossFS

Detailed Description

This class defines the object that handles extended operations that are relative to an open directory. Create a single instance of this class by passing it the pointer to the asociated file system (XrdOss) and use the methods herein to effect various operations relative to an XrdOss directory.

Note:
1) The following relative methods are not currently implemented: access() (aka faccessat), chmod() (aka fchmodat), chown() (aka fchownat), mkdir() (aka mkdirat), readlink() (aka readlinkat), rename (a.k.a renameat), symlink() (aka symlinkat), and utimes() (a.k.a utimesat). 2) The path argument must be relative and is not subject to name2name() processing. This is in contrast to standard Unix "at" calls. 3) Only the online copy of the target is subject to these calls. Use the the standard calls for remote storage backed file systems.

Constructor & Destructor Documentation

XrdOssAt::XrdOssAt ( XrdOss ossfs  )  [inline]

Constructor

Parameters:
ossfd - Reference to the OSS system interface.
XrdOssAt::~XrdOssAt (  )  [inline]

Destructor.


Member Function Documentation

int XrdOssAt::Opendir ( XrdOssDF atDir,
const char *  path,
XrdOucEnv env,
XrdOssDF *&  ossDF 
)

Open a directory relative to an open directory.

Parameters:
atDir - Reference to the directory object to use.
path - Pointer to the relative path of the directory to be opened.
env - Reference to environmental information.
ossDF - Reference to where the directory object pointer is to be returned upon success.
Returns:
0 upon success or -errno or -osserr (see XrdOssError.hh).
int XrdOssAt::OpenRO ( XrdOssDF atDir,
const char *  path,
XrdOucEnv env,
XrdOssDF *&  ossDF 
)

Open a file in r/o mode relative to an open directory.

Parameters:
atDir - Reference to the directory object to use.
path - Pointer to the relative path of the file to be opened.
env - Reference to environmental information.
ossDF - Reference to where the file object pointer is to be returned upon success.
Returns:
0 upon success or -errno or -osserr (see XrdOssError.hh).
int XrdOssAt::Remdir ( XrdOssDF atDir,
const char *  path 
)

Remove a directory relative to an open directory. Only the online entry is removed (use standard remdir() for tape backed systems).

Parameters:
atDir - Reference to the directory object to use.
path - Pointer to the path of the directory to be removed.
Returns:
0 upon success or -errno or -osserr (see XrdOssError.hh).
int XrdOssAt::Stat ( XrdOssDF atDir,
const char *  path,
struct stat &  buf,
int  opts = 0 
)
int XrdOssAt::Unlink ( XrdOssDF atDir,
const char *  path 
)

Remove a file relative to an open directory. Only the online copy is is removed (use standard unlink() for tape backed systems).

Parameters:
atDir - Reference to the directory object to use.
path - Pointer to the path of the file to be removed.
Returns:
0 upon success or -errno or -osserr (see XrdOssError.hh).

Member Data Documentation

const int XrdOssAt::At_dInfo = 0x00000001 [static]

Return state information on the target relative to an open directory.

Parameters:
atDir - Reference to the directory object to use.
path - Pointer to the path of the target to be interrogated.
buf - Reference to the structure where info it to be returned.
opts - Options: At_dInfo - provide bdevID in st_rdev and partID in st_dev
Returns:
0 upon success or -errno or -osserr (see XrdOssError.hh).
XrdOss& XrdOssAt::ossFS [private]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 7 Jul 2020 for xrootd by  doxygen 1.6.1