//this file is generated by program(drogon_ctl) automatically,don't modify it! #include "plugin_h.h" #include #include #include #include #include #include #include #include #include #include #include #include using namespace drogon; std::string plugin_h::genText(const DrTemplateData& plugin_h_view_data) { drogon::OStringStream plugin_h_tmp_stream; std::string layoutName{""}; plugin_h_tmp_stream << "/**\n"; plugin_h_tmp_stream << " *\n"; plugin_h_tmp_stream << " * "; { auto & val=plugin_h_view_data["filename"]; if(val.type()==typeid(const char *)){ plugin_h_tmp_stream<<*any_cast(&val); }else if(val.type()==typeid(std::string)||val.type()==typeid(const std::string)){ plugin_h_tmp_stream<<*any_cast(&val); } } plugin_h_tmp_stream << ".h\n"; plugin_h_tmp_stream << " *\n"; plugin_h_tmp_stream << " */\n"; plugin_h_tmp_stream<<"\n"; plugin_h_tmp_stream << "#pragma once\n"; plugin_h_tmp_stream<<"\n"; plugin_h_tmp_stream << "#include \n"; auto namespaceVector=plugin_h_view_data.get>("namespaceVector"); if(namespaceVector.empty()) plugin_h_tmp_stream<<"\n"; for(auto &namespaceName:namespaceVector){ plugin_h_tmp_stream << "namespace "; plugin_h_tmp_stream<(&val); }else if(val.type()==typeid(std::string)||val.type()==typeid(const std::string)){ plugin_h_tmp_stream<<*any_cast(&val); } } plugin_h_tmp_stream << " : public drogon::Plugin<"; { auto & val=plugin_h_view_data["className"]; if(val.type()==typeid(const char *)){ plugin_h_tmp_stream<<*any_cast(&val); }else if(val.type()==typeid(std::string)||val.type()==typeid(const std::string)){ plugin_h_tmp_stream<<*any_cast(&val); } } plugin_h_tmp_stream << ">\n"; plugin_h_tmp_stream << "{\n"; plugin_h_tmp_stream << " public:\n"; plugin_h_tmp_stream << " "; { auto & val=plugin_h_view_data["className"]; if(val.type()==typeid(const char *)){ plugin_h_tmp_stream<<*any_cast(&val); }else if(val.type()==typeid(std::string)||val.type()==typeid(const std::string)){ plugin_h_tmp_stream<<*any_cast(&val); } } plugin_h_tmp_stream << "() {}\n"; plugin_h_tmp_stream << " /// This method must be called by drogon to initialize and start the plugin.\n"; plugin_h_tmp_stream << " /// It must be implemented by the user.\n"; plugin_h_tmp_stream << " void initAndStart(const Json::Value &config) override;\n"; plugin_h_tmp_stream<<"\n"; plugin_h_tmp_stream << " /// This method must be called by drogon to shutdown the plugin.\n"; plugin_h_tmp_stream << " /// It must be implemented by the user.\n"; plugin_h_tmp_stream << " void shutdown() override;\n"; plugin_h_tmp_stream << "};\n"; plugin_h_tmp_stream<<"\n"; for(size_t i=0;igenText(data); } }