canic_core/api/
component_runtime.rs1use crate::{
8 dto::{
9 component_registry::{
10 ComponentRuntimeActivationRequest, ComponentRuntimeDirectoryPreparationRequest,
11 ComponentRuntimeDirectorySynchronizationRequest, ComponentRuntimeStatusResponse,
12 },
13 error::Error,
14 },
15 workflow::component_runtime,
16};
17
18pub struct ComponentRuntimeApi;
23
24impl ComponentRuntimeApi {
25 pub fn prepare_directory(
26 request: ComponentRuntimeDirectoryPreparationRequest,
27 ) -> Result<ComponentRuntimeStatusResponse, Error> {
28 component_runtime::prepare_directory(request).map_err(Error::from)
29 }
30
31 pub fn status() -> Result<ComponentRuntimeStatusResponse, Error> {
32 component_runtime::status().map_err(Error::from)
33 }
34
35 pub fn synchronize_directory(
36 request: ComponentRuntimeDirectorySynchronizationRequest,
37 ) -> Result<ComponentRuntimeStatusResponse, Error> {
38 component_runtime::synchronize_directory(request).map_err(Error::from)
39 }
40
41 pub fn activate(
42 request: ComponentRuntimeActivationRequest,
43 ) -> Result<crate::view::fleet_activation::ComponentRuntimeActivationTransition, Error> {
44 component_runtime::activate(request).map_err(Error::from)
45 }
46}