manta_server/backend_dispatcher/
component.rs

1//! `ComponentTrait` impl for `StaticBackendDispatcher`.
2
3use super::*;
4
5impl ComponentTrait for StaticBackendDispatcher {
6  async fn get_all_nodes(
7    &self,
8    auth_token: &str,
9    nid_only: Option<&str>,
10  ) -> Result<NodeMetadataArray, Error> {
11    dispatch!(self, get_all_nodes, auth_token, nid_only)
12  }
13
14  async fn get_node_metadata_available(
15    &self,
16    auth_token: &str,
17  ) -> Result<Vec<Component>, Error> {
18    dispatch!(self, get_node_metadata_available, auth_token)
19  }
20
21  async fn get(
22    &self,
23    auth_token: &str,
24    id: Option<&str>,
25    r#type: Option<&str>,
26    state: Option<&str>,
27    flag: Option<&str>,
28    role: Option<&str>,
29    subrole: Option<&str>,
30    enabled: Option<&str>,
31    software_status: Option<&str>,
32    subtype: Option<&str>,
33    arch: Option<&str>,
34    class: Option<&str>,
35    nid: Option<&str>,
36    nid_start: Option<&str>,
37    nid_end: Option<&str>,
38    partition: Option<&str>,
39    group: Option<&str>,
40    state_only: Option<&str>,
41    flag_only: Option<&str>,
42    role_only: Option<&str>,
43    nid_only: Option<&str>,
44  ) -> Result<NodeMetadataArray, Error> {
45    dispatch!(
46      self,
47      get,
48      auth_token,
49      id,
50      r#type,
51      state,
52      flag,
53      role,
54      subrole,
55      enabled,
56      software_status,
57      subtype,
58      arch,
59      class,
60      nid,
61      nid_start,
62      nid_end,
63      partition,
64      group,
65      state_only,
66      flag_only,
67      role_only,
68      nid_only
69    )
70  }
71
72  async fn post_nodes(
73    &self,
74    auth_token: &str,
75    component: ComponentArrayPostArray,
76  ) -> Result<(), Error> {
77    dispatch!(self, post_nodes, auth_token, component)
78  }
79
80  async fn delete_node(
81    &self,
82    auth_token: &str,
83    id: &str,
84  ) -> Result<HsmActionResponse, Error> {
85    dispatch!(self, delete_node, auth_token, id)
86  }
87
88  async fn nid_to_xname(
89    &self,
90    auth_token: &str,
91    user_input_nid: &str,
92    is_regex: bool,
93  ) -> Result<Vec<String>, Error> {
94    dispatch!(self, nid_to_xname, auth_token, user_input_nid, is_regex)
95  }
96}