CARDS 2.4.87
Package manager for the NuTyX GNU/Linux distribution
Pkgdbh Class Reference
Inheritance diagram for Pkgdbh:
Cards_base CardsDepends Flcards_info Pkgadd Pkgadd Pkginfo Pkginfo Pkgrm Pkgrm

Public Member Functions

 Pkgdbh (const std::string &name)
 
virtual void parseArguments (int argc, char **argv)
 
virtual void run (int argc, char **argv)
 
virtual void run ()
 
virtual void printHelp () const
 
virtual void progressInfo ()
 
virtual void treatErrors (const std::string &s) const
 
void print_version () const
 
int getNumberOfPackages ()
 
std::set< std::string > getListOfPackageName ()
 
bool checkPackageNameExist (const std::string &name) const
 
unsigned int getFilesNumber ()
 
unsigned int getInstalledFilesNumber ()
 
std::set< std::string > getFilesList ()
 
 Pkgdbh (const std::string &name)
 
virtual void parseArguments (int argc, char **argv)
 
virtual void run (int argc, char **argv)
 
virtual void run ()
 
virtual void printHelp () const
 
virtual void progressInfo ()
 
virtual void treatErrors (const std::string &s) const
 
void print_version () const
 
int getNumberOfPackages ()
 
std::set< std::string > getListOfPackageName ()
 
bool checkPackageNameExist (const std::string &name) const
 
unsigned int getFilesNumber ()
 
unsigned int getInstalledFilesNumber ()
 
std::set< std::string > getFilesList ()
 

Protected Member Functions

std::set< std::string > getFilesOfPackage (const std::string &packageName)
 
int getListOfPackageNames (const std::string &path)
 
std::pair< std::string, pkginfo_tgetInfosPackage (const std::string &packageName)
 
void buildSimpleDatabase ()
 
void buildCompleteDatabase (const bool &silent)
 
void buildDatabase (const bool &progress, const bool &simple, const bool &all, const bool &files, const std::string &packageName)
 
void addPackageFilesRefsToDB (const std::string &name, const pkginfo_t &info)
 
bool checkPackageNameUptodate (const std::pair< std::string, pkginfo_t > &archiveName)
 
bool checkPackageNameBuildDateSame (const std::pair< std::string, time_t > &dependencieNameBuild)
 
void removePackageFiles (const std::string &name)
 
void removePackageFiles (const std::string &name, const std::set< std::string > &keep_list)
 
void removePackageFilesRefsFromDB (const std::string &name)
 
void removePackageFilesRefsFromDB (std::set< std::string > files, const std::set< std::string > &keep_list)
 
std::set< std::string > getConflictsFilesList (const std::string &name, const pkginfo_t &info)
 
std::pair< std::string, pkginfo_topenArchivePackage (const std::string &filename)
 
std::set< std::pair< std::string, time_t > > getPackageDependencies (const std::string &filename)
 
void extractAndRunPREfromPackage (const std::string &filename)
 
void installArchivePackage (const std::string &filename, const std::set< std::string > &keep_list, const std::set< std::string > &non_install_files)
 
void moveMetaFilesPackage (const std::string &name, pkginfo_t &info)
 
void readRulesFile ()
 
void getInstallRulesList (const std::vector< rule_t > &rules, rule_event_t event, std::vector< rule_t > &found) const
 
bool checkRuleAppliesToFile (const rule_t &rule, const std::string &file)
 
void getFootprintPackage (std::string &filename)
 
std::set< std::string > getFilesOfPackage (const std::string &packageName)
 
int getListOfPackageNames (const std::string &path)
 
std::pair< std::string, pkginfo_tgetInfosPackage (const std::string &packageName)
 
void buildSimpleDatabase ()
 
void buildCompleteDatabase (const bool &silent)
 
void buildDatabase (const bool &progress, const bool &simple, const bool &all, const bool &files, const std::string &packageName)
 
void addPackageFilesRefsToDB (const std::string &name, const pkginfo_t &info)
 
bool checkPackageNameUptodate (const std::pair< std::string, pkginfo_t > &archiveName)
 
bool checkPackageNameBuildDateSame (const std::pair< std::string, time_t > &dependencieNameBuild)
 
void removePackageFiles (const std::string &name)
 
void removePackageFiles (const std::string &name, const std::set< std::string > &keep_list)
 
void removePackageFilesRefsFromDB (const std::string &name)
 
void removePackageFilesRefsFromDB (std::set< std::string > files, const std::set< std::string > &keep_list)
 
std::set< std::string > getConflictsFilesList (const std::string &name, const pkginfo_t &info)
 
std::pair< std::string, pkginfo_topenArchivePackage (const std::string &filename)
 
std::set< std::pair< std::string, time_t > > getPackageDependencies (const std::string &filename)
 
void extractAndRunPREfromPackage (const std::string &filename)
 
void installArchivePackage (const std::string &filename, const std::set< std::string > &keep_list, const std::set< std::string > &non_install_files)
 
void moveMetaFilesPackage (const std::string &name, pkginfo_t &info)
 
void readRulesFile ()
 
void getInstallRulesList (const std::vector< rule_t > &rules, rule_event_t event, std::vector< rule_t > &found) const
 
bool checkRuleAppliesToFile (const rule_t &rule, const std::string &file)
 
void getFootprintPackage (std::string &filename)
 

Protected Attributes

std::string m_packageArchiveName
 
std::string m_packageName
 
std::string m_packageArchiveVersion
 
std::string m_packageArchiveRelease
 
std::string m_packageArchiveCollection
 
std::string m_packageVersion
 
std::string m_packageRelease
 
std::string m_packageCollection
 
std::string m_utilName
 
std::string m_root
 
std::string m_build
 
std::vector< rule_tm_actionRules
 
std::set< std::pair< std::string, int > > m_postInstallList
 
alias_t m_listOfAlias
 
packages_t m_listOfInstPackages
 
packages_t m_listOfDepotPackages
 
action m_actualAction
 
error m_actualError
 

Member Function Documentation

◆ buildCompleteDatabase()

void Pkgdbh::buildCompleteDatabase ( const bool &  silent)
protected

Populate the database with all details infos

◆ buildDatabase()

void Pkgdbh::buildDatabase ( const bool &  progress,
const bool &  simple,
const bool &  all,
const bool &  files,
const std::string &  packageName 
)
protected

Populate the database in following modes:

  • if nothing specify only get the List of PackageNames and populate the alias list.
  • if simple then only with name, version, release, collection build date and group name
  • if all then all the availables attributes
  • if files then all the files of the package(s)
  • if packageName size() > 0 then we do just for the packageName

◆ buildSimpleDatabase()

void Pkgdbh::buildSimpleDatabase ( )
protected

Populate the database with:

  • Name
  • version
  • release
  • collection
  • Build date
  • Group name
  • Packager name

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