paludis::RepositoryNameCache Class Reference
[Repository]

#include <repository_name_cache.hh>

Inheritance diagram for paludis::RepositoryNameCache:

paludis::PrivateImplementationPattern< C_ >

List of all members.

Basic operations

 RepositoryNameCache (const FSEntry &location, const Repository *const repo)
virtual ~RepositoryNameCache ()

Cache helper functions

std::tr1::shared_ptr< const
CategoryNamePartSet
category_names_containing_package (const PackageNamePart &p) const
bool usable () const PALUDIS_ATTRIBUTE((nothrow))
void regenerate_cache () const
void add (const QualifiedPackageName &)
void remove (const QualifiedPackageName &)


Detailed Description

Used by various Repository subclasses to implement a names cache.

See also:
Repository

Member Function Documentation

std::tr1::shared_ptr<const CategoryNamePartSet> paludis::RepositoryNameCache::category_names_containing_package ( const PackageNamePart p  )  const

Implement category_names_containing_package.

May return a zero pointer, in which case the repository should fall back to Repository::do_category_names_containing_package or its own implementation.

bool paludis::RepositoryNameCache::usable (  )  const

Whether or not our cache is usable.

Initially this will be true. After the first query the value may change to false (the query will return a zero pointer too).

void paludis::RepositoryNameCache::regenerate_cache (  )  const

Implement cache regeneration.

void paludis::RepositoryNameCache::add ( const QualifiedPackageName  ) 

Add a new package to the cache.

void paludis::RepositoryNameCache::remove ( const QualifiedPackageName  ) 

Remove a package from the cache.


The documentation for this class was generated from the following file:
Generated on Mon Sep 21 10:36:11 2009 for paludis by  doxygen 1.5.4