libzypp  17.38.7
namespaceprovider.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 ----------------------------------------------------------------------/
9 *
10 * This file contains private API, this might break at any time between releases.
11 * You have been warned!
12 *
13 */
14 #ifndef ZYPP_NG_SAT_NAMESPACES_NAMESPACEPROVIDER_H_INCLUDED
15 #define ZYPP_NG_SAT_NAMESPACES_NAMESPACEPROVIDER_H_INCLUDED
16 
17 #include <string_view>
18 #include <initializer_list>
20 
21 namespace zyppng::sat {
22 
23  class Pool;
24 
36  public:
37  virtual ~NamespaceProvider() = default;
38 
46  virtual bool isSatisfied( detail::IdType value ) const;
47 
55  virtual void checkDirty( Pool & /*pool*/ ) {}
56 
66  virtual void prepare( Pool & /*pool*/ ) {}
67 
68  virtual void onReset( Pool & /*pool*/ ) {}
69 
73  virtual void attach(Pool &pool);
74 
75  protected:
82  void notifyDirty( PoolInvalidation invalidationLevel , std::initializer_list<std::string_view> reasons );
83 
84  protected:
85  Pool *_pool = nullptr;
86 
87  };
88 
89 } // namespace zyppng::sat
90 
91 #endif
virtual bool isSatisfied(detail::IdType value) const
Check if a specific value satisfies this namespace condition.
virtual void attach(Pool &pool)
Orchestrator for a libsolv pool instance.
Definition: pool.h:36
This file contains private API, this might break at any time between releases.
Definition: capabilities.h:22
zypp::sat::detail::IdType IdType
Definition: poolconstants.h:43
virtual void prepare(Pool &)
prepare
PoolInvalidation
Defines the scope of an invalidation request for the Pool.
Definition: poolconstants.h:66
Abstract base class for logic providing data to a libsolv namespace.
void notifyDirty(PoolInvalidation invalidationLevel, std::initializer_list< std::string_view > reasons)
Notify the attached registry/pool that data has changed.
virtual void checkDirty(Pool &)
checkDirty
virtual ~NamespaceProvider()=default