From 0fd2b0f9b191b8e7ee033049a7f27a3a60e1446eb38bca8c4804ed818da16eec Mon Sep 17 00:00:00 2001 From: RavenX8 <7156279+RavenX8@users.noreply.github.com> Date: Sat, 14 Dec 2024 01:55:15 -0500 Subject: [PATCH] - add: character and world proto stubs --- character-service/build.rs | 16 ++++++++++++++++ proto/character.proto | 16 ++++++++++++++++ proto/world.proto | 17 +++++++++++++++++ world-service/build.rs | 16 ++++++++++++++++ 4 files changed, 65 insertions(+) create mode 100644 character-service/build.rs create mode 100644 proto/character.proto create mode 100644 proto/world.proto create mode 100644 world-service/build.rs diff --git a/character-service/build.rs b/character-service/build.rs new file mode 100644 index 0000000..99ef439 --- /dev/null +++ b/character-service/build.rs @@ -0,0 +1,16 @@ +fn main() { + // gRPC Server code + tonic_build::configure() + .build_server(true) // Generate gRPC server code + .compile_well_known_types(true) + .type_attribute(".", "#[derive(serde::Serialize, serde::Deserialize)]") + .compile_protos(&["../proto/character.proto"], &["../proto"]) + .unwrap_or_else(|e| panic!("Failed to compile protos {:?}", e)); + + // gRPC Client code + tonic_build::configure() + .build_server(false) // Generate gRPC client code + .compile_well_known_types(true) + .compile_protos(&["../proto/database.proto", "../proto/auth.proto"], &["../proto"]) + .unwrap_or_else(|e| panic!("Failed to compile protos {:?}", e)); +} diff --git a/proto/character.proto b/proto/character.proto new file mode 100644 index 0000000..772a51c --- /dev/null +++ b/proto/character.proto @@ -0,0 +1,16 @@ +syntax = "proto3"; + +package character; + +service CharacterService { + rpc GetCharacterList(CharacterListRequest) returns (CharacterListResponse); +} + +message CharacterListRequest { + string token = 1; + string user_id = 2; +} + +message CharacterListResponse { + int32 count = 1; +} diff --git a/proto/world.proto b/proto/world.proto new file mode 100644 index 0000000..6bb5a8c --- /dev/null +++ b/proto/world.proto @@ -0,0 +1,17 @@ +syntax = "proto3"; + +package character; + +service CharacterService { + rpc GetCharacter(CharacterRequest) returns (CharacterResponse); +} + +message CharacterRequest { + string token = 1; + string user_id = 2; + string char_id = 3; +} + +message CharacterResponse { + int32 count = 1; +} diff --git a/world-service/build.rs b/world-service/build.rs new file mode 100644 index 0000000..899f569 --- /dev/null +++ b/world-service/build.rs @@ -0,0 +1,16 @@ +fn main() { + // gRPC Server code + tonic_build::configure() + .build_server(true) // Generate gRPC server code + .compile_well_known_types(true) + .type_attribute(".", "#[derive(serde::Serialize, serde::Deserialize)]") + .compile_protos(&["../proto/world.proto"], &["../proto"]) + .unwrap_or_else(|e| panic!("Failed to compile protos {:?}", e)); + + // gRPC Client code + tonic_build::configure() + .build_server(false) // Generate gRPC client code + .compile_well_known_types(true) + .compile_protos(&["../proto/database.proto", "../proto/auth.proto"], &["../proto"]) + .unwrap_or_else(|e| panic!("Failed to compile protos {:?}", e)); +}