Beispiel #1
0
 private final void save() {
   if (saveRecordFile) {
     Resource resource = record.eResource();
     if (resource != null) {
       try {
         resource.save(EmfXmlUtil.defaultLoadSaveOptions());
       } catch (IOException e) {
         Throwables.propagate(e);
       }
     }
   }
 }
  public void record(String[] args) {
    String recordFile = args[0];
    ResourceSet rs = new ResourceSetImpl();
    Resource resource = rs.createResource(URI.createFileURI(recordFile));

    Map<Object, Object> options = new HashMap<Object, Object>();
    options.put(XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE);

    for (int record = 0; record < NUMBER_OF_RECORDS; record++) {
      System.out.println("start to retrieve data in round " + record);
      Network result = ClickWatchModelFactory.eINSTANCE.createNetwork();
      RetrieveLoop:
      for (int i = 1; i < args.length; i++) {
        String host = args[i];
        String port = "7777";

        Node node = null;
        try {
          node = retrieve(host, port);
          node.setPort(port);
          node.setINetAddress(host);
        } catch (Throwable e) {
          e.printStackTrace();
          System.err.println("Exception while retrieving " + host + "[" + port + "]\n");
          continue RetrieveLoop;
        }
        result.getNodes().add(node);
        System.out.println("successfully retrieved one set of data from " + host);
      }
      resource.getContents().add(result);

      try {
        Thread.sleep(UPDATE_INTERVALL);
      } catch (InterruptedException e) {
        e.printStackTrace();
      }
    }

    try {
      resource.save(options);
    } catch (IOException e) {
      e.printStackTrace();
      Throwables.propagate(e);
    }
  }