コード例 #1
0
  private static void generateModel(String kevScript, String storageModel) {
    try {
      ByteArrayOutputStream stream = new ByteArrayOutputStream();
      BufferedReader fileStream = new BufferedReader(new FileReader(new File(kevScript)));

      KevScriptEngine kengine =
          new KevScriptOfflineEngine(
              defaultKevoreeFactory.createContainerRoot(), new NodeTypeBootstrapHelper());
      String line = fileStream.readLine();
      while (line != null) {
        kengine.append(line).append("\n");
        line = fileStream.readLine();
      }

      /*System.out.println("starting to generate model: " + System.currentTimeMillis());
      KevoreeXmiHelper.instance$.save(storageModel, kengine.interpret());
      System.out.println("finishing to generate model: " + System.currentTimeMillis());*/

      JSONModelSerializer serializer = new JSONModelSerializer();
      File fp = new File(storageModel);
      FileOutputStream fop = new FileOutputStream(fp);

      serializer.serializeToStream(kengine.interpret(), fop);

      fop.flush();
      fop.close();

      System.out.println(fp.getAbsolutePath());
    } catch (KevScriptEngineException e) {
      System.err.println("Unable to save the generated model");
      e.printStackTrace();
    } catch (FileNotFoundException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }