예제 #1
0
  private String composeAllFileContents(IFolder folder) {
    String contents = "";
    try {
      int lineNumber = 0;
      for (IResource member : folder.members()) {
        if (member.getType() == IResource.FILE
            && DeltajComposer.FILE_EXT.equals("." + member.getFileExtension())) {
          DeltajFile file = new DeltajFile((IFile) member, lineNumber, 0);

          InputStream source = null;
          source = ((IFile) member).getContents();
          BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(source));
          StringBuilder stringBuilder = new StringBuilder();
          String line = null;
          while ((line = bufferedReader.readLine()) != null) {
            stringBuilder.append(line + "\n");
            lineNumber++;
          }
          bufferedReader.close();
          contents += stringBuilder.toString() + "\n";
          file.setEndLine(lineNumber++);
          this.deltajFiles.add(file);
        } else if (member.getType() == IResource.FOLDER) {
          contents += composeAllFileContents((IFolder) member);
        }
      }
    } catch (CoreException e) {
      DeltajCorePlugin.getDefault().logError(e);
    } catch (IOException e) {
      DeltajCorePlugin.getDefault().logError(e);
    }
    return contents;
  }