CernVM-FS  2.12.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
swissknife::RootChainWalker Class Reference
Collaboration diagram for swissknife::RootChainWalker:

Public Types

typedef ObjectFetcher::CatalogTN CatalogTN
 
typedef ObjectFetcher::HistoryTN HistoryTN
 

Public Member Functions

 RootChainWalker (const manifest::Manifest *manifest, ObjectFetcher *object_fetcher, manifest::Reflog *reflog)
 
void FindObjectsAndPopulateReflog ()
 

Protected Types

typedef std::vector< shash::AnyCatalogList
 

Protected Member Functions

CatalogTNFetchCatalog (const shash::Any catalog_hash)
 
HistoryTNFetchHistory (const shash::Any history_hash)
 
void WalkRootCatalogs (const shash::Any &root_catalog_hash)
 
void WalkHistories (const shash::Any &history_hash)
 
bool WalkCatalogsInHistory (const HistoryTN *history)
 
void WalkListedCatalogs (const CatalogList &catalog_list)
 
template<class DatabaseT >
DatabaseT * ReturnOrAbort (const ObjectFetcherFailures::Failures failure, const shash::Any &content_hash, DatabaseT *database)
 

Private Attributes

ObjectFetcherobject_fetcher_
 
manifest::Reflogreflog_
 
const manifest::Manifestmanifest_
 

Detailed Description

Definition at line 21 of file swissknife_reflog.cc.

Member Typedef Documentation

typedef std::vector<shash::Any> swissknife::RootChainWalker::CatalogList
protected

Definition at line 37 of file swissknife_reflog.cc.

Constructor & Destructor Documentation

swissknife::RootChainWalker::RootChainWalker ( const manifest::Manifest manifest,
ObjectFetcher object_fetcher,
manifest::Reflog reflog 
)
inline

Definition at line 27 of file swissknife_reflog.cc.

Member Function Documentation

RootChainWalker::CatalogTN * swissknife::RootChainWalker::FetchCatalog ( const shash::Any  catalog_hash)
protected

Definition at line 260 of file swissknife_reflog.cc.

Referenced by WalkRootCatalogs().

Here is the call graph for this function:

Here is the caller graph for this function:

RootChainWalker::HistoryTN * swissknife::RootChainWalker::FetchHistory ( const shash::Any  history_hash)
protected

Definition at line 271 of file swissknife_reflog.cc.

Referenced by WalkHistories().

Here is the call graph for this function:

Here is the caller graph for this function:

void swissknife::RootChainWalker::FindObjectsAndPopulateReflog ( )

Definition at line 172 of file swissknife_reflog.cc.

Referenced by swissknife::CommandReconstructReflog::Main().

Here is the call graph for this function:

Here is the caller graph for this function:

template<class DatabaseT >
DatabaseT * swissknife::RootChainWalker::ReturnOrAbort ( const ObjectFetcherFailures::Failures  failure,
const shash::Any content_hash,
DatabaseT *  database 
)
protected

Definition at line 282 of file swissknife_reflog.cc.

Referenced by FetchCatalog(), and FetchHistory().

Here is the call graph for this function:

Here is the caller graph for this function:

bool swissknife::RootChainWalker::WalkCatalogsInHistory ( const HistoryTN history)
protected

If false is returned, it indicates that the history database comes from an early pre-release of the history functionality. The WalkHistory() iteration will subsequently stop. This is necessary, for instance, to handle the cernvm-prod.cern.ch repository.

Definition at line 232 of file swissknife_reflog.cc.

Referenced by WalkHistories().

Here is the call graph for this function:

Here is the caller graph for this function:

void swissknife::RootChainWalker::WalkHistories ( const shash::Any history_hash)
protected

Definition at line 203 of file swissknife_reflog.cc.

Referenced by FindObjectsAndPopulateReflog().

Here is the call graph for this function:

Here is the caller graph for this function:

void swissknife::RootChainWalker::WalkListedCatalogs ( const CatalogList catalog_list)
protected

Definition at line 250 of file swissknife_reflog.cc.

Referenced by WalkCatalogsInHistory().

Here is the call graph for this function:

Here is the caller graph for this function:

void swissknife::RootChainWalker::WalkRootCatalogs ( const shash::Any root_catalog_hash)
protected

Definition at line 185 of file swissknife_reflog.cc.

Referenced by FindObjectsAndPopulateReflog(), and WalkListedCatalogs().

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

const manifest::Manifest* swissknife::RootChainWalker::manifest_
private

Definition at line 57 of file swissknife_reflog.cc.

Referenced by FindObjectsAndPopulateReflog().

ObjectFetcher* swissknife::RootChainWalker::object_fetcher_
private

Definition at line 55 of file swissknife_reflog.cc.

Referenced by FetchCatalog(), and FetchHistory().

manifest::Reflog* swissknife::RootChainWalker::reflog_
private

Definition at line 56 of file swissknife_reflog.cc.

Referenced by WalkHistories(), and WalkRootCatalogs().


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