00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 #ifndef ZYPP_CAPABILITY_SPLITCAP_H 00013 #define ZYPP_CAPABILITY_SPLITCAP_H 00014 00015 #include "zypp/capability/CapabilityImpl.h" 00016 00018 namespace zypp 00019 { 00020 00021 namespace capability 00022 { 00023 00025 // 00026 // CLASS NAME : SplitCap 00027 // 00041 class SplitCap : public CapabilityImpl 00042 { 00043 public: 00044 typedef SplitCap Self; 00045 00047 SplitCap( const Resolvable::Kind & refers_r, 00048 const std::string & name_r, 00049 const std::string & path_r ) 00050 : CapabilityImpl( refers_r ) 00051 , _name( name_r ) 00052 , _path( path_r ) 00053 {} 00054 public: 00056 virtual const Kind & kind() const; 00057 00058 virtual bool relevant() const 00059 { return false; } 00060 00062 virtual CapMatch matches( const constPtr & rhs ) const; 00063 00065 virtual std::string encode() const; 00066 00067 const std::string & name() const 00068 { return _name; } 00069 00070 const std::string & path() const 00071 { return _path; } 00072 00073 private: 00075 std::string _name; 00077 std::string _path; 00078 }; 00080 00082 } // namespace capability 00085 } // namespace zypp 00087 #endif // ZYPP_CAPABILITY_SPLITCAP_H