xrootd
|
#include <XrdCephXAttr.hh>
Public Member Functions | |
XrdCephXAttr () | |
Constructor. | |
virtual | ~XrdCephXAttr () |
Destructor. | |
virtual int | Del (const char *Aname, const char *Path, int fd=-1) |
virtual void | Free (AList *aPL) |
virtual int | Get (const char *Aname, void *Aval, int Avsz, const char *Path, int fd=-1) |
virtual int | List (AList **aPL, const char *Path, int fd=-1, int getSz=0) |
virtual int | Set (const char *Aname, const void *Aval, int Avsz, const char *Path, int fd=-1, int isNew=0) |
Public Member Functions inherited from XrdSysXAttr | |
virtual int | Copy (const char *iPath, int iFD, const char *oPath, int oFD, const char *Aname=0) |
virtual XrdSysError * | SetMsgRoute (XrdSysError *errP) |
XrdSysXAttr () | |
Constructor and Destructor. | |
virtual | ~XrdSysXAttr () |
Additional Inherited Members | |
Protected Attributes inherited from XrdSysXAttr | |
XrdSysError * | Say |
This class implements XrdSysXAttr interface for usage with a CEPH storage. It should be loaded via the ofs.xattrlib directive.
This plugin is able to use any pool of ceph with any userId. There are several ways to provide the pool and userId to be used for a given operation. Here is the ordered list of possibilities. First one defined wins :
Note that the definition of a default via the ofs.xattrlib directive may clash with one used in a ofs.osslib directive. In case both directives have a default and they are different, the behavior is not defined. In case one of the two only has a default, it will be applied for both plugins.
XrdCephXAttr::XrdCephXAttr | ( | ) |
Constructor.
|
virtual |
Destructor.
|
virtual |
Remove an extended attribute.
Aname | -> The attribute name. |
Path | -> Path of the file whose attribute is to be removed. |
fd | If >=0 is the file descriptor of the opened subject file. |
Implements XrdSysXAttr.
|
virtual |
Release storage occupied by the Alist structure returned by List().
aPL | -> The first element of the AList structure. |
Implements XrdSysXAttr.
|
virtual |
Get an attribute value and its size.
Aname | -> The attribute name. |
Aval | -> Buffer to receive the attribute value. |
Avsz | Length of the buffer in bytes. Only up to this number of bytes should be returned. However, should Avsz be zero the the size of the attribute value should be returned and the Aval argument should be ignored. |
Path | -> Path of the file whose attribute is to be fetched. |
fd | -> If >=0 is the file descriptor of the opened subject file. |
Implements XrdSysXAttr.
|
virtual |
Get all of the attributes associated with a file.
aPL | -> the pointer to hold the first element of AList. The storage occupied by the returned AList must be released by calling Free(). |
Path | -> Path of the file whose attributes are t be returned. |
fd | -> If >=0 is the file descriptor of the opened subject file. |
getSz | When != 0 then the size of the maximum attribute value should be returned. Otherwise, upon success 0 is returned. |
Implements XrdSysXAttr.
|
virtual |
Set an attribute.
Aname | -> The attribute name. |
Aval | -> Buffer holding the attribute value. |
Avsz | Length of the buffer in bytes. This is the length of the attribute value which may contain binary data. |
Path | -> Path of the file whose attribute is to be set. |
fd | -> If >=0 is the file descriptor of the opened subject file. |
isNew | When !0 then the attribute must not exist (i.e. new). Otherwise, if it does exist, the value is replaced. In either case, if it does not exist it should be created. |
Implements XrdSysXAttr.