vanikam/utils/adapter_cqrs_init.sh

45 lines
809 B
Bash
Raw Normal View History

#!/bin/bash
help() {
echo "Usage: adapter_type_gen.sh
<domain name with first letter in caps>
<aggregate struct name>"
}
run() {
for i in "${@:2}"
do
echo "let (${i}_cqrs_exec, ${i}_cqrs_query) = ${i}_view::init_cqrs(db.clone(), services.clone());"
done
echo "let ${1,,}_cqrs_exec = types::Web$1CqrsExec::new(Arc::new(types::$1CqrsExecBuilder::default()"
for i in "${@:2}"
do
echo ".$i(${i}_cqrs_exec)"
done
echo ".build().unwrap(),));"
echo "
let f = move |cfg: &mut web::ServiceConfig| {
cfg.configure(input::web::load_ctx());"
for i in "${@:2}"
do
echo "cfg.app_data(Data::new(${i}_cqrs_query.clone()));"
done
echo "cfg.app_data(${1,,}_cqrs_exec.clone());
};
Box::new(f)"
}
if [ -z $1 ]
then
help
else
run "${@}"
run "${@}" | wl-copy
fi