00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 #include <iostream> 00013 //#include "zypp/base/Logger.h" 00014 00015 #include "zypp/ResPool.h" 00016 #include "zypp/pool/PoolImpl.h" 00017 #include "zypp/base/SerialNumber.h" 00018 00019 using std::endl; 00020 00022 namespace zypp 00023 { 00024 00025 namespace 00026 { 00028 pool::PoolTraits::Impl_constPtr noPool() 00029 { 00030 static pool::PoolTraits::Impl_constPtr _noPool( new pool::PoolImpl ); 00031 return _noPool; 00032 } 00033 } 00034 00036 // 00037 // METHOD NAME : ResPool::ResPool 00038 // METHOD TYPE : Ctor 00039 // 00040 ResPool::ResPool() 00041 : _pimpl( noPool() ) 00042 {} 00043 00045 // 00046 // METHOD NAME : ResPool::ResPool 00047 // METHOD TYPE : Ctor 00048 // 00049 ResPool::ResPool( pool::PoolTraits::Impl_constPtr impl_r ) 00050 : _pimpl( impl_r ) 00051 {} 00052 00054 // 00055 // METHOD NAME : ResPool::~ResPool 00056 // METHOD TYPE : Dtor 00057 // 00058 ResPool::~ResPool() 00059 {} 00060 00062 // 00063 // Forward to impementation: 00064 // 00066 00067 bool ResPool::empty() const 00068 { return _pimpl->empty(); } 00069 00070 ResPool::size_type ResPool::size() const 00071 { return _pimpl->size(); } 00072 00073 ResPool::const_iterator ResPool::begin() const 00074 { return _pimpl->begin(); } 00075 00076 ResPool::const_iterator ResPool::end() const 00077 { return _pimpl->end(); } 00078 00079 ResPool::byName_iterator ResPool::byNameBegin( const std::string & name_r ) const 00080 { return _pimpl->_namehash.begin( name_r ); } 00081 00082 ResPool::byName_iterator ResPool::byNameEnd( const std::string & name_r ) const 00083 { return _pimpl->_namehash.end( name_r ); } 00084 00085 ResPool::byCapabilityIndex_iterator ResPool::byCapabilityIndexBegin( const std::string & index_r, Dep depType_r ) const 00086 { return _pimpl->_caphash.begin( index_r, depType_r ); } 00087 00088 ResPool::byCapabilityIndex_iterator ResPool::byCapabilityIndexEnd( const std::string & index_r, Dep depType_r ) const 00089 { return _pimpl->_caphash.end( index_r, depType_r ); } 00090 00091 ResPool::size_type ResPool::knownRepositoriesSize() const 00092 { return _pimpl->knownRepositories().size(); } 00093 00094 ResPool::repository_iterator ResPool::knownRepositoriesBegin() const 00095 { return _pimpl->knownRepositories().begin(); } 00096 00097 ResPool::repository_iterator ResPool::knownRepositoriesEnd() const 00098 { return _pimpl->knownRepositories().end(); } 00099 00100 void ResPool::setAdditionalRequire( const AdditionalCapSet & capset ) const 00101 { _pimpl->setAdditionalRequire( capset ); } 00102 ResPool::AdditionalCapSet & ResPool::additionalRequire() const 00103 { return _pimpl->additionalRequire(); } 00104 00105 void ResPool::setAdditionalConflict( const AdditionalCapSet & capset ) const 00106 { _pimpl->setAdditionalConflict( capset ); } 00107 ResPool::AdditionalCapSet & ResPool::additionaConflict() const 00108 { return _pimpl->additionaConflict(); } 00109 00110 void ResPool::setAdditionalProvide( const AdditionalCapSet & capset ) const 00111 { _pimpl->setAdditionalProvide( capset ); } 00112 ResPool::AdditionalCapSet & ResPool::additionaProvide() const 00113 { return _pimpl->additionaProvide(); } 00114 00115 const SerialNumber & ResPool::serial() const 00116 { return _pimpl->serial(); } 00117 00118 /****************************************************************** 00119 ** 00120 ** FUNCTION NAME : operator<< 00121 ** FUNCTION TYPE : std::ostream & 00122 */ 00123 std::ostream & operator<<( std::ostream & str, const ResPool & obj ) 00124 { 00125 return str << *obj._pimpl; 00126 } 00127 00129 } // namespace zypp
1.5.3