public void applyOptions()

in client/migrationx/migrationx-transformer/src/main/java/com/aliyun/dataworks/migrationx/transformer/core/sqoop/ImportTool.java [236:363]


    public void applyOptions(CommandLine in, SqoopOptions out) {

        try {
            applyCommonOptions(in, out);

            if (in.hasOption(DIRECT_ARG)) {
                out.setDirectMode(true);
            }

            if (!allTables) {
                if (in.hasOption(TABLE_ARG)) {
                    out.setTableName(in.getOptionValue(TABLE_ARG));
                }

                if (in.hasOption(COLUMNS_ARG)) {
                    String[] cols = in.getOptionValue(COLUMNS_ARG).split(",");
                    for (int i = 0; i < cols.length; i++) {
                        cols[i] = cols[i].trim();
                    }
                    out.setColumns(cols);
                }

                if (in.hasOption(SPLIT_BY_ARG)) {
                    out.setSplitByCol(in.getOptionValue(SPLIT_BY_ARG));
                }

                if (in.hasOption(SPLIT_LIMIT_ARG)) {
                    out.setSplitLimit(Integer.parseInt(in.getOptionValue(SPLIT_LIMIT_ARG)));
                }

                if (in.hasOption(WHERE_ARG)) {
                    out.setWhereClause(in.getOptionValue(WHERE_ARG));
                }

                if (in.hasOption(TARGET_DIR_ARG)) {
                    out.setTargetDir(in.getOptionValue(TARGET_DIR_ARG));
                }

                if (in.hasOption(APPEND_ARG)) {
                    out.setAppendMode(true);
                }

                if (in.hasOption(DELETE_ARG)) {
                    out.setDeleteMode(true);
                }

                if (in.hasOption(SQL_QUERY_ARG)) {
                    out.setSqlQuery(in.getOptionValue(SQL_QUERY_ARG));
                }

                if (in.hasOption(SQL_QUERY_BOUNDARY)) {
                    out.setBoundaryQuery(in.getOptionValue(SQL_QUERY_BOUNDARY));
                }

                if (in.hasOption(MERGE_KEY_ARG)) {
                    out.setMergeKeyCol(in.getOptionValue(MERGE_KEY_ARG));
                }

                applyValidationOptions(in, out);
            }

            if (in.hasOption(WAREHOUSE_DIR_ARG)) {
                out.setWarehouseDir(in.getOptionValue(WAREHOUSE_DIR_ARG));
            }

            if (in.hasOption(FMT_SEQUENCEFILE_ARG)) {
                out.setFileLayout(SqoopOptions.FileLayout.SequenceFile);
            }

            if (in.hasOption(FMT_TEXTFILE_ARG)) {
                out.setFileLayout(SqoopOptions.FileLayout.TextFile);
            }

            if (in.hasOption(FMT_AVRODATAFILE_ARG)) {
                out.setFileLayout(SqoopOptions.FileLayout.AvroDataFile);
            }

            if (in.hasOption(FMT_PARQUETFILE_ARG)) {
                out.setFileLayout(SqoopOptions.FileLayout.ParquetFile);
            }

            if (in.hasOption(NUM_MAPPERS_ARG)) {
                out.setNumMappers(Integer.parseInt(in.getOptionValue(NUM_MAPPERS_ARG)));
            }

            if (in.hasOption(MAPREDUCE_JOB_NAME)) {
                out.setMapreduceJobName(in.getOptionValue(MAPREDUCE_JOB_NAME));
            }

            if (in.hasOption(COMPRESS_ARG)) {
                out.setUseCompression(true);
            }

            if (in.hasOption(COMPRESSION_CODEC_ARG)) {
                out.setCompressionCodec(in.getOptionValue(COMPRESSION_CODEC_ARG));
            }

            if (in.hasOption(DIRECT_SPLIT_SIZE_ARG)) {
                out.setDirectSplitSize(Long.parseLong(in.getOptionValue(DIRECT_SPLIT_SIZE_ARG)));
            }

            if (in.hasOption(INLINE_LOB_LIMIT_ARG)) {
                out.setInlineLobLimit(Long.parseLong(in.getOptionValue(INLINE_LOB_LIMIT_ARG)));
            }

            if (in.hasOption(FETCH_SIZE_ARG)) {
                out.setFetchSize(new Integer(in.getOptionValue(FETCH_SIZE_ARG)));
            }

            if (in.hasOption(JAR_FILE_NAME_ARG)) {
                out.setExistingJarName(in.getOptionValue(JAR_FILE_NAME_ARG));
            }

            if (in.hasOption(AUTORESET_TO_ONE_MAPPER)) {
                out.setAutoResetToOneMapper(true);
            }

            applyIncrementalOptions(in, out);
            applyHiveOptions(in, out);
            applyCodeGenOptions(in, out, allTables);
            applyHBaseOptions(in, out);
            applyHCatalogOptions(in, out);
            applyAccumuloOptions(in, out);

        } catch (NumberFormatException nfe) {
            throw new InvalidOptionsException("Error: expected numeric argument.\n" + "Try --help for usage.");
        }
    }