Author: dmacvicar Date: Fri Sep 12 16:33:26 2008 New Revision: 11049 URL: http://svn.opensuse.org/viewcvs/zypp?rev=11049&view=rev Log: - implement the url retrieval Modified: trunk/libzypp/zypp/Product.cc trunk/libzypp/zypp/sat/SolvAttr.cc Modified: trunk/libzypp/zypp/Product.cc URL: http://svn.opensuse.org/viewcvs/zypp/trunk/libzypp/zypp/Product.cc?rev=11049&r1=11048&r2=11049&view=diff ============================================================================== --- trunk/libzypp/zypp/Product.cc (original) +++ trunk/libzypp/zypp/Product.cc Fri Sep 12 16:33:26 2008 @@ -162,7 +162,29 @@ Product::UrlList Product::urls( const std::string & key_r ) const { UrlList ret; -#warning IMPLEMENT PRODUCT URLS + + sat::LookupAttr url( sat::SolvAttr::productUrl, *this ); + sat::LookupAttr url_type( sat::SolvAttr::productUrlType, *this ); + + sat::LookupAttr::iterator url_it(url.begin()); + sat::LookupAttr::iterator url_type_it(url_type.begin()); + + for (;url_it != url.end(); ++url_it, ++url_type_it) + { + /* safety checks, shouldn't happen (tm) */ + if (url_type_it == url_type.end()) + { + /* FIXME: Raise exception ?! */ + ERR << *this << " : The thing that should not happen, happened." << endl; + break; + } + + if ( url_type_it.asString() == key_r ) + { + ret._list.push_back(url_it.asString()); + } + } /* while (attribute array) */ + return ret; } Modified: trunk/libzypp/zypp/sat/SolvAttr.cc URL: http://svn.opensuse.org/viewcvs/zypp/trunk/libzypp/zypp/sat/SolvAttr.cc?rev=11049&r1=11048&r2=11049&view=diff ============================================================================== --- trunk/libzypp/zypp/sat/SolvAttr.cc (original) +++ trunk/libzypp/zypp/sat/SolvAttr.cc Fri Sep 12 16:33:26 2008 @@ -107,7 +107,6 @@ const SolvAttr SolvAttr::productUpdaterepoKey ( PRODUCT_UPDATEREPOKEY ); const SolvAttr SolvAttr::productRegisterTarget ( PRODUCT_REGISTER_TARGET ); const SolvAttr SolvAttr::productRegisterRelease( PRODUCT_REGISTER_RELEASE ); - const SolvAttr SolvAttr::productUrl( PRODUCT_URL ); const SolvAttr SolvAttr::productUrlType( PRODUCT_URL_TYPE ); -- To unsubscribe, e-mail: zypp-commit+unsubscribe@opensuse.org For additional commands, e-mail: zypp-commit+help@opensuse.org