libzypp 8.13.6
|
00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 #include <iostream> 00013 #include "zypp/base/Logger.h" 00014 #include "zypp/base/Exception.h" 00015 00016 #include "zypp/target/CommitPackageCache.h" 00017 #include "zypp/target/CommitPackageCacheImpl.h" 00018 #include "zypp/target/CommitPackageCacheReadAhead.h" 00019 00020 using std::endl; 00021 00023 namespace zypp 00024 { 00025 00026 namespace target 00027 { 00028 00030 // 00031 // CLASS NAME : CommitPackageCache 00032 // 00034 00036 // 00037 // METHOD NAME : CommitPackageCache::CommitPackageCache 00038 // METHOD TYPE : Ctor 00039 // 00040 CommitPackageCache::CommitPackageCache( Impl * pimpl_r ) 00041 : _pimpl( pimpl_r ) 00042 { 00043 assert( _pimpl ); 00044 } 00045 00047 // 00048 // METHOD NAME : CommitPackageCache::CommitPackageCache 00049 // METHOD TYPE : Ctor 00050 // 00051 CommitPackageCache::CommitPackageCache( const_iterator begin_r, 00052 const_iterator end_r, 00053 const Pathname & rootDir_r, 00054 const PackageProvider & packageProvider_r ) 00055 { 00056 if ( getenv("ZYPP_COMMIT_NO_PACKAGE_CACHE") ) 00057 { 00058 MIL << "$ZYPP_COMMIT_NO_PACKAGE_CACHE is set." << endl; 00059 _pimpl.reset( new Impl( packageProvider_r ) ); // no cache 00060 } 00061 else 00062 { 00063 _pimpl.reset( new CommitPackageCacheReadAhead( begin_r, end_r, 00064 rootDir_r, packageProvider_r ) ); 00065 } 00066 assert( _pimpl ); 00067 } 00068 00070 // 00071 // METHOD NAME : CommitPackageCache::~CommitPackageCache 00072 // METHOD TYPE : Dtor 00073 // 00074 CommitPackageCache::~CommitPackageCache() 00075 {} 00076 00078 // 00079 // METHOD NAME : CommitPackageCache::~CommitPackageCache 00080 // METHOD TYPE : Dtor 00081 // 00082 ManagedFile CommitPackageCache::get( const_iterator citem_r ) 00083 { return _pimpl->get( citem_r ); } 00084 00085 /****************************************************************** 00086 ** 00087 ** FUNCTION NAME : operator<< 00088 ** FUNCTION TYPE : std::ostream & 00089 */ 00090 std::ostream & operator<<( std::ostream & str, const CommitPackageCache & obj ) 00091 { return str << *obj._pimpl; } 00092 00094 } // namespace target 00097 } // namespace zypp