**Rationale:** Having two separate servers and communication methods resulted in additional maintenance & the need to convert often between backend & frontend data types. By moving the backend communication off of gRPC and to just use websockets it both gives more control & allows for simplification of the implementation. #8 **Changes:** - Replaces gRPC backend. - New implementation automatically handles reconnect logic - Implements an api layer - Migrates examples to the api layer - Implements a proc macro to make command handling easier - Implements unit tests for the api layer (90+% coverage) - Implements integration tests for the proc macro (90+% coverage) Reviewed-on: #10 Co-authored-by: Sergey Savelyev <sergeysav.nn@gmail.com> Co-committed-by: Sergey Savelyev <sergeysav.nn@gmail.com>
21 lines
308 B
Rust
21 lines
308 B
Rust
use uuid::Uuid;
|
|
|
|
pub struct CommandHandle {
|
|
name: String,
|
|
uuid: Uuid,
|
|
}
|
|
|
|
impl CommandHandle {
|
|
pub fn new(name: String, uuid: Uuid) -> Self {
|
|
Self { name, uuid }
|
|
}
|
|
|
|
pub fn name(&self) -> &str {
|
|
&self.name
|
|
}
|
|
|
|
pub fn uuid(&self) -> &Uuid {
|
|
&self.uuid
|
|
}
|
|
}
|