/** Initialize the importManager map */ private static void createImportManager() { importManager = new HashMap<String, IDataAdapterCreator>(); for (DataAdapterFactory factory : DataAdapterManager.getDataAdapterFactories()) { IDataAdapterCreator creator = factory.iReportConverter(); if (creator != null) { importManager.put(creator.getID(), creator); } } }
/** * Build a data adapter from the iReport XML definition * * @param xml the iReport xml definition * @param className the value of the attribute connectionClass in the xml definition, used to * search a creator for this definition * @return a JSS data adapter, if there is a creator for the xml definition */ public static DataAdapterDescriptor getAdapter(Document xml, String className) { if (importManager == null) createImportManager(); IDataAdapterCreator creator = importManager.get(className); if (creator != null) return creator.buildFromXML(xml); return null; }