Files
Gen_Hack-and-Slash-Roguelit…/Server/src/grpc_server.rs

30 lines
929 B
Rust

use std::net::SocketAddr;
use tonic::transport::Server;
use tonic_web::GrpcWebLayer;
use crate::protocol::game_service_server::GameServiceServer;
use crate::protocol::general_service_server::GeneralServiceServer;
use crate::services::game_service::GameServiceImpl;
use crate::services::general_service::GeneralServiceImpl;
pub(crate) struct GrpcServer;
impl GrpcServer {
pub(crate) async fn init() {
let addr = SocketAddr::new([127, 0, 0, 1].into(), 12345);
let general_service = GeneralServiceServer::new(GeneralServiceImpl);
let game_service = GameServiceServer::new(GameServiceImpl);
Server::builder()
.accept_http1(true)
.layer(GrpcWebLayer::new())
.add_service(general_service)
.add_service(game_service)
.serve(addr)
.await
.unwrap_or_else(|e| log::error!("Failed to build server: {e}"));
}
}