CernVM-FS
2.12.0
|
#include <libcvmfs_int.h>
Public Member Functions | |
~LibContext () | |
void | EnableMultiThreaded () |
int | GetAttr (const char *c_path, struct stat *info) |
int | Readlink (const char *path, char *buf, size_t size) |
int | ListDirectory (const char *path, char ***buf, size_t *listlen, size_t *buflen, bool self_reference) |
int | ListDirectoryStat (const char *c_path, cvmfs_stat_t **buf, size_t *listlen, size_t *buflen) |
int | Open (const char *c_path) |
int64_t | Pread (int fd, void *buf, uint64_t size, uint64_t off) |
int | Close (int fd) |
int | GetExtAttr (const char *c_path, struct cvmfs_attr *info) |
int | GetNestedCatalogAttr (const char *c_path, struct cvmfs_nc_attr *nc_attr) |
int | ListNestedCatalogs (const char *path, char ***buf, size_t *buflen) |
int | Remount () |
uint64_t | GetRevision () |
MountPoint * | mount_point () |
void | set_options_mgr (OptionsManager *value) |
Static Public Member Functions | |
static LibContext * | Create (const std::string &fqrn, OptionsManager *options_mgr) |
Private Member Functions | |
LibContext () | |
FileSystem * | file_system () |
void | AppendStringToList (char const *str, char ***buf, size_t *listlen, size_t *buflen) |
void | AppendStatToList (const cvmfs_stat_t st, cvmfs_stat_t **buf, size_t *listlen, size_t *buflen) |
bool | GetDirentForPath (const PathString &path, catalog::DirectoryEntry *dirent) |
void | CvmfsAttrFromDirent (const catalog::DirectoryEntry dirent, struct cvmfs_attr *attr) |
Private Member Functions inherited from SingleCopy | |
SingleCopy () | |
Private Attributes | |
OptionsManager * | options_mgr_ |
MountPoint * | mount_point_ |
InterruptCue | default_interrupt_cue_ |
Static Private Attributes | |
static const int | kFdChunked = 1 << 30 |
Encapsulates a single attached repository. It uses a MountPoint object for creating the state of all the necessary manager objects. On top of the managers it implements file system operations (read, list, ...).
Definition at line 89 of file libcvmfs_int.h.
LibContext::~LibContext | ( | ) |
Definition at line 176 of file libcvmfs_int.cc.
|
private |
use static method Create() for construction
Definition at line 170 of file libcvmfs_int.cc.
Referenced by Create().
|
private |
Definition at line 237 of file libcvmfs_int.cc.
Referenced by ListDirectoryStat().
|
private |
Definition at line 214 of file libcvmfs_int.cc.
Referenced by ListDirectory(), and ListNestedCatalogs().
int LibContext::Close | ( | int | fd | ) |
Definition at line 705 of file libcvmfs_int.cc.
Referenced by cvmfs_close().
|
static |
Definition at line 156 of file libcvmfs_int.cc.
Referenced by cvmfs_attach_repo(), and cvmfs_attach_repo_v2().
|
private |
Definition at line 274 of file libcvmfs_int.cc.
Referenced by GetExtAttr().
void LibContext::EnableMultiThreaded | ( | ) |
Definition at line 181 of file libcvmfs_int.cc.
Referenced by cvmfs_enable_threaded().
|
inlineprivate |
Definition at line 131 of file libcvmfs_int.h.
Referenced by Close(), Create(), GetAttr(), Open(), Pread(), and Readlink().
int LibContext::GetAttr | ( | const char * | c_path, |
struct stat * | info | ||
) |
Definition at line 254 of file libcvmfs_int.cc.
Referenced by cvmfs_lstat(), cvmfs_stat(), and expand_path().
|
private |
Definition at line 185 of file libcvmfs_int.cc.
Referenced by GetAttr(), GetExtAttr(), ListDirectory(), ListDirectoryStat(), Open(), and Readlink().
int LibContext::GetExtAttr | ( | const char * | c_path, |
struct cvmfs_attr * | info | ||
) |
Definition at line 293 of file libcvmfs_int.cc.
Referenced by cvmfs_stat_attr().
int LibContext::GetNestedCatalogAttr | ( | const char * | c_path, |
struct cvmfs_nc_attr * | nc_attr | ||
) |
Definition at line 468 of file libcvmfs_int.cc.
Referenced by cvmfs_stat_nc().
uint64_t LibContext::GetRevision | ( | ) |
Definition at line 751 of file libcvmfs_int.cc.
Referenced by cvmfs_get_revision().
int LibContext::ListDirectory | ( | const char * | path, |
char *** | buf, | ||
size_t * | listlen, | ||
size_t * | buflen, | ||
bool | self_reference | ||
) |
Definition at line 369 of file libcvmfs_int.cc.
Referenced by cvmfs_listdir(), and cvmfs_listdir_contents().
int LibContext::ListDirectoryStat | ( | const char * | c_path, |
cvmfs_stat_t ** | buf, | ||
size_t * | listlen, | ||
size_t * | buflen | ||
) |
Definition at line 426 of file libcvmfs_int.cc.
Referenced by cvmfs_listdir_stat().
int LibContext::ListNestedCatalogs | ( | const char * | path, |
char *** | buf, | ||
size_t * | buflen | ||
) |
Definition at line 517 of file libcvmfs_int.cc.
Referenced by cvmfs_list_nc().
|
inline |
Definition at line 119 of file libcvmfs_int.h.
Referenced by cvmfs_attach_repo(), cvmfs_statistics_format(), and expand_path().
int LibContext::Open | ( | const char * | c_path | ) |
Definition at line 553 of file libcvmfs_int.cc.
Referenced by cvmfs_open().
int64_t LibContext::Pread | ( | int | fd, |
void * | buf, | ||
uint64_t | size, | ||
uint64_t | off | ||
) |
Definition at line 622 of file libcvmfs_int.cc.
Referenced by cvmfs_pread().
int LibContext::Readlink | ( | const char * | path, |
char * | buf, | ||
size_t | size | ||
) |
Definition at line 342 of file libcvmfs_int.cc.
Referenced by cvmfs_readlink(), and expand_path().
int LibContext::Remount | ( | ) |
Definition at line 722 of file libcvmfs_int.cc.
Referenced by cvmfs_remount().
|
inline |
Definition at line 120 of file libcvmfs_int.h.
Referenced by cvmfs_adopt_options(), and cvmfs_attach_repo().
|
private |
Used to prevent construction/destruction of an InterruptCue object in every file system operation.
Definition at line 157 of file libcvmfs_int.h.
Referenced by GetAttr(), GetExtAttr(), GetNestedCatalogAttr(), ListDirectory(), ListDirectoryStat(), ListNestedCatalogs(), Open(), Pread(), and Readlink().
|
staticprivate |
File descriptors of chunked files have bit 30 set.
Definition at line 126 of file libcvmfs_int.h.
|
private |
Definition at line 151 of file libcvmfs_int.h.
Referenced by Close(), Create(), EnableMultiThreaded(), GetDirentForPath(), GetExtAttr(), GetNestedCatalogAttr(), GetRevision(), ListDirectory(), ListDirectoryStat(), ListNestedCatalogs(), mount_point(), Open(), Pread(), Remount(), and ~LibContext().
|
private |
Only non-NULL if cvmfs_attache_repo is used for initialization. In this case, the options manager needs to be cleaned up by cvmfs_fini.
Definition at line 150 of file libcvmfs_int.h.
Referenced by set_options_mgr(), and ~LibContext().