예제 #1
0
  /** load all brain categories from AIMLIF directory */
  public int addCategoriesFromAIMLIF() {
    Timer timer = new Timer();
    timer.start();
    int cnt = 0;

    try {
      String[] listOfFiles = Alice.getContext().getAssets().list(aimlif_path);
      if (MagicBooleans.trace_mode) System.out.println("Loading AIML files from " + aimlif_path);
      for (String file : listOfFiles) {
        if (file.endsWith(MagicStrings.aimlif_file_suffix)
            || file.endsWith(MagicStrings.aimlif_file_suffix.toUpperCase())) {
          if (MagicBooleans.trace_mode) System.out.println(file);
          try {
            ArrayList<Category> moreCategories = readIFCategories(aimlif_path + "/" + file);
            cnt += moreCategories.size();
            addMoreCategories(file, moreCategories);
            //   MemStats.memStats();
          } catch (Exception iex) {
            System.out.println("Problem loading " + file);
            iex.printStackTrace();
          }
        }
      }

    } catch (IOException e) {
      e.printStackTrace();
    }

    if (MagicBooleans.trace_mode)
      System.out.println("Loaded " + cnt + " categories in " + timer.elapsedTimeSecs() + " sec");
    return cnt;
  }
예제 #2
0
  /** Load all brain categories from AIML directory */
  int addCategoriesFromAIML() {
    Timer timer = new Timer();
    timer.start();
    int cnt = 0;

    try {
      String[] listOfFiles = Alice.getContext().getAssets().list(aiml_path);
      if (MagicBooleans.trace_mode) {
        System.out.println("Loading AIML files from " + aiml_path);
        BrainLogger.getInstance().info("Loading AIML files from " + aiml_path);
      }
      for (String file : listOfFiles) {
        if (file.endsWith(".aiml") || file.endsWith(".AIML")) {
          if (MagicBooleans.trace_mode) {
            System.out.println(file);
            BrainLogger.getInstance().info("Reading AIML category " + file);
          }
          try {
            ArrayList<Category> moreCategories = AIMLProcessor.AIMLToCategories(aiml_path, file);
            addMoreCategories(file, moreCategories);
            cnt += moreCategories.size();
          } catch (Exception iex) {
            System.out.println("Problem loading " + file);
            iex.printStackTrace();
          }
        }
      }

    } catch (IOException e) {
      e.printStackTrace();
    }

    if (MagicBooleans.trace_mode) {
      System.out.println("Loaded " + cnt + " categories in " + timer.elapsedTimeSecs() + " sec");
      BrainLogger.getInstance()
          .info("Loaded " + cnt + " categories in " + timer.elapsedTimeSecs() + " sec");
    }
    return cnt;
  }