Resolver.cc

Go to the documentation of this file.
00001 /*---------------------------------------------------------------------\
00002 |                          ____ _   __ __ ___                          |
00003 |                         |__  / \ / / . \ . \                         |
00004 |                           / / \ V /|  _/  _/                         |
00005 |                          / /__ | | | | | |                           |
00006 |                         /_____||_| |_| |_|                           |
00007 |                                                                      |
00008 \---------------------------------------------------------------------*/
00012 #include <iostream>
00013 
00014 #include "zypp/Resolver.h"
00015 #include "zypp/UpgradeStatistics.h"
00016 #include "zypp/solver/detail/Resolver.h"
00017 #include "zypp/solver/detail/Testcase.h"
00018 
00019 using namespace std;
00020 
00022 namespace zypp
00023 { 
00024 
00025   IMPL_PTR_TYPE(Resolver);
00026 #if 0
00027   Resolver_Ptr Resolver::_resolver = NULL;
00028   Resolver_Ptr Resolver::resolver()
00029   {
00030     if (_resolver == NULL) {
00031         _resolver = new Resolver();
00032     }
00033     return _resolver;
00034   }
00035 #endif
00037   //
00038   //    METHOD NAME : Resolver::Resolver
00039   //    METHOD TYPE : Ctor
00040   //
00041   Resolver::Resolver( const ResPool & pool )
00042   {
00043     _pimpl = new solver::detail::Resolver(pool);
00044   }
00045 
00047   //
00048   //    METHOD NAME : Resolver::~Resolver
00049   //    METHOD TYPE : Dtor
00050   //
00051   Resolver::~Resolver()
00052   {}
00053 
00055   //
00056   //    Resolver interface forwarded to implementation
00057   //
00059   bool Resolver::verifySystem ()
00060   { return _pimpl->verifySystem(false); }
00061   bool Resolver::verifySystem (bool considerNewHardware)
00062   { return _pimpl->verifySystem(considerNewHardware); }
00063   bool Resolver::establishPool ()
00064   { return _pimpl->establishPool(); }
00065   bool Resolver::freshenPool ()
00066   { return _pimpl->freshenPool(); }
00067   bool Resolver::resolvePool ()
00068   { return _pimpl->resolvePool( false ); }// do not try all possibilities 
00069   bool Resolver::resolvePool( bool tryAllPossibilities)
00070   { return _pimpl->resolvePool( tryAllPossibilities); }
00071   bool Resolver::resolveDependencies( void )
00072   { return _pimpl->resolveDependencies( ); }
00073   void Resolver::undo()
00074   { _pimpl->undo(); }
00075   solver::detail::ResolverContext_Ptr Resolver::context (void) const
00076   { return _pimpl->context(); }
00077   ResolverProblemList Resolver::problems ()
00078   { return _pimpl->problems (); }
00079   std::list<std::string> Resolver::problemDescription( void ) const
00080   { return _pimpl->problemDescription (); }    
00081   void Resolver::applySolutions( const ProblemSolutionList & solutions )
00082   { _pimpl->applySolutions (solutions); }      
00083   void Resolver::doUpgrade( UpgradeStatistics & opt_stats_r )
00084   { _pimpl->doUpgrade(opt_stats_r); }
00085   Arch Resolver::architecture() const
00086   { return _pimpl->architecture(); }
00087   void Resolver::setArchitecture( const Arch & arch )
00088   { _pimpl->setArchitecture( arch ); }
00089   void Resolver::setForceResolve( const bool force )
00090   { _pimpl->setForceResolve( force ); }
00091   const bool Resolver::forceResolve()
00092   { return _pimpl->forceResolve(); }
00093     void Resolver::setPreferHighestVersion( const bool highestVersion )
00094   { _pimpl->setPreferHighestVersion( highestVersion ); }
00095   const bool Resolver::preferHighestVersion()
00096   { return _pimpl->preferHighestVersion(); }
00097   bool Resolver::transactResObject( ResObject::constPtr robj, bool install)
00098   { return _pimpl->transactResObject( robj, install ); }
00099   bool Resolver::transactResKind( Resolvable::Kind kind )
00100   { return _pimpl->transactResKind( kind ); }
00101   void Resolver::transactReset( ResStatus::TransactByValue causer )
00102   { _pimpl->transactReset( causer ); }
00103   void Resolver::addRequire (const Capability & capability)
00104   { _pimpl->addExtraCapability( capability ); }
00105   void Resolver::addConflict (const Capability & capability)
00106   { _pimpl->addExtraConflict( capability ); }          
00107   std::list<PoolItem_Ref> Resolver::problematicUpdateItems( void ) const
00108   { return _pimpl->problematicUpdateItems(); }
00109   void Resolver::setTimeout( int seconds )
00110   { _pimpl->setTimeout( seconds ); }
00111   void Resolver::setMaxSolverPasses (int count)
00112   { _pimpl->setMaxSolverPasses( count ); }
00113   int Resolver::timeout()
00114   { return _pimpl->timeout(); }
00115   int Resolver::maxSolverPasses()
00116   { return _pimpl->maxSolverPasses(); }
00117   bool Resolver::createSolverTestcase (const std::string & dumpPath)
00118   { solver::detail::Testcase testcase (dumpPath);
00119     return testcase.createTestcase(*_pimpl);}
00120   const solver::detail::ItemCapKindList Resolver::isInstalledBy (const PoolItem_Ref item)
00121   { return _pimpl->isInstalledBy (item); }
00122   const solver::detail::ItemCapKindList Resolver::installs (const PoolItem_Ref item)
00123   { return _pimpl->installs (item); }
00124 
00125 
00127 } // namespace zypp

Generated on Tue Sep 25 19:23:06 2007 for libzypp by  doxygen 1.5.3