content= JavaCompareUtilities.readString(sca.getContents());
content= JavaCompareUtilities.readString(sca);
	public String getContents(Object node, boolean ignoreWhiteSpace) {				if (! (node instanceof IStreamContentAccessor))			return null;					IStreamContentAccessor sca= (IStreamContentAccessor) node;		String content= null;		try {			content= JavaCompareUtilities.readString(sca.getContents());		} catch (CoreException ex) {			JavaPlugin.log(ex);			return null;		}						if (ignoreWhiteSpace) { 	// we return everything but Java whitespace						// replace comments and whitespace by a single blank			StringBuffer buf= new StringBuffer();			char[] b= content.toCharArray();						// to avoid the trouble when dealing with Unicode			// we use the Java scanner to extract non-whitespace and non-comment tokens			IScanner scanner= ToolFactory.createScanner(true, true, false, false);	// however we request Whitespace and Comments			scanner.setSource(b);			try {				int token;				while ((token= scanner.getNextToken()) != ITerminalSymbols.TokenNameEOF) {					switch (token) {					case ITerminalSymbols.TokenNameWHITESPACE:					case ITerminalSymbols.TokenNameCOMMENT_BLOCK:					case ITerminalSymbols.TokenNameCOMMENT_JAVADOC:					case ITerminalSymbols.TokenNameCOMMENT_LINE:						int l= buf.length();						if (l > 0 && buf.charAt(l-1) != ' ')							buf.append(' ');						break;					default:						buf.append(scanner.getCurrentTokenSource());						buf.append(' ');						break;					}				}				content= buf.toString();	// success!			} catch (InvalidInputException ex) {				// NeedWork			}		}		return content;	}