001package net.gdface.codegen.thrift; 002 003import net.gdface.codegen.generator.GeneratorOptions; 004import org.apache.commons.cli.Option; 005 006/** 007 * @author guyadong 008 * 009 */ 010public class ThriftServiceDecoratorOptions extends GeneratorOptions implements ThriftConstants{ 011 private final static ThriftServiceDecoratorOptions instance = new ThriftServiceDecoratorOptions(); 012 013 protected ThriftServiceDecoratorOptions() { 014 super(); 015 options.addOption(Option.builder(INTERFACE_CLASS_OPTION).longOpt(INTERFACE_CLASS_OPTION_LONG) 016 .desc("interface classes,splited with [,]without blank space,must maped with -rc") 017 .argName("className,..,className").numberOfArgs(1).required().build()); 018 options.addOption(Option.builder(REFERENCE_CLASS_OPTION).longOpt(REFERENCE_CLASS_OPTION_LONG) 019 .desc("reference classes,splited with [,]without blank space,must maped with -ic") 020 .argName("className,..,className").numberOfArgs(1).build()); 021 options.addOption(Option.builder(TASK_TYPE_OPTION).longOpt(TASK_TYPE_OPTION_LONG) 022 .desc(TASK_TYPE_OPTION_DESC).numberOfArgs(1).required().build()); 023 options.addOption(Option.builder().longOpt(THRIFT_CLIENT_PKG_OPTION_LONG) 024 .desc(THRIFT_CLIENT_PKG_OPTION_DESC).numberOfArgs(1).build()); 025 options.addOption(Option.builder(LANGUAGE_OPTION).longOpt(LANGUAGE_OPTION_LONG) 026 .desc(LANGUAGE_OPTION_DESC).numberOfArgs(1).build()); 027 options.addOption(Option.builder(CONFIG_OPTION).longOpt(CONFIG_OPTION_LONG) 028 .desc(CONFIG_OPTION_DESC).numberOfArgs(1).build()); 029 options.addOption(Option.builder(SOURCE_PREFIX_OPTION).longOpt(SOURCE_PREFIX_OPTION_LONG) 030 .desc(SOURCE_PREFIX_OPTION_DESC).numberOfArgs(1).build()); 031 options.addOption(Option.builder(CLASS_PATH_OPTION).longOpt(CLASS_PATH_OPTION_LONG) 032 .desc(CLASS_PATH_OPTION_DESC).numberOfArgs(1).build()); 033 options.addOption(Option.builder().longOpt(TAGS_OPTION_LONG) 034 .desc(TAGS_OPTION_DESC).numberOfArgs(1).build()); 035 options.addOption(Option.builder().longOpt(COMMON_TYPES_OPTION_LONG) 036 .desc(COMMON_TYPES_OPTION_DESC).numberOfArgs(1).build()); 037 options.addOption(Option.builder().longOpt(ERPC_PROGRAM_OPTION_LONG) 038 .desc(ERPC_PROGRAM_OPTION_DESC).numberOfArgs(1).build()); 039 options.addOption(Option.builder().longOpt(ERPC_PORT_PREFIX_OPTION_LONG) 040 .desc(ERPC_PORT_PREFIX_OPTION_DESC).numberOfArgs(1).build()); 041 options.addOption(Option.builder().longOpt(EXCLUDE_METHODS_OPTION_LONG) 042 .desc(EXCLUDE_METHODS_OPTION_DESC).numberOfArgs(Option.UNLIMITED_VALUES).build()); 043 options.addOption(Option.builder().longOpt(INCLUDE_METHODS_OPTION_LONG) 044 .desc(INCLUDE_METHODS_OPTION_DESC).numberOfArgs(Option.UNLIMITED_VALUES).build()); 045 options.addOption(Option.builder().longOpt(EXCLUDE_FIELDS_OPTION_LONG) 046 .desc(EXCLUDE_FIELDS_OPTION_DESC).numberOfArgs(Option.UNLIMITED_VALUES).build()); 047 options.addOption(Option.builder().longOpt(THRIFT_SERVICE_CLASS_OPTION_LONG) 048 .desc(THRIFT_SERVICE_CLASS_OPTION_DESC).numberOfArgs(1).build()); 049 options.addOption(Option.builder().longOpt(ERPC_FORWARD_PORT_OPTION_LONG) 050 .desc(ERPC_FORWARD_PORT_OPTION_DESC).numberOfArgs(1).type(Number.class).build()); 051 options.addOption(Option.builder().longOpt(ERPC_PROXY_PORT_OPTION_LONG) 052 .desc(ERPC_PROXY_PORT_OPTION_DESC).numberOfArgs(1).type(Number.class).build()); 053 options.addOption(Option.builder().longOpt(ERPC_PROXY_PORT_OPTION_LONG) 054 .desc(ERPC_PROXY_PORT_OPTION_DESC).numberOfArgs(1).type(Number.class).build()); 055 options.addOption(Option.builder().longOpt(ERPC_DEFAULT_MAX_LENGTH_OPTION_LONG) 056 .desc(ERPC_DEFAULT_MAX_LENGTH_OPTION_DESC).numberOfArgs(1).type(Number.class).build()); 057 options.addOption(Option.builder().longOpt(ERPC_ERRMSG_MAX_LENGTH_OPTION_LONG) 058 .desc(ERPC_ERRMSG_MAX_LENGTH_OPTION_DESC).numberOfArgs(1).type(Number.class).build()); 059 options.addOption(Option.builder().longOpt(ERPC_BINARY_OUTPUT_SIZE_OPTION_LONG) 060 .desc(ERPC_BINARY_OUTPUT_SIZE_OPTION_DESC).numberOfArgs(1).type(Number.class).build()); 061 062 } 063 064 /** 065 * @return instance 066 */ 067 public static ThriftServiceDecoratorOptions getInstance() { 068 return instance; 069 } 070 071 072}