libzypp
10.5.0
|
00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 #ifndef ZYPP_MEDIA_MEDIACIFS_H 00013 #define ZYPP_MEDIA_MEDIACIFS_H 00014 00015 #include "zypp/media/MediaHandler.h" 00016 00017 namespace zypp { 00018 namespace media { 00019 00020 class AuthData; 00021 00023 // 00024 // CLASS NAME : MediaCIFS 00032 class MediaCIFS : public MediaHandler { 00033 00034 protected: 00035 00036 virtual void attachTo (bool next = false); 00037 virtual void releaseFrom( const std::string & ejectDev ); 00038 virtual void getFile( const Pathname & filename ) const; 00039 virtual void getDir( const Pathname & dirname, bool recurse_r ) const; 00040 virtual void getDirInfo( std::list<std::string> & retlist, 00041 const Pathname & dirname, bool dots = true ) const; 00042 virtual void getDirInfo( filesystem::DirContent & retlist, 00043 const Pathname & dirname, bool dots = true ) const; 00044 virtual bool getDoesFileExist( const Pathname & filename ) const; 00045 00046 public: 00047 MediaCIFS( const Url& url_r, 00048 const Pathname & attach_point_hint_r ); 00049 00050 virtual ~MediaCIFS() { try { release(); } catch(...) {} } 00051 00052 virtual bool isAttached() const; 00053 00054 private: 00055 bool authenticate( AuthData & authdata, bool firstTry ) const; 00056 }; 00057 00059 } // namespace media 00060 } // namespace zypp 00061 00062 #endif // ZYPP_MEDIA_MEDIACIFS_H