Disk ARchive  2.5.2
Full featured and portable backup and archiving tool
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines
Public Member Functions | Protected Member Functions
libdar::entrepot Class Reference

the Entrepot interface More...

#include <entrepot.hpp>

Inherits libdar::on_pool.

Inherited by libdar::entrepot_local.

List of all members.

Public Member Functions

 entrepot ()
 constructor
virtual ~entrepot ()
 destructor
bool operator== (const entrepot &ref) const
 says whether two entrepot objects points to the same location
void set_location (const path &chemin)
 defines the directory where to proceed to future open() -- this is a "chdir" semantics
void set_root (const path &p_root)
 defines the root to use if set_location is given a relative path
void set_user_ownership (const std::string &x_user)
 set default ownership for files to be created thanks to the open() methods
void set_group_ownership (const std::string &x_group)
const pathget_location () const
const pathget_root () const
path get_full_path () const
virtual std::string get_url () const =0
const std::string & get_user_ownership () const
const std::string & get_group_ownership () const
fichier_global * open (user_interaction &dialog, const std::string &filename, gf_mode mode, bool force_permission, U_I permission, bool fail_if_exists, bool erase, hash_algo algo) const
virtual void read_dir_reset ()=0
 routines to read existing files in the current directory (see set_location() / set_root() methods)
virtual bool read_dir_next (std::string &filename)=0
void unlink (const std::string &filename) const
virtual entrepotclone () const =0

Protected Member Functions

virtual fichier_global * inherited_open (user_interaction &dialog, const std::string &filename, gf_mode mode, bool force_permission, U_I permission, bool fail_if_exists, bool erase) const =0
virtual void inherited_unlink (const std::string &filename) const =0
virtual void read_dir_flush ()=0

Detailed Description

the Entrepot interface

Definition at line 61 of file entrepot.hpp.


Member Function Documentation

fichier_global* libdar::entrepot::open ( user_interaction dialog,
const std::string &  filename,
gf_mode  mode,
bool  force_permission,
U_I  permission,
bool  fail_if_exists,
bool  erase,
hash_algo  algo 
) const

defines the way to open a file and return a "class fichier_global" object as last argument upon success

Parameters:
[in]dialogfor user interaction
[in]filenameis the full path+name of the file to open (read/create/write to)
[in]modedefines which way to open the file (read-only, read-write or write-only)
[in]force_permissionwhether to set the file permission to the value given in the permission argument
[in]permissionif force_permission is set, change the file permission to that value
[in]fail_if_existstells whether the underlying implementation have to fail throwing Erange("exists") if the file already exist when write access is required
[in]erasetells whether the underlying implementation will empty an existing file before writing to it
[in]algodefines the hash file to create, other value than hash_none are accepted only in writeonly mode with erase or fail_if_exist set
Returns:
upon success returns an object from a class inherited from fichier_global that the caller has the duty to delete, else an exception is thrown (most of the time it should be a Esystem object) by the called inherited class

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