Disk ARchive  2.4.12
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
Public Member Functions | Protected Member Functions | List of all members
libdar::filesystem_hard_link_write Class Reference

keep trace of already written inodes to restore hard links More...

#include <filesystem.hpp>

Inherits libdar::mem_ui.

Inherited by libdar::filesystem_restore.

Public Member Functions

 filesystem_hard_link_write (user_interaction &dialog)
 
 filesystem_hard_link_write (const filesystem_hard_link_write &ref)
 
const filesystem_hard_link_writeoperator= (const filesystem_hard_link_write &ref)
 
void write_hard_linked_target_if_not_set (const mirage *ref, const std::string &chemin)
 
bool known_etiquette (const infinint &eti)
 
void clear_corres_if_pointing_to (const infinint &ligne, const std::string &path)
 

Protected Member Functions

void corres_reset ()
 
void make_file (const nomme *ref, const path &ou, bool dir_perm, inode::comparison_fields what_to_check)
 
bool raw_set_ea (const nomme *e, const ea_attributs &list_ea, const std::string &spot, const mask &ea_mask)
 add the given EA matching the given mask to the file pointed to by "e" and spot More...
 
bool raw_clear_ea_set (const nomme *e, const std::string &path)
 remove EA set from filesystem's file, allows subsequent raw_set_ea More...
 
- Protected Member Functions inherited from libdar::mem_ui
 mem_ui (user_interaction &dialog)
 constructor More...
 
 mem_ui (const mem_ui &ref)
 the copy constructor More...
 
virtual ~mem_ui ()
 destructor More...
 
const mem_uioperator= (const mem_ui &ref)
 assignement operator More...
 
user_interactionget_ui () const
 get access to the user_interaction cloned object More...
 

Detailed Description

keep trace of already written inodes to restore hard links

Definition at line 214 of file filesystem.hpp.

Member Function Documentation

void libdar::filesystem_hard_link_write::clear_corres_if_pointing_to ( const infinint ligne,
const std::string &  path 
)

forget everything about a hard link if the path used to build subsequent hard links is the one given in argument

Parameters
[in]ligneis the etiquette number for that hard link
[in]pathif the internaly recorded path to build subsequent hard link to that inode is equal to path, forget everything about this hard linked inode
bool libdar::filesystem_hard_link_write::raw_clear_ea_set ( const nomme e,
const std::string &  path 
)
protected

remove EA set from filesystem's file, allows subsequent raw_set_ea

Parameters
[in]ethis object may be a hard link to or an inode
[in]paththe path in the filesystem where reside the object whose EA to clear
Returns
true if EA could be cleared, false if "e" is a hard link to an inode that has its EA already restored previously
bool libdar::filesystem_hard_link_write::raw_set_ea ( const nomme e,
const ea_attributs list_ea,
const std::string &  spot,
const mask ea_mask 
)
protected

add the given EA matching the given mask to the file pointed to by "e" and spot

Parameters
[in]emay be an inode or a hard link to an inode,
[in]list_eathe list of EA to restore
[in]spotthe path where to restore these EA (full path required, including the filename of 'e')
[in]ea_maskthe EA entry to restore from the list_ea (other entries are ignored)
Returns
true if EA could be restored, false if "e" is a hard link to an inode that has its EA already restored previously

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