public static void main()

in documentation-samples/archive-authoring-api-samples/java/AddUtterances.java [273:343]


    public static void main(String[] args) {

        // uncomment a line below to simulate command line options
        // if (args.length == 0) args = new String[]{"-train"};
        // if (args.length == 0) args = new String[]{"-status"};

        LuisClient luis = null;

        try {
            luis = new LuisClient(LUIS_BASE, LUIS_APP_ID,
                    LUIS_APP_VERSION,LUIS_AUTHORING_ID);
        } catch (StatusException ex) {
            int status = ex.getStatus();
            switch (status) {
                case 401:
                    System.out.println("Invalid access key. Set the variable LUIS_AUTHORING_ID to a valid LUIS access key");
                    System.out.println("in the Java source file " + ex.getStackTrace()[0].getFileName());
                    break;
                case 400:
                    System.out.println("Invalid app ID or version. Set the variable LUIS_APP_ID to a valid LUIS app ID");
                    System.out.println("and the variable LUIS_APP_VERSION to a valid version of that application");
                    System.out.println("in the Java source file " + ex.getStackTrace()[0].getFileName());
                    break;
                default:
                    printExceptionMsg(ex);
                    break;
            }
            System.exit(0);
        } catch (Exception ex) {
            printExceptionMsg(ex);
            System.exit(0);
        }

        try {

            if (args.length > 0) {  // handle command line flags
                String option = args[0].toLowerCase();
                if (option.startsWith("-"))     // strip leading hyphens
                    option = option.substring(option.lastIndexOf('-') + 1);
                if (option.equals("train")) {
                    System.out.println("Adding utterance(s).");
                    luis.addUtterances(UTTERANCE_FILE)
                            .write(RESULTS_FILE)
                            .raiseForStatus();
                    System.out.println("Added utterance(s). Requesting training.");
                    luis.train()
                            .write(RESULTS_FILE)
                            .raiseForStatus();
                    System.out.println("Requested training. Requesting training status.");
                    luis.status()
                            .write(RESULTS_FILE)
                            .raiseForStatus();
                } else if (option.equals("status")) {
                    System.out.println("Requesting training status.");
                    luis.status()
                            .write(RESULTS_FILE)
                            .raiseForStatus();
                }
            } else {
                System.out.println("Adding utterance(s).");
                luis.addUtterances(UTTERANCE_FILE)
                        .write(RESULTS_FILE)
                        .raiseForStatus();
            }

            System.out.println("Success! Results in " + RESULTS_FILE);

        } catch (Exception ex) {
            printExceptionMsg(ex);
        }
    }