Make compile with new schema

This commit is contained in:
Gregor Reitzenstein 2020-12-16 11:58:01 +01:00
parent e94c516a5a
commit 182c8a9736
4 changed files with 6 additions and 39 deletions

2
schema

@ -1 +1 @@
Subproject commit a4667b94f331f9f624416bbbb951fe78d5304d26
Subproject commit d930c70978e8bd5b28b9c19c907d2fe457797a89

View File

@ -26,11 +26,10 @@ impl Machines {
Self { inner }
}
pub fn get_machine(&mut self, uuid: String) -> impl Future<Output=Option<Machine>> {
pub fn get_machine(&mut self, uid: String) -> impl Future<Output=Option<Machine>> {
let mut req = self.inner.get_machine_request();
let param_builder = req.get();
let uuid_builder = param_builder.init_uuid();
api_from_uuid(Uuid::from_str(&uuid).unwrap(), uuid_builder);
let mut param_builder = req.get();
let uid_builder = param_builder.set_uid(uid.as_ref());
let prom = req.send().promise;

View File

@ -44,35 +44,3 @@ pub fn bootstrap(log: Logger, stream: TcpStream) -> (RpcSystem<Side>, API) {
return (rpc, API::new(log, client));
}
pub async fn handshake(log: &Logger, mut stream: &mut TcpStream) -> Result<(), io::Error> {
let host = "localhost";
let program = format!("{}-{}", env!("CARGO_PKG_NAME"), env!("CARGO_PKG_VERSION"));
let version = (0u32,1u32);
debug!(log, "Sending handshake as {}@{} speaking API v{}.{}",
program, host, version.0, version.1);
let mut message = capnp::message::Builder::new_default();
let mut builder = message.init_root::<connection_capnp::greeting::Builder>();
builder.set_host(host);
builder.set_major(version.0);
builder.set_minor(version.1);
builder.set_program(&program);
capnp_futures::serialize::write_message(&mut stream, message).await.unwrap();
if let Some(m) = capnp_futures::serialize::read_message(&mut stream, Default::default()).await.unwrap() {
let greeting = m.get_root::<connection_capnp::greeting::Reader>().unwrap();
let peer_host = greeting.get_host().unwrap();
let peer_program = greeting.get_program().unwrap();
let major = greeting.get_major();
let minor = greeting.get_minor();
info!(log, "Peer {} running {} API {}.{}", peer_host, peer_program, major, minor)
} else {
error!(log, "Oh noes");
}
Ok(())
}

View File

@ -9,7 +9,7 @@ use smol::net::AsyncToSocketAddrs;
use slog::Logger;
use crate::schema::{handshake, bootstrap, API, Authentication};
use crate::schema::{bootstrap, API, Authentication};
pub struct Session {
pub bootstrap: API,
@ -19,7 +19,7 @@ pub struct Session {
impl Session {
pub async fn connect<A: AsyncToSocketAddrs>(log: Logger, addr: A) -> Result<Session> {
let mut stream = TcpStream::connect(addr).await?;
let stream = TcpStream::connect(addr).await?;
let (rpc_system, api) = bootstrap(log, stream);
Ok(Session {