XRootD
XrdSysFAttr Class Reference

#include <XrdSysFAttr.hh>

+ Inheritance diagram for XrdSysFAttr:
+ Collaboration diagram for XrdSysFAttr:

Public Member Functions

 XrdSysFAttr ()
 Constructor & Destructor. More...
 
 ~XrdSysFAttr ()
 
- Public Member Functions inherited from XrdSysXAttr
 XrdSysXAttr ()
 Constructor and Destructor. More...
 
virtual ~XrdSysXAttr ()
 
virtual int Copy (const char *iPath, int iFD, const char *oPath, int oFD, const char *Aname=0)
 
virtual XrdSysErrorSetMsgRoute (XrdSysError *errP)
 

Static Public Member Functions

static void SetPlugin (XrdSysXAttr *xaP, bool push=false)
 

Static Public Attributes

static XrdSysXAttrXat = &dfltXAttr
 

Additional Inherited Members

- Protected Attributes inherited from XrdSysXAttr
XrdSysErrorSay
 

Detailed Description

This class provides an internal interface to handle extended file attributes either via a default implementation or an external plugin.

Definition at line 40 of file XrdSysFAttr.hh.

Constructor & Destructor Documentation

◆ XrdSysFAttr()

XrdSysFAttr::XrdSysFAttr ( )
inline

Constructor & Destructor.

Definition at line 69 of file XrdSysFAttr.hh.

69 {}

◆ ~XrdSysFAttr()

XrdSysFAttr::~XrdSysFAttr ( )
inline

Definition at line 70 of file XrdSysFAttr.hh.

70 {}

Member Function Documentation

◆ SetPlugin()

void XrdSysFAttr::SetPlugin ( XrdSysXAttr xaP,
bool  push = false 
)
static

Establish a plugin that is to replace the builtin extended attribute processing methods.

Parameters
xaP-> To an instance of an XrdSysXAttr object that is to replace the builtin object that processes extended attributes;
pushTrue if this is a push request not a replace request. Push requests keep the current attribute processor.

Definition at line 164 of file XrdSysFAttr.cc.

165 {
166  if (!push && Xat && Xat != &dfltXAttr) delete Xat;
167  XrdSysXAttrActive = Xat = xaP;
168 }
XrdSysXAttr * XrdSysXAttrActive
Definition: XrdSysFAttr.cc:61
static XrdSysXAttr * Xat
Definition: XrdSysFAttr.hh:51

References Xat, and XrdSysXAttrActive.

Referenced by XrdOfsConfigPI::Load().

+ Here is the caller graph for this function:

Member Data Documentation

◆ Xat

XrdSysXAttr * XrdSysFAttr::Xat = &dfltXAttr
static

Xat points to the plugin to be used for all operations. The methods inherited from XrdSysXAttr cannot be directly invoked. Instead, use XrdSysFAttr::Xat-><any XrdSysXAttr public method>. All static methods here, however, can be directly invoked.

Definition at line 51 of file XrdSysFAttr.hh.

Referenced by XrdOssSys::Alloc_Cache(), XrdOssCopy::Copy(), XrdOucXAttr< T >::Del(), XrdCl::LocalFileHandler::DelXAttr(), XrdOucXAttr< T >::Get(), XrdCl::LocalFileHandler::GetXAttr(), XrdCksManager::List(), XrdCl::LocalFileHandler::ListXAttr(), XrdOfsConfigPI::Load(), XrdOssSys::RenameLink3(), XrdOucXAttr< T >::Set(), SetPlugin(), and XrdCl::LocalFileHandler::SetXAttr().


The documentation for this class was generated from the following files: