Skip to content

Commit 86c55a0

Browse files
author
Andrew
committed
Stage 4
1 parent 6e1339b commit 86c55a0

File tree

1 file changed

+11
-24
lines changed

1 file changed

+11
-24
lines changed

dsc_lib/src/discovery/command_discovery.rs

Lines changed: 11 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -514,24 +514,18 @@ fn sort_adapters_based_on_lookup_table(unsorted_adapters: &BTreeMap<String, Vec<
514514
let lookup_table:HashMap<String, String> = load_adapted_resources_lookup_table();
515515
// first add adapters (for needed types) that can be found in the lookup table
516516
for needed_resource in needed_resource_types {
517-
match lookup_table.get(needed_resource) {
518-
Some(adapter_name) => {
519-
match unsorted_adapters.get(adapter_name) {
520-
Some(resource_vec) => {
521-
trace!("Lookup table found resource '{}' in adapter '{}'", needed_resource, adapter_name);
522-
result.insert(adapter_name.to_string(), resource_vec.to_vec());
523-
}
524-
None => {}
525-
}
517+
if let Some(adapter_name) = lookup_table.get(needed_resource) {
518+
if let Some(resource_vec) = unsorted_adapters.get(adapter_name) {
519+
trace!("Lookup table found resource '{}' in adapter '{}'", needed_resource, adapter_name);
520+
result.insert(adapter_name.to_string(), resource_vec.clone());
526521
}
527-
None => {}
528522
}
529523
}
530524

531525
// now add remaining adapters
532526
for (adapter_name, adapters) in unsorted_adapters {
533527
if !result.contains_key(adapter_name) {
534-
result.insert(adapter_name.to_string(), adapters.to_vec());
528+
result.insert(adapter_name.to_string(), adapters.clone());
535529
}
536530
}
537531

@@ -544,21 +538,18 @@ fn add_resources_to_lookup_table(adapted_resources: &BTreeMap<String, Vec<DscRes
544538

545539
for (resource_name, res_vec) in adapted_resources {
546540
let adapter_name = &res_vec[0].require_adapter.as_ref().unwrap();
547-
lookup_table.insert(resource_name.to_string().to_lowercase(), adapter_name.to_string());
541+
lookup_table.insert(resource_name.to_string().to_lowercase(), (*adapter_name).to_string());
548542
};
549543

550544
save_adapted_resources_lookup_table(&lookup_table);
551545
}
552546

553547
fn save_adapted_resources_lookup_table(lookup_table: &HashMap<String, String>)
554548
{
555-
match serde_json::to_string_pretty(&lookup_table) {
556-
Ok(lookup_table_json) => {
557-
let file_path = get_lookup_table_file_path();
558-
debug!("Saving lookup table with {} items to {:?}", lookup_table.len(), file_path);
559-
fs::write(file_path, lookup_table_json).expect("Unable to write lookup_table file");
560-
},
561-
Err(_) => {}
549+
if let Ok(lookup_table_json) = serde_json::to_string_pretty(&lookup_table) {
550+
let file_path = get_lookup_table_file_path();
551+
debug!("Saving lookup table with {} items to {:?}", lookup_table.len(), file_path);
552+
fs::write(file_path, lookup_table_json).expect("Unable to write lookup_table file");
562553
}
563554
}
564555

@@ -595,10 +586,6 @@ fn get_lookup_table_file_path() -> String
595586
fn get_lookup_table_file_path() -> String
596587
{
597588
// $env:HOME+".dsc/AdaptedResourcesLookupTable.json"
598-
let home_path = match std::env::var("HOME") {
599-
Ok(path) => path,
600-
Err(_) => { return "".to_string(); }
601-
};
602-
589+
let Ok(home_path) = std::env::var("HOME") else { return String::new(); };
603590
Path::new(&home_path).join(".dsc").join("AdaptedResourcesLookupTable.json").display().to_string()
604591
}

0 commit comments

Comments
 (0)