M
?
?Size: a a a
M
?
?NL
🦄
AB
AB
M
NL
/
R
#[actix_rt::main]
async fn main() -> std::io::Result<()> {
...
HttpServer::new(move || App::new()
.configure(configure_service)
.data(create_schema_with_context())
)
.bind("0.0.0.0:8001")?
.run()
.await
}
pub fn create_schema_with_context() ...
let kafka_consumer_counter = Arc::new(Mutex::new(0));
Schema::build(Query, Mutation, Subscription)
.data(kafka_consumer_counter)
.finish()
}
let kafka_consumer_counter = ctx.data::<Arc<Mutex<i32>>>().expect("Can't get Kafka consumer counter");
let mut counter = kafka_consumer_counter.lock().expect("Can't lock counter");
*counter += 1;
let s : i32= *counter;
println!("Current counter: {}", s);
Current counter: 1
Current counter: 1
Current counter: 1
Current counter: 1
Current counter: 2
Current counter: 2
Current counter: 2
Current counter: 2
R
a
R
pub fn create_schema_with_context(pool: PgPool) -> Schema<Query, Mutation, Subscription> {
let kafka_consumer_counter = Arc::new(Mutex::new(0));
Schema::build(Query, Mutation, Subscription)
.data(kafka_consumer_counter)
.finish()
}
a
a
R
a
A
a
A
d