summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Beyer <matthias.beyer@atos.net>2021-04-22 09:33:25 +0200
committerMatthias Beyer <matthias.beyer@atos.net>2021-04-22 10:15:55 +0200
commitfa985942c06d1ddcc5ae51681e10b5bc05d8ff75 (patch)
treeb1841eabf5ef8fc4d50e0159cbba4b06cb1521ee
parent38b6ded40c6d840c9d3951f0a082cd55b1b0109c (diff)
Refactor: submit_to_vec later
Signed-off-by: Matthias Beyer <matthias.beyer@atos.net>
-rw-r--r--src/commands/db.rs31
1 files changed, 13 insertions, 18 deletions
diff --git a/src/commands/db.rs b/src/commands/db.rs
index ba66c14..dde8827 100644
--- a/src/commands/db.rs
+++ b/src/commands/db.rs
@@ -234,15 +234,6 @@ fn submits(conn_cfg: DbConnectionConfig, matches: &ArgMatches) -> Result<()> {
let hdrs = crate::commands::util::mk_header(vec!["id", "time", "uuid"]);
let conn = crate::db::establish_connection(conn_cfg)?;
- // Helper to map Submit -> Vec<String>
- let submit_to_vec = |submit: models::Submit| {
- vec![
- format!("{}", submit.id),
- submit.submit_time.to_string(),
- submit.uuid.to_string(),
- ]
- };
-
// Helper to get all submits that were made _for_ a package
let submits_for = |pkgname: &str| {
schema::submits::table
@@ -252,7 +243,7 @@ fn submits(conn_cfg: DbConnectionConfig, matches: &ArgMatches) -> Result<()> {
.load::<models::Submit>(&conn)
};
- let data = if let Some(pkgname) = matches.value_of("with_pkg").map(String::from) {
+ let submits = if let Some(pkgname) = matches.value_of("with_pkg").map(String::from) {
// Get all submits which included the package, but were not made _for_ the package
let submits_with_pkg = schema::packages::table
.filter(schema::packages::name.eq(&pkgname))
@@ -265,23 +256,27 @@ fn submits(conn_cfg: DbConnectionConfig, matches: &ArgMatches) -> Result<()> {
submits_with_pkg
.into_iter()
.chain(submits_for_pkg.into_iter())
- .map(submit_to_vec)
- .collect::<Vec<_>>()
+ .collect()
} else if let Some(pkgname) = matches.value_of("for_pkg") {
// Get all submits _for_ the package
submits_for(pkgname)?
- .into_iter()
- .map(submit_to_vec)
- .collect::<Vec<_>>()
} else {
// default: Get all submits
schema::submits::table
.load::<models::Submit>(&conn)?
- .into_iter()
- .map(submit_to_vec)
- .collect::<Vec<_>>()
};
+ // Helper to map Submit -> Vec<String>
+ let submit_to_vec = |submit: models::Submit| {
+ vec![
+ format!("{}", submit.id),
+ submit.submit_time.to_string(),
+ submit.uuid.to_string(),
+ ]
+ };
+
+ let data = submits.into_iter().map(submit_to_vec).collect::<Vec<_>>();
+
if data.is_empty() {
info!("No submits in database");
} else {