Skip to content

Commit 2209f53

Browse files
committed
refactor: extract cache retrieval logic from process_immutables into a dedicated function
1 parent a5ffcf3 commit 2209f53

File tree

1 file changed

+20
-13
lines changed

1 file changed

+20
-13
lines changed

mithril-common/src/digesters/cardano_immutable_digester.rs

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -46,19 +46,7 @@ impl CardanoImmutableDigester {
4646
&self,
4747
immutables: Vec<ImmutableFile>,
4848
) -> Result<ComputedImmutablesDigests, ImmutableDigesterError> {
49-
let cached_values = match self.cache_provider.as_ref() {
50-
None => BTreeMap::from_iter(immutables.into_iter().map(|i| (i, None))),
51-
Some(cache_provider) => match cache_provider.get(immutables.clone()).await {
52-
Ok(values) => values,
53-
Err(error) => {
54-
warn!(
55-
self.logger, "Error while getting cached immutable files digests";
56-
"error" => ?error
57-
);
58-
BTreeMap::from_iter(immutables.into_iter().map(|i| (i, None)))
59-
}
60-
},
61-
};
49+
let cached_values = self.fetch_immutables_cached(immutables).await;
6250

6351
// The computation of immutable files digests is done in a separate thread because it is blocking the whole task
6452
let logger = self.logger.clone();
@@ -72,6 +60,25 @@ impl CardanoImmutableDigester {
7260
Ok(computed_digests)
7361
}
7462

63+
async fn fetch_immutables_cached(
64+
&self,
65+
immutables: Vec<ImmutableFile>,
66+
) -> BTreeMap<ImmutableFile, Option<String>> {
67+
match self.cache_provider.as_ref() {
68+
None => BTreeMap::from_iter(immutables.into_iter().map(|i| (i, None))),
69+
Some(cache_provider) => match cache_provider.get(immutables.clone()).await {
70+
Ok(values) => values,
71+
Err(error) => {
72+
warn!(
73+
self.logger, "Error while getting cached immutable files digests";
74+
"error" => ?error
75+
);
76+
BTreeMap::from_iter(immutables.into_iter().map(|i| (i, None)))
77+
}
78+
},
79+
}
80+
}
81+
7582
async fn update_cache(&self, computed_immutables_digests: &ComputedImmutablesDigests) {
7683
if let Some(cache_provider) = self.cache_provider.as_ref() {
7784
let new_cached_entries = computed_immutables_digests

0 commit comments

Comments
 (0)