get adresar method is now working

This commit is contained in:
filipriec
2025-02-17 21:34:12 +01:00
parent b306a6d019
commit 52746c0ec1
9 changed files with 94 additions and 4 deletions

View File

@@ -1,10 +1,12 @@
// src/server/mod.rs
use tonic::{Request, Response, Status};
use tonic_reflection::server::Builder as ReflectionBuilder; // Import tonic-reflection
use crate::db;
use crate::adresar::handlers::create_adresar;
use crate::adresar::handlers::{create_adresar, get_adresar};
use crate::proto::multieko2::{
AdresarRequest, AdresarResponse,
AdresarRequest, AdresarResponse, GetAdresarRequest,
adresar_server::{Adresar, AdresarServer},
FILE_DESCRIPTOR_SET, // Import the generated file descriptor set
};
pub struct AdresarService {
@@ -20,6 +22,14 @@ impl Adresar for AdresarService {
let response = create_adresar(&self.db_pool, request.into_inner()).await?;
Ok(Response::new(response))
}
async fn get_adresar(
&self,
request: Request<GetAdresarRequest>,
) -> Result<Response<AdresarResponse>, Status> {
let response = get_adresar(&self.db_pool, request.into_inner()).await?;
Ok(Response::new(response))
}
}
pub async fn run_server(db_pool: sqlx::PgPool) -> Result<(), Box<dyn std::error::Error>> {
@@ -28,8 +38,15 @@ pub async fn run_server(db_pool: sqlx::PgPool) -> Result<(), Box<dyn std::error:
println!("Server listening on {}", addr);
// Enable reflection
let reflection_service = ReflectionBuilder::configure()
.register_encoded_file_descriptor_set(FILE_DESCRIPTOR_SET) // Register the file descriptor set
.build()
.unwrap();
tonic::transport::Server::builder()
.add_service(AdresarServer::new(adresar_service))
.add_service(reflection_service) // Add the reflection service
.serve(addr)
.await?;