manta_server/backend_dispatcher/
delete_configurations_and_related.rs

1//! Dispatches `DeleteConfigurationsAndDataRelatedTrait` methods to csm-rs or ochami-rs.
2
3use manta_backend_dispatcher::{
4  error::Error,
5  interfaces::delete_configurations_and_data_related::DeleteConfigurationsAndDataRelatedTrait,
6  types::cfs::{
7    cfs_configuration_response::CfsConfigurationResponse,
8    session::CfsSessionGetResponse,
9  },
10};
11
12use StaticBackendDispatcher::*;
13use chrono::NaiveDateTime;
14
15use crate::manta_backend_dispatcher::StaticBackendDispatcher;
16
17impl DeleteConfigurationsAndDataRelatedTrait for StaticBackendDispatcher {
18  async fn get_data_to_delete(
19    &self,
20    shasta_token: &str,
21    shasta_base_url: &str,
22    shasta_root_cert: &[u8],
23    hsm_name_available_vec: &[String],
24    configuration_name_pattern_opt: Option<&str>,
25    since_opt: Option<NaiveDateTime>,
26    until_opt: Option<NaiveDateTime>,
27  ) -> Result<
28    (
29      Vec<CfsSessionGetResponse>,
30      Vec<(String, String, String)>,
31      Vec<String>,
32      Vec<String>,
33      Vec<(String, String, String)>,
34      Vec<CfsConfigurationResponse>,
35    ),
36    Error,
37  > {
38    dispatch!(
39      self,
40      get_data_to_delete,
41      shasta_token,
42      shasta_base_url,
43      shasta_root_cert,
44      hsm_name_available_vec,
45      configuration_name_pattern_opt,
46      since_opt,
47      until_opt
48    )
49  }
50
51  async fn delete(
52    &self,
53    shasta_token: &str,
54    shasta_base_url: &str,
55    shasta_root_cert: &[u8],
56    cfs_configuration_name_vec: &[String],
57    image_id_vec: &[String],
58    cfs_session_name_vec: &[String],
59    bos_sessiontemplate_name_vec: &[String],
60  ) -> Result<(), Error> {
61    dispatch!(
62      self,
63      delete,
64      shasta_token,
65      shasta_base_url,
66      shasta_root_cert,
67      cfs_configuration_name_vec,
68      image_id_vec,
69      cfs_session_name_vec,
70      bos_sessiontemplate_name_vec
71    )
72  }
73}