void deploy_svc_service_impl::on_get_service_list_cli(void *context, int argc, const char **argv, dsn_cli_reply *reply) { dassert(context == (void*)this, "context must be this"); deploy_info_list dlist; std::string package_id; if (argc >=1) { error_code err = unmarshall_json(argv[0], "package_id", package_id); if (err != ERR_OK) { //TODO: need raise error here? package_id = std::string(""); } } on_get_service_list_internal(package_id, dlist); std::string* resp_json = new std::string(); *resp_json = marshall_json(dlist); reply->context = resp_json; reply->message = (const char*)resp_json->c_str(); reply->size = resp_json->size(); return; }
void deploy_svc_service_impl::on_get_service_list(const std::string& package_id, ::dsn::rpc_replier<deploy_info_list>& reply) { deploy_info_list dlist; on_get_service_list_internal(package_id, dlist); reply(dlist); }