docs: @SuppressWarnings("unchecked")
  	public static <T> T readObjectFromXml(InputSource source) throws IOException {
  		Object result = null;
  		XMLDecoder xmldec = null;
  		try {
  			xmldec = new XMLDecoder(source);
  			result = xmldec.readObject();
  		} finally {
  			IoUtil.close(xmldec);
  		}
  		return (T) result;
  	}