Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

InstSrcDataYUM.h

Go to the documentation of this file.
00001 /*---------------------------------------------------------------------\
00002 |                                                                      |
00003 |                      __   __    ____ _____ ____                      |
00004 |                      \ \ / /_ _/ ___|_   _|___ \                     |
00005 |                       \ V / _` \___ \ | |   __) |                    |
00006 |                        | | (_| |___) || |  / __/                     |
00007 |                        |_|\__,_|____/ |_| |_____|                    |
00008 |                                                                      |
00009 |                               core system                            |
00010 |                                                        (C) SuSE GmbH |
00011 \----------------------------------------------------------------------/
00012 
00013   File:       InstSrcDataYUM.h
00014 
00015   Author:     Michael Andres <ma@suse.de>
00016   Maintainer: Michael Andres <ma@suse.de>
00017 
00018   Purpose: YUM installation source interface
00019 
00020 /-*/
00021 #ifndef InstSrcDataYUM_h
00022 #define InstSrcDataYUM_h
00023 
00024 #include <iosfwd>
00025 #include <list>
00026 
00027 #include "y2pm/InstSrcDataYUMPtr.h"
00028 #include "y2pm/InstSrcData.h"
00029 
00031 namespace YUM
00032 { 
00033 
00034   class Impl; // InstSrcDataYUM implementation
00035   typedef VarPtr<Impl> ImplPtr;
00036 
00038 } // namespace YUM
00040 
00042 //
00043 //      CLASS NAME : InstSrcDataYUM
00047 class InstSrcDataYUM : public InstSrcData
00048 {
00049   REP_BODY(InstSrcDataYUM);
00050 
00051   public:
00055     typedef InstSrcError Error;
00056 
00060     virtual
00061     ~InstSrcDataYUM();
00062 
00066     virtual std::ostream &
00067     dumpOn( std::ostream & str ) const;
00068 
00072     virtual const std::list<PMPackagePtr> &
00073     getPackages() const;
00074 
00075   private:
00079     InstSrcDataYUM( const Pathname & repodataDir_r );
00080 
00084     friend class YUM::Impl;
00085     YUM::ImplPtr _impl;
00086 
00087   public:
00097     static PMError
00098     tryGetDescr( InstSrcDescrPtr & ndescr_r,
00099                  const InstSrcPtr  source_r,
00100                  MediaAccessPtr    media_r,
00101                  const Pathname &  product_dir_r,
00102                  const Url &       mediaurl_r );
00103 
00113     static PMError
00114     tryGetData( InstSrcDataPtr & ndata_r,
00115                 const InstSrcPtr source_r );
00116 
00121     static PMError tryGetMediaId( const Url & url_r, const Pathname & product_dir_r,
00122                                   std::string & mediaId_r );
00123 };
00125 
00126 #endif // InstSrcDataYUM_h
00127 

Generated on Mon Sep 12 21:52:12 2005 for yast2-packagemanager by  doxygen 1.4.4