reactive_graph_client/client/
commands.rs

1use crate::client::instances::entities::args::EntityInstancesArgs;
2use crate::client::instances::flows::args::FlowInstancesArgs;
3use crate::client::instances::relations::args::RelationInstancesArgs;
4use crate::client::introspection::args::IntrospectionQueryArgs;
5use crate::client::system::command::args::ExecuteCommandArgs;
6use crate::client::system::instance::args::InstanceInfoArgs;
7use crate::client::system::plugin::args::PluginsArgs;
8use crate::client::system::remotes::args::RemotesArgs;
9use crate::client::types::components::args::ComponentsArgs;
10use crate::client::types::entities::args::EntityTypesArgs;
11use crate::client::types::flows::args::FlowTypesArgs;
12use crate::client::types::relations::args::RelationTypesArgs;
13use clap::Subcommand;
14
15#[derive(Subcommand, Debug, Clone)]
16pub(crate) enum ClientCommands {
17    // --- System ---
18    /// Executes a command on the client.
19    #[non_exhaustive]
20    ExecuteCommand(ExecuteCommandArgs),
21
22    /// Prints information about the instance.
23    #[non_exhaustive]
24    InstanceInfo(InstanceInfoArgs),
25
26    /// Manage plugins.
27    #[non_exhaustive]
28    Plugins(PluginsArgs),
29
30    /// Manage remotes.
31    #[non_exhaustive]
32    Remotes(RemotesArgs),
33
34    /// Shutdown the runtime.
35    #[non_exhaustive]
36    Shutdown,
37
38    // --- Type System ---
39    /// Manage components.
40    #[non_exhaustive]
41    Components(ComponentsArgs),
42
43    /// Manage entity types.
44    #[non_exhaustive]
45    EntityTypes(EntityTypesArgs),
46
47    /// Manage entity types.
48    #[non_exhaustive]
49    RelationTypes(RelationTypesArgs),
50
51    /// Manage entity types.
52    #[non_exhaustive]
53    FlowTypes(FlowTypesArgs),
54
55    // --- Instance System ---
56    /// Manage entity instances.
57    #[non_exhaustive]
58    EntityInstances(EntityInstancesArgs),
59
60    /// Manage relation instances.
61    #[non_exhaustive]
62    RelationInstances(RelationInstancesArgs),
63
64    /// Manage flow instances.
65    #[non_exhaustive]
66    FlowInstances(FlowInstancesArgs),
67
68    // --- Introspection ---
69    /// Execute GraphQL introspection queries.
70    #[non_exhaustive]
71    Introspection(IntrospectionQueryArgs),
72}