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; }