ref: refs/heads/master
commit 8eed23960fb1c19dea80f8abb00784792d6974c3
Author: Ján Kupec
Date: Sat Oct 10 14:37:46 2009 +0200
Showing details about repositories given as 'lr' arguments.
---
src/repos.cc | 19 ++++++++++++++++++-
1 files changed, 18 insertions(+), 1 deletions(-)
diff --git a/src/repos.cc b/src/repos.cc
index 24d536e..e113c55 100644
--- a/src/repos.cc
+++ b/src/repos.cc
@@ -798,6 +798,17 @@ static void print_repo_list(Zypper & zypper,
// ----------------------------------------------------------------------------
+static void print_repo_details(Zypper & zypper, list<RepoInfo> & repos)
+{
+ for_(it, repos.begin(), repos.end())
+ {
+ RepoInfo repo = *it;
+ cout << repo << endl;
+ }
+}
+
+// ----------------------------------------------------------------------------
+
/** Repo list as xml */
static void print_xml_repo_list(Zypper & zypper, list<RepoInfo> repos)
{
@@ -827,10 +838,14 @@ void list_repos(Zypper & zypper)
RepoManager & manager = zypper.repoManager();
RuntimeData & gData = zypper.runtimeData();
list<RepoInfo> repos;
+ list<string> not_found;
try
{
- repos.insert(repos.end(), manager.repoBegin(), manager.repoEnd());
+ if (zypper.arguments().empty())
+ repos.insert(repos.end(), manager.repoBegin(), manager.repoEnd());
+ else
+ get_repos(zypper, zypper.arguments().begin(), zypper.arguments().end(), repos, not_found);
}
catch ( const Exception &e )
{
@@ -884,6 +899,8 @@ void list_repos(Zypper & zypper)
// print repo list the rug's way
else if (zypper.globalOpts().is_rug_compatible)
print_rug_sources_list(repos);
+ else if (!zypper.arguments().empty())
+ print_repo_details(zypper, repos);
// print repo list as table
else
print_repo_list(zypper, repos);
--
To unsubscribe, e-mail: zypp-commit+unsubscribe@opensuse.org
For additional commands, e-mail: zypp-commit+help@opensuse.org