stringBuffer.append(line);
line = reader.readLine();
}
reader.close();
} catch (IOException e) {
throw new MonitoringException("Unable to read the sample monitoring report from the file: "
+ e.getMessage());
}
String buffer = stringBuffer.toString().trim();
SAXParserFactory factory = SAXParserFactory.newInstance();
javax.xml.parsers.SAXParser parser;
GangliaXMLParser gangliaXMLParser;
try {
parser = factory.newSAXParser();
gangliaXMLParser = new GangliaXMLParser();
parser.parse(new InputSource(new StringReader(buffer)), gangliaXMLParser);
gridConfiguration = gangliaXMLParser.getGridConfiguration();
} catch (ParserConfigurationException e) {
throw new MonitoringException("Error while parsing: " + e.getMessage());
} catch (SAXException e) {
throw new MonitoringException("Error while parsing the XML: " + e.getMessage());
} catch (IOException e) {
throw new MonitoringException("I/O error: " + e.getMessage());
}
}