diff --git a/src/modes/save.rs b/src/modes/save.rs index 5f8c704..7884cd6 100644 --- a/src/modes/save.rs +++ b/src/modes/save.rs @@ -13,7 +13,7 @@ use std::path::PathBuf; use crate::compression_engine::{CompressionType, get_compression_engine}; use crate::db::{self}; use crate::digest_engine::{DigestType, get_digest_engine, get_digest_type_meta}; -use crate::modes::common::get_meta_from_env; +use crate::modes::common::{get_meta_from_env, store_item_digest_value}; use chrono::Utc; pub fn mode_save( @@ -173,14 +173,8 @@ pub fn mode_save( db::update_item(conn, item.clone())?; - // Save digest to meta - let digest_meta_name = get_digest_type_meta(digest_type); - let digest_meta = db::Meta { - id: item.id.unwrap(), - name: digest_meta_name, - value: digest, - }; - db::store_meta(conn, digest_meta)?; + // Save digest to meta using the common function + store_item_digest_value(conn, &item, &digest_type.to_string(), &digest)?; Ok(()) } diff --git a/src/modes/update.rs b/src/modes/update.rs index b2698b9..76a1360 100644 --- a/src/modes/update.rs +++ b/src/modes/update.rs @@ -5,6 +5,7 @@ use std::str::FromStr; use crate::compression_engine::{CompressionType, get_compression_engine}; use crate::db; use crate::digest_engine; +use crate::modes::common::store_item_digest_value; use clap::Command; use clap::error::ErrorKind; use log::{debug, info}; @@ -100,14 +101,8 @@ pub fn mode_update( item.digest_value = Some(digest_value.clone()); db::update_item(conn, item.clone())?; - // Save digest to meta - let digest_meta_name = digest_engine::get_digest_type_meta(digest_type); - let meta = db::Meta { - id: item.id.unwrap(), - name: digest_meta_name, - value: digest_value, - }; - db::store_meta(conn, meta)?; + // Save digest to meta using the common function + store_item_digest_value(conn, &item, &digest_type.to_string(), &digest_value)?; } else { debug!( "MAIN: Unable to update digest of item due to missing file {:?}",