1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
use std::path::PathBuf;
use df_cache::Cache;
use df_db::db::Db;
use df_kafka::Kafka;
use json::object;
use df_plugin::{Model, Plugin};
use df_plugin::tests::TestPlugin;
fn main() {
let mut apimodel = plugin("tests").model("test").action("table");
let tools = {
let mut db_conf = object! {};
let mut cache_conf = object! {};
let mut kafka_conf = object! {};
df_plugin::Tools {
db: Db::new(db_conf.clone()),
cache: Cache::connect(cache_conf.clone()),
kafka: Kafka::connect(kafka_conf.clone()),
}
};
let data = apimodel.run(object! {}, object! {
page:1,
limit:10
}, tools);
println!("{:#}", data.to_json());
}
fn plugin(name: &str) -> Box<dyn Plugin> {
match name {
_ => Box::new(TestPlugin {})
}
}