@@ -46,19 +46,7 @@ impl CardanoImmutableDigester {
46
46
& self ,
47
47
immutables : Vec < ImmutableFile > ,
48
48
) -> 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 ;
62
50
63
51
// The computation of immutable files digests is done in a separate thread because it is blocking the whole task
64
52
let logger = self . logger . clone ( ) ;
@@ -72,6 +60,25 @@ impl CardanoImmutableDigester {
72
60
Ok ( computed_digests)
73
61
}
74
62
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
+
75
82
async fn update_cache ( & self , computed_immutables_digests : & ComputedImmutablesDigests ) {
76
83
if let Some ( cache_provider) = self . cache_provider . as_ref ( ) {
77
84
let new_cached_entries = computed_immutables_digests
0 commit comments