	public Reader lshistory(String format, Date lastBuildDate, String viewName,
			String branch, String[] viewPaths) throws IOException,
			InterruptedException {
		SimpleDateFormat formatter = new SimpleDateFormat("d-MMM.HH:mm:ss");
		ArgumentListBuilder cmd = new ArgumentListBuilder();
		cmd.add("lshistory");
		cmd.add("-r");
		cmd.add("-since", formatter.format(lastBuildDate).toLowerCase());
		cmd.add("-fmt", format);
		if ((branch != null) && (branch.length() > 0)) {
			cmd.add("-branch", "brtype:" + branch);
		}
		cmd.add("-nco");
		FilePath viewPath = getRootViewPath(launcher).child(viewName);
		for (String path : viewPaths) { 
			cmd.add(path.replace("\\n",""));
		}
		Reader returnReader = null;
		ByteArrayOutputStream baos = new ByteArrayOutputStream();
		if (launcher.run(cmd.toCommandArray(), null, baos, viewPath)) {
			returnReader = new InputStreamReader(new ByteArrayInputStream(baos
					.toByteArray()));
		}
		baos.close();
		return returnReader;
	}

	public Reader lshistory(String format, Date lastBuildDate, String viewName,
			String branch, String[] viewPaths) throws IOException,
			InterruptedException {
		SimpleDateFormat formatter = new SimpleDateFormat("d-MMM.HH:mm:ss");
		ArgumentListBuilder cmd = new ArgumentListBuilder();
		cmd.add("lshistory");
		cmd.add("-r");
		cmd.add("-since", formatter.format(lastBuildDate).toLowerCase());
		cmd.add("-fmt", format);
		if ((branch != null) && (branch.length() > 0)) {
			cmd.add("-branch", "brtype:" + branch);
		}
		cmd.add("-nco");
		FilePath viewPath = getRootViewPath(launcher).child(viewName);
		for (String path : viewPaths) { 
			cmd.add(path.replace("\n",""));
		}
		Reader returnReader = null;
		ByteArrayOutputStream baos = new ByteArrayOutputStream();
		if (launcher.run(cmd.toCommandArray(), null, baos, viewPath)) {
			returnReader = new InputStreamReader(new ByteArrayInputStream(baos
					.toByteArray()));
		}
		baos.close();
		return returnReader;
	}
