title: Eclipse AST not changing files which are not opened in eclipse
body: <p>I am trying to modify source code using eclipse plugin, JDT and AST (Abstract Syntax Tree). I can read all Java files and make operation on all those file, But when i am saving those changes (Edits) in to files using </p>
  
  <pre class="lang-java prettyprint-override"><code>    TextEdit edits = rewriter.rewriteAST();
      // apply the text edits to the compilation unit
      edits.apply(document);
      iCompilationUnit.getBuffer().setContents(document.get());
  </code></pre>
  
  <p>It only make changes in file those are open in eclipse in unsaved mode. Rest of files are not affected.</p>
  
  <p>Find my code snippet below:</p>
  
  <pre class="lang-java prettyprint-override"><code>CompilationUnit cu = parse(iCompilationUnit);
      MethodVisitor visitor = new MethodVisitor();
      cu.accept(visitor);
      String source = iCompilationUnit.getSource();
      Document document= new Document(source);
      ASTRewrite rewriter = ASTRewrite.create(cu.getAST());
      cu.recordModifications();
      for (MethodDeclaration methodDeclaration : visitor.getMethods()) {
          System.out.print("Method name: " + methodDeclaration.getName()
                  + " Return type: " + methodDeclaration.getReturnType2());
          MethodDeclaration methodDecl = methodDeclaration;
          Block block = methodDecl.getBody();
          ListRewrite listRewrite = rewriter.getListRewrite(block, Block.STATEMENTS_PROPERTY);
          Statement placeHolder = (Statement) rewriter.createStringPlaceholder("System.out.println(\"Test Print\");", ASTNode.EMPTY_STATEMENT);
          listRewrite.insertFirst(placeHolder, null);
      }
      TextEdit edits = rewriter.rewriteAST();
      // apply the text edits to the compilation unit
      edits.apply(document);
      iCompilationUnit.getBuffer().setContents(document.get());
  </code></pre>