# This patch file was generated by NetBeans IDE # Following Index: paths are relative to: /home/matthias/NetBeansProjects/main-golden # This patch can be applied using context Tools: Patch action on respective folder. # It uses platform neutral UTF-8 encoding and \n newlines. # Above lines and this line are ignored by the patching process. Index: db.metadata.model/manifest.mf --- db.metadata.model/manifest.mf Base (BASE) +++ db.metadata.model/manifest.mf Locally Modified (Based On LOCAL) @@ -1,5 +1,5 @@ Manifest-Version: 1.0 OpenIDE-Module: org.netbeans.modules.db.metadata.model/1 OpenIDE-Module-Localizing-Bundle: org/netbeans/modules/db/metadata/model/resources/Bundle.properties -OpenIDE-Module-Specification-Version: 1.1 +OpenIDE-Module-Specification-Version: 1.2 AutoUpdate-Show-In-Client: false Index: db.metadata.model/src/org/netbeans/modules/db/metadata/model/api/Value.java --- db.metadata.model/src/org/netbeans/modules/db/metadata/model/api/Value.java Base (BASE) +++ db.metadata.model/src/org/netbeans/modules/db/metadata/model/api/Value.java Locally Modified (Based On LOCAL) @@ -128,6 +128,15 @@ return impl.getNullable(); } + /** + * Return database specific name of data type + * + * @return + */ + public String getTypeName() { + return impl.getTypeName(); + } + @Override public String toString() { return impl.toString(); Index: db.metadata.model/src/org/netbeans/modules/db/metadata/model/jdbc/JDBCColumn.java --- db.metadata.model/src/org/netbeans/modules/db/metadata/model/jdbc/JDBCColumn.java Base (BASE) +++ db.metadata.model/src/org/netbeans/modules/db/metadata/model/jdbc/JDBCColumn.java Locally Modified (Based On LOCAL) @@ -97,6 +97,11 @@ } @Override + public String getTypeName() { + return value.getTypeName(); + } + + @Override public int getLength() { return value.getLength(); } Index: db.metadata.model/src/org/netbeans/modules/db/metadata/model/jdbc/JDBCParameter.java --- db.metadata.model/src/org/netbeans/modules/db/metadata/model/jdbc/JDBCParameter.java Base (BASE) +++ db.metadata.model/src/org/netbeans/modules/db/metadata/model/jdbc/JDBCParameter.java Locally Modified (Based On LOCAL) @@ -109,6 +109,11 @@ } @Override + public String getTypeName() { + return value.getTypeName(); + } + + @Override public int getLength() { return value.getLength(); } Index: db.metadata.model/src/org/netbeans/modules/db/metadata/model/jdbc/JDBCValue.java --- db.metadata.model/src/org/netbeans/modules/db/metadata/model/jdbc/JDBCValue.java Base (BASE) +++ db.metadata.model/src/org/netbeans/modules/db/metadata/model/jdbc/JDBCValue.java Locally Modified (Based On LOCAL) @@ -63,6 +63,7 @@ private final MetadataElement parent; private final String name; private final SQLType type; + private final String typeName; private final int length; private final int precision; private final short radix; @@ -79,13 +80,14 @@ public static JDBCValue createProcedureValue(ResultSet rs, MetadataElement parent) throws SQLException { String name = MetadataUtilities.trimmed(rs.getString("COLUMN_NAME")); SQLType type = JDBCUtils.getSQLType(rs.getInt("DATA_TYPE")); + String typeName = rs.getString("TYPE_NAME"); int length = rs.getInt("LENGTH"); int precision = rs.getInt("PRECISION"); short scale = rs.getShort("SCALE"); short radix = rs.getShort("RADIX"); Nullable nullable = JDBCUtils.getProcedureNullable(rs.getShort("NULLABLE")); - return new JDBCValue(parent, name, type, length, precision, radix, scale, nullable); + return new JDBCValue(parent, name, type, typeName, length, precision, radix, scale, nullable); } /** @@ -111,6 +113,7 @@ public static JDBCValue createTableColumnValue(ResultSet rs, MetadataElement parent) throws SQLException { String name = MetadataUtilities.trimmed(rs.getString("COLUMN_NAME")); SQLType type = JDBCUtils.getSQLType(rs.getInt("DATA_TYPE")); + String typeName = rs.getString("TYPE_NAME"); int length = 0; int precision = 0; @@ -126,7 +129,7 @@ short radix = rs.getShort("NUM_PREC_RADIX"); Nullable nullable = JDBCUtils.getColumnNullable(rs.getShort("NULLABLE")); - return new JDBCValue(parent, name, type, length, precision, radix, scale, nullable); + return new JDBCValue(parent, name, type, typeName, length, precision, radix, scale, nullable); } /** @@ -140,6 +143,7 @@ public static JDBCValue createTableColumnValueODBC(ResultSet rs, MetadataElement parent) throws SQLException { String name = MetadataUtilities.trimmed(rs.getString("COLUMN_NAME")); SQLType type = JDBCUtils.getSQLType(rs.getInt("DATA_TYPE")); + String typeName = rs.getString("TYPE_NAME"); int length = 0; int precision = 0; if (JDBCUtils.isCharType(type)) { @@ -151,10 +155,12 @@ short radix = rs.getShort("RADIX"); Nullable nullable = JDBCUtils.getColumnNullable(rs.getShort("NULLABLE")); - return new JDBCValue(parent, name, type, length, precision, radix, scale, nullable); + return new JDBCValue(parent, name, type, typeName, length, precision, radix, scale, nullable); } - public JDBCValue(MetadataElement parent, String name, SQLType type, int length, int precision, short radix, short scale, Nullable nullable) { + public JDBCValue(MetadataElement parent, String name, SQLType type, + String typeName, int length, int precision, short radix, + short scale, Nullable nullable) { this.parent = parent; this.name = name; this.type = type; @@ -163,6 +169,7 @@ this.radix = radix; this.scale = scale; this.nullable = nullable; + this.typeName = typeName; } @Override @@ -201,6 +208,11 @@ } @Override + public String getTypeName() { + return typeName; + } + + @Override public String toString() { return "name=" + name + ", type=" + type + ", length=" + getLength() + ", precision=" + getPrecision() + ", radix=" + getRadix() + ", scale=" + getScale() + ", nullable=" + nullable; Index: db.metadata.model/src/org/netbeans/modules/db/metadata/model/jdbc/mysql/MySQLProcedure.java --- db.metadata.model/src/org/netbeans/modules/db/metadata/model/jdbc/mysql/MySQLProcedure.java Base (BASE) +++ db.metadata.model/src/org/netbeans/modules/db/metadata/model/jdbc/mysql/MySQLProcedure.java Locally Modified (Based On LOCAL) @@ -93,6 +93,7 @@ int precision = 0; SQLType type = JDBCUtils.getSQLType(rs.getInt("DATA_TYPE")); + String typeName = rs.getString("TYPE_NAME"); if (JDBCUtils.isNumericType(type)) { precision = rs.getInt("PRECISION"); } else { @@ -102,7 +103,7 @@ short radix = rs.getShort("RADIX"); Nullable nullable = JDBCUtils.getProcedureNullable(rs.getShort("NULLABLE")); - return new JDBCValue(parent, name, type, length, precision, radix, scale, nullable); + return new JDBCValue(parent, name, type, typeName, length, precision, radix, scale, nullable); } Index: db.metadata.model/src/org/netbeans/modules/db/metadata/model/spi/ValueImplementation.java --- db.metadata.model/src/org/netbeans/modules/db/metadata/model/spi/ValueImplementation.java Base (BASE) +++ db.metadata.model/src/org/netbeans/modules/db/metadata/model/spi/ValueImplementation.java Locally Modified (Based On LOCAL) @@ -78,4 +78,12 @@ public abstract SQLType getType(); + /** + * This should be override by the implementation - this is a fallback! + * + * @return Database specific type name + */ + public String getTypeName() { + return getType().toString(); } +}