PackBinary/cmd_parse.h

44 lines
1.5 KiB
C++

#ifndef CMD_PARSE_HEADER
#define CMD_PARSE_HEADER
#include <Poco/Exception.h>
#include <Poco/Util/OptionCallback.h>
#include <Poco/Util/OptionProcessor.h>
#include <Poco/Util/OptionSet.h>
#include <Poco/Util/ServerApplication.h>
#include "public.hpp"
// Poco::Util::Validator* month = new Poco::Util::RegExpValidator(
// "[0-9]{6,8}");
// options.addOption(
// Option("month", "m",
// "date(yyyymm/yyyymmdd)").required(true).repeatable(
// false).argument("month").validator(month).binding(
// "application.month").callback(
// Poco::Util::OptionCallback < DataLoader
// > (this, &DataLoader::handleMonth)));
// ————————————————
// 版权声明:本文为博主原创文章,遵循 CC 4.0
// BY-SA
// 版权协议,转载请附上原文出处链接和本声明。
// 原文链接:https://blog.csdn.net/hwjcmozw/article/details/42963633
class CPackBinaryCmd : public Poco::Util::ServerApplication
{
protected:
void initialize(Poco::Util::Application& self) override;
void uninitialize() override;
void defineOptions(Poco::Util::OptionSet& options) override;
void handleHelp(const std::string& name, const std::string& value);
void handleInput(const std::string& name, const std::string& value);
int main(const std::vector<std::string>& args) override;
private:
bool validCheck();
private:
CmdResult result_;
};
#endif