Commit 44c63903 authored by Mathias Jud's avatar Mathias Jud

removed scaffolding code

parent ef61d985
Pipeline #1360 canceled with stages
......@@ -387,12 +387,6 @@ version = "0.12.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "706dc7e15f69ff189608e09a6c78c8c7af55464377b3f7573524f32f1a23a6bf"
[[package]]
name = "capnp"
version = "0.13.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "739fa606458e49df64116a3cda1bf711ada360ce714357674d0950ed2132a6a1"
[[package]]
name = "cc"
version = "1.0.55"
......@@ -1395,17 +1389,13 @@ dependencies = [
"tracing",
]
[[package]]
name = "libqaul-rpc"
version = "0.1.0"
[[package]]
name = "libqaul-rpc1"
version = "0.1.0"
dependencies = [
"async-std",
"async-trait",
"capnp 0.12.4",
"capnp",
"conjoiner-engine",
"crossbeam-queue",
"failure",
......@@ -2077,13 +2067,6 @@ dependencies = [
"tracing-subscriber",
]
[[package]]
name = "qrpc-sdk"
version = "0.1.0"
dependencies = [
"capnp 0.13.3",
]
[[package]]
name = "quick-error"
version = "1.2.3"
......@@ -2234,10 +2217,6 @@ dependencies = [
"twox-hash",
]
[[package]]
name = "ratman-rpc"
version = "0.1.0"
[[package]]
name = "redox_syscall"
version = "0.1.56"
......@@ -2304,14 +2283,6 @@ version = "0.1.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ea509065eb0b3c446acdd0102f0d46567dc30902dc0be91d6552035d92b0f4f8"
[[package]]
name = "rpc-broker"
version = "0.1.0"
dependencies = [
"capnp 0.13.3",
"qrpc-sdk",
]
[[package]]
name = "rubato"
version = "0.2.1"
......@@ -2452,10 +2423,6 @@ dependencies = [
"serde",
]
[[package]]
name = "service-rpc"
version = "0.1.0"
[[package]]
name = "sha2"
version = "0.7.1"
......
......@@ -12,13 +12,6 @@ members = [
# "libqaul/rpc",
# "libqaul/ws",
# RPC libraries
"rpc-layer/qrpc-sdk",
"rpc-layer/rpc-broker",
"rpc-layer/libqaul-rpc",
"rpc-layer/ratman-rpc",
"rpc-layer/service-rpc",
# qaul.net main services
"libqaul/service/chat",
"libqaul/service/files",
......
......@@ -2,8 +2,6 @@
---
[![Built with Nix](https://builtwithnix.org/badge.svg)](https://builtwithnix.org)
**qaul** is a decentralised networking project, aiming to create
easy-to-use solutions for ad-hoc wireless communication. It
supports many common desktop operating systems (Linux, Windows,
......@@ -33,9 +31,7 @@ additional information in their respective README files.
| [libqaul] | Core library of the qaul.net ecosystem. Provides networking abstractions, user management and discovery |
| [licenses] | Set of license texts that are in use in this repository |
| [netmods] | Platform-specific networking interface drivers |
| [nix] | [Nix](https://nixos.org) related build utilities |
| [ratman] | A decentralised and modular userspace frame router |
| [rpc-layer] | qaul.net specific rpc system (qrpc) to support third-party components |
| [tests] | Integrated test suite for various components. Most of the code also has inline tests |
| [utils] | Set of utilities that are used in various places and don't fit anywhere else |
......@@ -45,9 +41,7 @@ additional information in their respective README files.
[libqaul]: ./libqaul
[licenses]: ./licenses
[netmods]: ./netmods
[nix]: ./nix
[ratman]: ./ratman
[rpc-layer]: ./rpc-layer
[tests]: ./tests
[utils]: ./utils
......
[package]
name = "libqaul-rpc"
version = "0.1.0"
authors = ["Kaiden Fey <kookie@spacekookie.de>"]
edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
#[cfg(test)]
mod tests {
#[test]
fn it_works() {
assert_eq!(2 + 2, 4);
}
}
[package]
name = "qrpc-sdk"
description = "A client SDK to build qrpc (qaul rpc) extensions"
version = "0.1.0"
authors = ["Kaiden Fey <kookie@spacekookie.de>"]
edition = "2018"
[dependencies]
capnp = "*"
\ No newline at end of file
# qrpc-sdk
The qrpc protocol connections an rpc-broker with different service
endpoints. Each service endpoint provides a set of callable
functions, and type serialisation data.
```
Your app logic Serialise types Pass data along
+--------------+ +--------------+ +--------------+
| Your service | - | qrpc-sdk | - | qrpc-broker |
+--------------+ +--------------+ +--------------+
|
+--------------+ +--------------+
| Your UI app | - | qrpc-sdk |
+--------------+ +--------------+
Your app UI Deserialise types
```
You can find more information about this layer in the [contributors
guide][guide].
[guide]: https://docs.qaul.net/contributors/technical
//! # qaul rpc sdk
//!
//! This library provides the basic capabilities of interacting with a
//! qrpc-broker, and other qaul services. These docs outline API
//! usage and concrete types. For an overview of concepts, consult
//! the [contributors manual][manual]
//!
//! [manual]: https://docs.qaul.net/contributors/technical/rpc-layer
//!
//! ## Using this sdk
//!
//! In order to interact with a running qrpc-broker instance your
//! service needs to register itself and it's capabilities. This
//! mechanism is handled by this sdk.
//!
//! If you want other third-party services to be able to depend on you
//! service you may want to split it into two parts: one part contains
//! the service logic, the other type and RPC interface information.
//! This way a third-party service can include your services' type
//! library (usually called `<service name>-rpc`), and gain access to
//! all public RPC functions.
[package]
name = "ratman-rpc"
version = "0.1.0"
authors = ["Kaiden Fey <kookie@spacekookie.de>"]
edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
#[cfg(test)]
mod tests {
#[test]
fn it_works() {
assert_eq!(2 + 2, 4);
}
}
[package]
name = "rpc-broker"
description = "Provide a generic RPC server to connect qaul services together"
version = "0.1.0"
authors = ["Kaiden Fey <kookie@spacekookie.de>"]
edition = "2018"
[dependencies]
qrpc-sdk = { path = "../qrpc-sdk" }
capnp = "*"
\ No newline at end of file
//! # qaul rpc-broker
//!
//! An extensible rpc message broker for the libqaul ecosystem.
/// Hold the main broker state
pub struct Broker {
}
/*
Stuff I need
service -> service
service -> libqaul
libqaul -> service (reply, push/ subscription)
Each service has two parts: service core, and service client lib
service client lib:
- no logic
- defines the API and types with capn proto
service core:
- all the logic
- no types
- connects to the broker to advertise it's capabilities
Service advertisement
- name
- hash id
- capabilities
*/
[package]
name = "service-rpc"
version = "0.1.0"
authors = ["Kaiden Fey <kookie@spacekookie.de>"]
edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
#[cfg(test)]
mod tests {
#[test]
fn it_works() {
assert_eq!(2 + 2, 4);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment