X-Git-Url: http://secure.phpeclipse.com diff --git a/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/model/xml/ModelToXMLConverter.java b/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/model/xml/ModelToXMLConverter.java index fc282e6..e295b03 100644 --- a/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/model/xml/ModelToXMLConverter.java +++ b/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/model/xml/ModelToXMLConverter.java @@ -1,10 +1,12 @@ package com.quantum.model.xml; -import com.quantum.Messages; +import java.sql.SQLException; + import com.quantum.model.Bookmark; import com.quantum.model.Column; import com.quantum.model.Entity; import com.quantum.model.JDBCDriver; +import com.quantum.model.NotConnectedException; import com.quantum.model.Schema; import com.quantum.sql.metadata.MetaDataXMLInterface; @@ -34,8 +36,18 @@ public class ModelToXMLConverter { Element driverNode = document.createElement("jdbcDriver"); driverNode.setAttribute("name", jdbcDriver.getName()); driverNode.setAttribute("version", jdbcDriver.getVersion()); - driverNode.setAttribute("jarFileName", jdbcDriver.getJarFileName()); + driverNode.setAttribute("type", jdbcDriver.getType()); driverNode.setAttribute("className", jdbcDriver.getClassName()); + + String[] fileNames = jdbcDriver.getJarFileNames(); + for (int i = 0, length = fileNames == null ? 0 : fileNames.length; i < length; i++) { + if (fileNames[i] != null) { + Element fileName = document.createElement("jar"); + fileName.setAttribute("fileName", fileNames[i]); + driverNode.appendChild(fileName); + } + } + bookmarkRoot.appendChild(driverNode); } @@ -50,18 +62,23 @@ public class ModelToXMLConverter { MetaDataXMLInterface.createElementText(bookmark,"autoCommit", b.isAutoCommit() ? "true" : "false"); //$NON-NLS-1$ MetaDataXMLInterface.createElementText(bookmark,"autoCommitPreference", b.getAutoCommitPreference()); //$NON-NLS-1$ MetaDataXMLInterface.createElementText(bookmark,"driver", b.getJDBCDriver().getClassName()); //$NON-NLS-1$ - MetaDataXMLInterface.createElementText(bookmark,"type", b.getType()); //$NON-NLS-1$ - MetaDataXMLInterface.createElementText(bookmark,"driverLocation", b.getJDBCDriver().getJarFileName()); //$NON-NLS-1$ - Element otherSchemas = (Element) bookmark.appendChild(document.createElement(Messages.getString("ExportXMLAction.OtherSchemas"))); //$NON-NLS-1$ - Schema[] schemas = b.getSchemas(); - for (int i = 0, length = (schemas == null) ? 0 : schemas.length; - i < length; - i++) { - if (!schemas[i].isDefault()) { - MetaDataXMLInterface.createElementText( - otherSchemas,Messages.getString("ExportXMLAction.SchemaName"), schemas[i].getName()); //$NON-NLS-1$ - } + MetaDataXMLInterface.createElementText(bookmark,"type", b.getJDBCDriver().getType()); //$NON-NLS-1$ + String[] fileNames = b.getJDBCDriver().getJarFileNames(); + for (int i = 0, length = fileNames == null ? 0 : fileNames.length; i < length; i++) { + MetaDataXMLInterface.createElementText(bookmark,"driverLocation", fileNames[i]); + } + Element otherSchemas = (Element) bookmark.appendChild(document.createElement("Other_Schemas")); //$NON-NLS-1$ + otherSchemas.setAttribute("schemaRule", + b.useAllSchemas() + ? "useAll" + : b.useUsernameAsSchema() ? "useDefault" : "useSelected"); + + Schema[] schemas = b.getSchemaSelections(); + for (int i = 0, length = (schemas == null) ? 0 : schemas.length; i < length; i++) { + MetaDataXMLInterface.createElementText( + otherSchemas,"schema", schemas[i].getName()); //$NON-NLS-1$ } + Entity[] quickList = b.getQuickListEntries(); Element quickListEntity = document.createElement("quickList"); for (int j = 0, length = (quickList == null) ? 0 : quickList.length; @@ -84,8 +101,13 @@ public class ModelToXMLConverter { if (entity.getSchema() != null) { element.setAttribute("schema", entity.getSchema()); } + element.setAttribute("isSynonym", entity.isSynonym() ? "true" : "false"); if (recurse) { - convert(element, entity.getColumns()); + try { + convert(element, entity.getColumns()); + } catch (NotConnectedException e) { + } catch (SQLException e) { + } } parent.appendChild(element); }