photoncloud-monorepo/flaredb/crates/flaredb-pd/src/service.rs
centra 8f94aee1fa Fix R8: Convert submodule gitlinks to regular directories
- Remove gitlinks (160000 mode) for chainfire, flaredb, iam
- Add workspace contents as regular tracked files
- Update flake.nix to use simple paths instead of builtins.fetchGit

This resolves the nix build failure where submodule directories
appeared empty in the nix store.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-09 16:51:20 +09:00

31 lines
754 B
Rust

use crate::tso::TsoOracle;
use flaredb_proto::pdpb::tso_server::Tso;
use flaredb_proto::pdpb::{TsoRequest, TsoResponse};
use std::sync::Arc;
use tonic::{Request, Response, Status};
pub struct TsoServiceImpl {
oracle: Arc<TsoOracle>,
}
impl TsoServiceImpl {
pub fn new(oracle: Arc<TsoOracle>) -> Self {
Self { oracle }
}
}
#[tonic::async_trait]
impl Tso for TsoServiceImpl {
async fn get_timestamp(
&self,
request: Request<TsoRequest>,
) -> Result<Response<TsoResponse>, Status> {
let req = request.into_inner();
let count = req.count;
let ts = self.oracle.get_timestamp(count);
Ok(Response::new(TsoResponse {
timestamp: ts,
count,
}))
}
}