Author: jkupec
Date: Wed Jul 18 12:27:08 2007
New Revision: 6056
URL: http://svn.opensuse.org/viewcvs/zypp?rev=6056&view=rev
Log:
- remove repository by URL reimplemented
- --loose-auth and --loose-query added for removerepo command
- fixes bug 292362
Modified:
trunk/zypper/src/zypper-sources.cc
trunk/zypper/src/zypper-sources.h
trunk/zypper/src/zypper.cc
Modified: trunk/zypper/src/zypper-sources.cc
URL: http://svn.opensuse.org/viewcvs/zypp/trunk/zypper/src/zypper-sources.cc?rev=6056&r1=6055&r2=6056&view=diff
==============================================================================
--- trunk/zypper/src/zypper-sources.cc (original)
+++ trunk/zypper/src/zypper-sources.cc Wed Jul 18 12:27:08 2007
@@ -405,14 +405,51 @@
return false;
}
+static bool do_remove_repo(const RepoInfo & repoinfo)
+{
+ RepoManager manager;
+ bool found = true;
+ try
+ {
+ manager.removeRepository(repoinfo);
+ cout << format(_("Repository %s has been removed.")) % repoinfo.alias() << endl;
+ MIL << format("Repository %s has been removed.") % repoinfo.alias() << endl;
+ }
+ catch (const repo::RepoNotFoundException & ex)
+ {
+ found = false;
+ }
+
+ return found;
+}
+
+
// ----------------------------------------------------------------------------
-void remove_repo( const std::string &alias )
+bool remove_repo( const std::string &alias )
{
RepoManager manager;
RepoInfo info;
info.setAlias(alias);
- manager.removeRepository(info);
+
+ return do_remove_repo(info);
+}
+
+bool remove_repo(const Url & url, const url::ViewOption & urlview)
+{
+ RepoManager manager;
+ bool found = true;
+ try
+ {
+ RepoInfo info = manager.getRepositoryInfo(url, urlview);
+ found = do_remove_repo(info);
+ }
+ catch (const repo::RepoNotFoundException & ex)
+ {
+ found = false;
+ }
+
+ return found;
}
// ----------------------------------------------------------------------------
@@ -427,7 +464,7 @@
repo.setAlias(newalias);
manager.modifyRepository(alias, repo);
- cout_n << format(_("Repository %s renamed to %s")) % alias % repo.alias() << endl;
+ cout << format(_("Repository %s renamed to %s")) % alias % repo.alias() << endl;
MIL << format("Repository %s renamed to %s") % alias % repo.alias() << endl;
}
catch (const RepoNotFoundException & ex)
Modified: trunk/zypper/src/zypper-sources.h
URL: http://svn.opensuse.org/viewcvs/zypp/trunk/zypper/src/zypper-sources.h?rev=6056&r1=6055&r2=6056&view=diff
==============================================================================
--- trunk/zypper/src/zypper-sources.h (original)
+++ trunk/zypper/src/zypper-sources.h Wed Jul 18 12:27:08 2007
@@ -62,8 +62,9 @@
/**
* Delte repository specified by \a alias.
*/
-void remove_repo( const std::string &alias );
+bool remove_repo( const std::string &alias );
+bool remove_repo( const zypp::Url & url, const zypp::url::ViewOption & urlview );
/**
* Rename repository specified by \a alias to \a newalias.
Modified: trunk/zypper/src/zypper.cc
URL: http://svn.opensuse.org/viewcvs/zypp/trunk/zypper/src/zypper.cc?rev=6056&r1=6055&r2=6056&view=diff
==============================================================================
--- trunk/zypper/src/zypper.cc (original)
+++ trunk/zypper/src/zypper.cc Wed Jul 18 12:27:08 2007
@@ -22,6 +22,7 @@
#include