fixup Fix to build with libxml 2.12.x (fixes #505)
[platform/upstream/libzypp.git] / zypp / ResPool.cc
index b0c75ac..c573533 100644 (file)
  *
 */
 #include <iostream>
-//#include "zypp/base/Logger.h"
+//#include <zypp/base/Logger.h>
 
-#include "zypp/ResPool.h"
-#include "zypp/pool/PoolImpl.h"
-#include "zypp/base/SerialNumber.h"
+#include <zypp/base/SerialNumber.h>
+
+#include <zypp/ZYppFactory.h>
+#include <zypp/ResPool.h>
+#include <zypp/pool/PoolImpl.h>
+#include <zypp/pool/PoolStats.h>
 
 using std::endl;
 
@@ -22,53 +25,44 @@ using std::endl;
 namespace zypp
 { /////////////////////////////////////////////////////////////////
 
-  namespace
-  {
-    /** the empty pool used by ResPool::ResPool() */
-    pool::PoolTraits::Impl_constPtr noPool()
-    {
-      static pool::PoolTraits::Impl_constPtr _noPool( new pool::PoolImpl );
-      return _noPool;
-    }
-  }
+  ///////////////////////////////////////////////////////////////////
+  // class ResPool
+  ///////////////////////////////////////////////////////////////////
 
   ///////////////////////////////////////////////////////////////////
   //
-  //   METHOD NAME : ResPool::ResPool
-  //   METHOD TYPE : Ctor
+  //   METHOD NAME : ResPool::instance
+  //   METHOD TYPE : ResPool
   //
-  ResPool::ResPool()
-  : _pimpl( noPool() )
-  {}
+  ResPool ResPool::instance()
+  {
+    static ResPool _val( pool::PoolTraits::Impl_Ptr( new pool::PoolImpl ) );
+    return _val;
+  }
 
   ///////////////////////////////////////////////////////////////////
   //
   //   METHOD NAME : ResPool::ResPool
   //   METHOD TYPE : Ctor
   //
-  ResPool::ResPool( pool::PoolTraits::Impl_constPtr impl_r )
+  ResPool::ResPool( pool::PoolTraits::Impl_Ptr impl_r )
   : _pimpl( impl_r )
   {}
 
   ///////////////////////////////////////////////////////////////////
   //
-  //   METHOD NAME : ResPool::~ResPool
-  //   METHOD TYPE : Dtor
-  //
-  ResPool::~ResPool()
-  {}
-
-  ///////////////////////////////////////////////////////////////////
-  //
   // Forward to impementation:
   //
   ///////////////////////////////////////////////////////////////////
 
-  bool ResPool::satSynced() const
-  {  return _pimpl->satSynced(); }
+  ResPoolProxy ResPool::proxy() const
+  { return _pimpl->proxy( *this ); }
 
-  void ResPool::satSync() const
-  {  return _pimpl->satSync(); }
+  Resolver & ResPool::resolver() const
+  { return *getZYpp()->resolver(); }
+
+  const SerialNumber & ResPool::serial() const
+  { return _pimpl->serial(); }
 
   bool ResPool::empty() const
   { return _pimpl->empty(); }
@@ -76,50 +70,74 @@ namespace zypp
   ResPool::size_type ResPool::size() const
   { return _pimpl->size(); }
 
-  ResPool::const_iterator ResPool::begin() const
-  { return _pimpl->begin(); }
+  PoolItem ResPool::find( const sat::Solvable & slv_r ) const
+  { return _pimpl->find( slv_r ); }
 
-  ResPool::const_iterator ResPool::end() const
-  { return _pimpl->end(); }
+  ResPool::EstablishedStates ResPool::establishedStates() const
+  { return _pimpl->establishedStates(); }
 
-  ResPool::byName_iterator ResPool::byNameBegin( const std::string & name_r ) const
-  { return _pimpl->_namehash.begin( name_r ); }
+  ResPool::size_type ResPool::knownRepositoriesSize() const
+  { return _pimpl->knownRepositoriesSize(); }
 
-  ResPool::byName_iterator ResPool::byNameEnd( const std::string & name_r ) const
-  { return _pimpl->_namehash.end( name_r ); }
+  ResPool::repository_iterator ResPool::knownRepositoriesBegin() const
+  { return _pimpl->knownRepositoriesBegin(); }
 
-  ResPool::byCapabilityIndex_iterator ResPool::byCapabilityIndexBegin( const std::string & index_r, Dep depType_r ) const
-  { return _pimpl->_caphash.begin( index_r, depType_r ); }
+  ResPool::repository_iterator ResPool::knownRepositoriesEnd() const
+  { return _pimpl->knownRepositoriesEnd(); }
 
-  ResPool::byCapabilityIndex_iterator ResPool::byCapabilityIndexEnd( const std::string & index_r, Dep depType_r ) const
-  { return _pimpl->_caphash.end( index_r, depType_r ); }
+  Repository ResPool::reposFind( const std::string & alias_r ) const
+  { return _pimpl->reposFind( alias_r ); }
 
-  ResPool::size_type ResPool::knownRepositoriesSize() const
-  { return _pimpl->knownRepositories().size(); }
+  bool ResPool::hardLockQueriesEmpty() const
+  { return _pimpl->hardLockQueries().empty(); }
 
-  ResPool::repository_iterator ResPool::knownRepositoriesBegin() const
-  { return _pimpl->knownRepositories().begin(); }
+  ResPool::size_type ResPool::hardLockQueriesSize() const
+  { return _pimpl->hardLockQueries().size(); }
 
-  ResPool::repository_iterator ResPool::knownRepositoriesEnd() const
-  { return _pimpl->knownRepositories().end(); }
+  ResPool::hardLockQueries_iterator ResPool::hardLockQueriesBegin() const
+  { return _pimpl->hardLockQueries().begin(); }
 
-  void ResPool::setAdditionalRequire( const AdditionalCapSet & capset ) const
-  { _pimpl->setAdditionalRequire( capset ); }
-  ResPool::AdditionalCapSet & ResPool::additionalRequire() const
-  { return _pimpl->additionalRequire(); }
+  ResPool::hardLockQueries_iterator ResPool::hardLockQueriesEnd() const
+  { return _pimpl->hardLockQueries().end(); }
 
-  void ResPool::setAdditionalConflict( const AdditionalCapSet & capset ) const
-  { _pimpl->setAdditionalConflict( capset ); }
-  ResPool::AdditionalCapSet & ResPool::additionaConflict() const
-  { return _pimpl->additionaConflict(); }
+  void ResPool::setHardLockQueries( const HardLockQueries & newLocks_r )
+  { _pimpl->setHardLockQueries( newLocks_r ); }
 
-  void ResPool::setAdditionalProvide( const AdditionalCapSet & capset ) const
-  { _pimpl->setAdditionalProvide( capset ); }
-  ResPool::AdditionalCapSet & ResPool::additionaProvide() const
-  { return _pimpl->additionaProvide(); }
+  void ResPool::getHardLockQueries( HardLockQueries & activeLocks_r )
+  { _pimpl->getHardLockQueries( activeLocks_r ); }
 
-  const SerialNumber & ResPool::serial() const
-  { return _pimpl->serial(); }
+
+  const pool::PoolTraits::ItemContainerT & ResPool::store() const
+  { return _pimpl->store(); }
+
+  const pool::PoolTraits::Id2ItemT & ResPool::id2item() const
+  { return _pimpl->id2item(); }
+
+  ///////////////////////////////////////////////////////////////////
+  //
+  // Forward to sat::Pool:
+  //
+  ///////////////////////////////////////////////////////////////////
+  void ResPool::setRequestedLocales( const LocaleSet & locales_r )
+  { sat::Pool::instance().setRequestedLocales( locales_r ); }
+
+  bool ResPool::addRequestedLocale( const Locale & locale_r )
+  { return sat::Pool::instance().addRequestedLocale( locale_r ); }
+
+  bool ResPool::eraseRequestedLocale( const Locale & locale_r )
+  { return sat::Pool::instance().eraseRequestedLocale( locale_r ); }
+
+  const LocaleSet & ResPool::getRequestedLocales() const
+  { return sat::Pool::instance().getRequestedLocales(); }
+
+  bool ResPool::isRequestedLocale( const Locale & locale_r ) const
+  { return sat::Pool::instance().isRequestedLocale( locale_r ); }
+
+  const LocaleSet & ResPool::getAvailableLocales() const
+  { return sat::Pool::instance().getAvailableLocales(); }
+
+  bool ResPool::isAvailableLocale( const Locale & locale_r ) const
+  { return sat::Pool::instance().isAvailableLocale( locale_r ); }
 
   /******************************************************************
   **
@@ -128,7 +146,8 @@ namespace zypp
   */
   std::ostream & operator<<( std::ostream & str, const ResPool & obj )
   {
-    return str << *obj._pimpl;
+    return dumpPoolStats( str << "ResPool " << sat::Pool::instance() << endl << "  ",
+                          obj.begin(), obj.end() );
   }
 
   /////////////////////////////////////////////////////////////////