#!/bin/bash help() { echo "Usage: adapter_type_gen.sh " } 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