Author: adrianocrestani Date: Wed Oct 17 03:05:46 2007 New Revision: 585433
URL: http://svn.apache.org/viewvc?rev=585433&view=rev Log: applying patch from JIRA-1845 Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypeHelper.java incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypes.java incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/TypeTests.java Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypeHelper.java URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypeHelper.java?rev=585433&r1=585432&r2=585433&view=diff ============================================================================== --- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypeHelper.java (original) +++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypeHelper.java Wed Oct 17 03:05:46 2007 @@ -29,20 +29,28 @@ } public static String columnTypeForSDOType(Type sdoType){ - if(sdoType == null){ - return null; + if(sdoType == null) { + throw new RuntimeException("Null SDO Data Type!"); + } + + if(!sdoType.isDataType()) { + throw new RuntimeException("Invalid SDO Data Type! "+sdoType.getName()); } if (sdoType == SDODataTypes.BOOLEAN) { return SDODataTypes.BOOLEAN_STR; - } else if (sdoType == SDODataTypes.STRING) { - return SDODataTypes.STRING_STR; + } else if (sdoType == SDODataTypes.BOOLEANOBJECT) { + return SDODataTypes.BOOLEANOBJECT_STR; } else if (sdoType == SDODataTypes.BYTE) { return SDODataTypes.BYTE_STR; + } else if (sdoType == SDODataTypes.BYTEOBJECT) { + return SDODataTypes.BYTEOBJECT_STR; } else if (sdoType == SDODataTypes.BYTES) { return SDODataTypes.BYTES_STR; } else if (sdoType == SDODataTypes.CHARACTER) { return SDODataTypes.CHARACTER_STR; + } else if (sdoType == SDODataTypes.CHARACTEROBJECT) { + return SDODataTypes.CHARACTEROBJECT_STR; } else if (sdoType == SDODataTypes.DATE) { return SDODataTypes.DATE_STR; } else if (sdoType == SDODataTypes.DATETIME) { @@ -51,18 +59,28 @@ return SDODataTypes.DAY_STR; } else if (sdoType == SDODataTypes.DECIMAL) { return SDODataTypes.DECIMAL_STR; + } else if (sdoType == SDODataTypes.STRING) { + return SDODataTypes.STRING_STR; } else if (sdoType == SDODataTypes.DOUBLE) { return SDODataTypes.DOUBLE_STR; + } else if (sdoType == SDODataTypes.DOUBLEOBJECT) { + return SDODataTypes.DOUBLEOBJECT_STR; } else if (sdoType == SDODataTypes.DURATION) { return SDODataTypes.DURATION_STR; } else if (sdoType == SDODataTypes.FLOAT) { return SDODataTypes.FLOAT_STR; + } else if (sdoType == SDODataTypes.FLOATOBJECT) { + return SDODataTypes.FLOATOBJECT_STR; } else if (sdoType == SDODataTypes.INT) { return SDODataTypes.INT_STR; } else if (sdoType == SDODataTypes.INTEGER) { return SDODataTypes.INTEGER_STR; + } else if (sdoType == SDODataTypes.INTOBJECT) { + return SDODataTypes.INTOBJECT_STR; } else if (sdoType == SDODataTypes.LONG) { return SDODataTypes.LONG_STR; + } else if (sdoType == SDODataTypes.LONGOBJECT) { + return SDODataTypes.LONGOBJECT_STR; } else if (sdoType == SDODataTypes.MONTH) { return SDODataTypes.MONTH_STR; } else if (sdoType == SDODataTypes.MONTHDAY) { @@ -71,6 +89,8 @@ return SDODataTypes.OBJECT_STR; } else if (sdoType == SDODataTypes.SHORT) { return SDODataTypes.SHORT_STR; + } else if (sdoType == SDODataTypes.SHORTOBJECT) { + return SDODataTypes.SHORTOBJECT_STR; } else if (sdoType == SDODataTypes.STRING) { return SDODataTypes.STRING_STR; } else if (sdoType == SDODataTypes.STRINGS) { @@ -85,24 +105,8 @@ return SDODataTypes.YEARMONTH_STR; } else if (sdoType == SDODataTypes.YEARMONTHDAY) { return SDODataTypes.YEARMONTHDAY_STR; - } else if (sdoType == SDODataTypes.BOOLEANOBJECT) { - return SDODataTypes.BOOLEANOBJECT_STR; - } else if (sdoType == SDODataTypes.BYTEOBJECT) { - return SDODataTypes.BYTEOBJECT_STR; - } else if (sdoType == SDODataTypes.CHARACTEROBJECT) { - return SDODataTypes.CHARACTEROBJECT_STR; - } else if (sdoType == SDODataTypes.DOUBLEOBJECT) { - return SDODataTypes.DOUBLEOBJECT_STR; - } else if (sdoType == SDODataTypes.FLOATOBJECT) { - return SDODataTypes.FLOATOBJECT_STR; - } else if (sdoType == SDODataTypes.INTEGEROBJECT) { - return SDODataTypes.INTEGEROBJECT_STR; - } else if (sdoType == SDODataTypes.LONGOBJECT) { - return SDODataTypes.LONGOBJECT_STR; - } else if (sdoType == SDODataTypes.SHORTOBJECT) { - return SDODataTypes.SHORTOBJECT_STR; } else { - throw new RuntimeException("Not a valid SDO Type " + sdoType); + throw new RuntimeException("Invalid SDO Data Type " + sdoType.getName()); } } @@ -126,7 +130,7 @@ } else if (sdoType == SDODataTypes.DATETIME) { return Types.DATE; } else if (sdoType == SDODataTypes.DAY) { - return java.sql.Types.BINARY; + return java.sql.Types.VARCHAR; } else if (sdoType == SDODataTypes.DECIMAL) { return java.sql.Types.DECIMAL; } else if (sdoType == SDODataTypes.DOUBLE) { @@ -149,8 +153,6 @@ return java.sql.Types.JAVA_OBJECT; } else if (sdoType == SDODataTypes.SHORT) { return java.sql.Types.SMALLINT; - } else if (sdoType == SDODataTypes.STRING) { - return java.sql.Types.VARCHAR; } else if (sdoType == SDODataTypes.STRINGS) { return java.sql.Types.OTHER; } else if (sdoType == SDODataTypes.TIME) { @@ -173,14 +175,14 @@ return java.sql.Types.DOUBLE; } else if (sdoType == SDODataTypes.FLOATOBJECT) { return java.sql.Types.REAL; - } else if (sdoType == SDODataTypes.INTEGEROBJECT) { + } else if (sdoType == SDODataTypes.INTOBJECT) { return java.sql.Types.INTEGER; } else if (sdoType == SDODataTypes.LONGOBJECT) { return java.sql.Types.BIGINT; } else if (sdoType == SDODataTypes.SHORTOBJECT) { return java.sql.Types.SMALLINT; } else { - throw new RuntimeException("Not a valid SDO Type " + sdoType); + throw new RuntimeException("Invalid SDO Data Type " + sdoType.getName()); } } Modified: incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypes.java URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypes.java?rev=585433&r1=585432&r2=585433&view=diff ============================================================================== --- incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypes.java (original) +++ incubator/tuscany/java/das/rdb/src/main/java/org/apache/tuscany/das/rdb/impl/SDODataTypes.java Wed Oct 17 03:05:46 2007 @@ -23,7 +23,7 @@ /** * Defines SDO data types. This is used primalirly to type stored procedure OUT parameters. - * + * and due to final consts reduce number of string creation */ public class SDODataTypes { @@ -32,50 +32,71 @@ public static final Type BOOLEAN = TYPE_HELPER.getType("commonj.sdo", "Boolean"); public static final String BOOLEAN_STR = "commonj.sdo.Boolean"; + public static final Type BOOLEANOBJECT = TYPE_HELPER.getType("commonj.sdo", "BooleanObject"); + public static final String BOOLEANOBJECT_STR = "commonj.sdo.BooleanObject"; + public static final Type BYTE = TYPE_HELPER.getType("commonj.sdo", "Byte"); public static final String BYTE_STR = "commonj.sdo.Byte"; + public static final Type BYTEOBJECT = TYPE_HELPER.getType("commonj.sdo", "ByteObject"); + public static final String BYTEOBJECT_STR = "commonj.sdo.ByteObject"; + public static final Type BYTES = TYPE_HELPER.getType("commonj.sdo", "Bytes"); public static final String BYTES_STR = "commonj.sdo.Bytes"; public static final Type CHARACTER = TYPE_HELPER.getType("commonj.sdo", "Character"); public static final String CHARACTER_STR = "commonj.sdo.Character"; + public static final Type CHARACTEROBJECT = TYPE_HELPER.getType("commonj.sdo", "CharacterObject"); + public static final String CHARACTEROBJECT_STR = "commonj.sdo.CharacterObject"; + public static final Type DATE = TYPE_HELPER.getType("commonj.sdo", "Date"); public static final String DATE_STR = "commonj.sdo.Date"; - public static final Type DATETIME = TYPE_HELPER.getType("commonj.sdo", "Date"); - public static final String DATETIME_STR = "commonj.sdo.Date"; + public static final Type DATETIME = TYPE_HELPER.getType("commonj.sdo", "DateTime"); + public static final String DATETIME_STR = "commonj.sdo.DateTime"; - public static final Type DAY = TYPE_HELPER.getType("commonj.sdo", "Date"); + public static final Type DAY = TYPE_HELPER.getType("commonj.sdo", "Day"); public static final String DAY_STR = "commonj.sdo.Day"; - public static final Type DECIMAL = TYPE_HELPER.getType("commonj.sdo", "Float"); - public static final String DECIMAL_STR = "commonj.sdo.Float"; + public static final Type DECIMAL = TYPE_HELPER.getType("commonj.sdo", "Decimal"); + public static final String DECIMAL_STR = "commonj.sdo.Decimal"; public static final Type DOUBLE = TYPE_HELPER.getType("commonj.sdo", "Double"); public static final String DOUBLE_STR = "commonj.sdo.Double"; - public static final Type DURATION = TYPE_HELPER.getType("commonj.sdo", "Date"); - public static final String DURATION_STR = "commonj.sdo.Date"; + public static final Type DOUBLEOBJECT = TYPE_HELPER.getType("commonj.sdo", "DoubleObject"); + public static final String DOUBLEOBJECT_STR = "commonj.sdo.DoubleObject"; + + public static final Type DURATION = TYPE_HELPER.getType("commonj.sdo", "Duration"); + public static final String DURATION_STR = "commonj.sdo.Duration"; public static final Type FLOAT = TYPE_HELPER.getType("commonj.sdo", "Float"); public static final String FLOAT_STR = "commonj.sdo.Float"; + public static final Type FLOATOBJECT = TYPE_HELPER.getType("commonj.sdo", "FloatObject"); + public static final String FLOATOBJECT_STR = "commonj.sdo.FloatObject"; + public static final Type INT = TYPE_HELPER.getType("commonj.sdo", "Int"); public static final String INT_STR = "commonj.sdo.Int"; public static final Type INTEGER = TYPE_HELPER.getType("commonj.sdo", "Integer"); public static final String INTEGER_STR = "commonj.sdo.Integer"; + public static final Type INTOBJECT = TYPE_HELPER.getType("commonj.sdo", "IntObject"); + public static final String INTOBJECT_STR = "commonj.sdo.IntObject"; + public static final Type LONG = TYPE_HELPER.getType("commonj.sdo", "Long"); public static final String LONG_STR = "commonj.sdo.Long"; - public static final Type MONTH = TYPE_HELPER.getType("commonj.sdo", "Date"); - public static final String MONTH_STR = "commonj.sdo.Date"; + public static final Type LONGOBJECT = TYPE_HELPER.getType("commonj.sdo", "LongObject"); + public static final String LONGOBJECT_STR = "commonj.sdo.LongObject"; - public static final Type MONTHDAY = TYPE_HELPER.getType("commonj.sdo", "Date"); - public static final String MONTHDAY_STR = "commonj.sdo.Date"; + public static final Type MONTH = TYPE_HELPER.getType("commonj.sdo", "Month"); + public static final String MONTH_STR = "commonj.sdo.Month"; + + public static final Type MONTHDAY = TYPE_HELPER.getType("commonj.sdo", "MonthDay"); + public static final String MONTHDAY_STR = "commonj.sdo.MonthDay"; public static final Type OBJECT = TYPE_HELPER.getType("commonj.sdo", "Object"); public static final String OBJECT_STR = "commonj.sdo.Object"; @@ -83,49 +104,27 @@ public static final Type SHORT = TYPE_HELPER.getType("commonj.sdo", "Short"); public static final String SHORT_STR = "commonj.sdo.Short"; + public static final Type SHORTOBJECT = TYPE_HELPER.getType("commonj.sdo", "ShortObject"); + public static final String SHORTOBJECT_STR = "commonj.sdo.ShortObject"; + public static final Type STRING = TYPE_HELPER.getType("commonj.sdo", "String"); public static final String STRING_STR = "commonj.sdo.String"; - public static final Type STRINGS = TYPE_HELPER.getType("commonj.sdo", "String"); - public static final String STRINGS_STR = "commonj.sdo.String"; - - public static final Type TIME = TYPE_HELPER.getType("commonj.sdo", "Date"); - public static final String TIME_STR = "commonj.sdo.Date"; + public static final Type STRINGS = TYPE_HELPER.getType("commonj.sdo", "Strings"); + public static final String STRINGS_STR = "commonj.sdo.Strings"; - public static final Type URI = TYPE_HELPER.getType("commonj.sdo", "String"); - public static final String URI_STR = "commonj.sdo.String"; + public static final Type TIME = TYPE_HELPER.getType("commonj.sdo", "Time"); + public static final String TIME_STR = "commonj.sdo.Time"; - public static final Type YEAR = TYPE_HELPER.getType("commonj.sdo", "Date"); - public static final String YEAR_STR = "commonj.sdo.Date"; + public static final Type URI = TYPE_HELPER.getType("commonj.sdo", "URI"); + public static final String URI_STR = "commonj.sdo.URI"; - public static final Type YEARMONTH = TYPE_HELPER.getType("commonj.sdo", "Date"); - public static final String YEARMONTH_STR = "commonj.sdo.Date"; + public static final Type YEAR = TYPE_HELPER.getType("commonj.sdo", "Year"); + public static final String YEAR_STR = "commonj.sdo.Year"; - public static final Type YEARMONTHDAY = TYPE_HELPER.getType("commonj.sdo", "Date"); - public static final String YEARMONTHDAY_STR = "commonj.sdo.Date"; - - public static final Type BOOLEANOBJECT = TYPE_HELPER.getType("commonj.sdo", "BooleanObject"); - public static final String BOOLEANOBJECT_STR = "commonj.sdo.BooleanObject"; - - public static final Type BYTEOBJECT = TYPE_HELPER.getType("commonj.sdo", "ByteObject"); - public static final String BYTEOBJECT_STR = "commonj.sdo.ByteObject"; - - public static final Type CHARACTEROBJECT = TYPE_HELPER.getType("commonj.sdo", "CharacterObject"); - public static final String CHARACTEROBJECT_STR = "commonj.sdo.CharacterObject"; - - public static final Type DOUBLEOBJECT = TYPE_HELPER.getType("commonj.sdo", "DoubleObject"); - public static final String DOUBLEOBJECT_STR = "commonj.sdo.DoubleObject"; - - public static final Type FLOATOBJECT = TYPE_HELPER.getType("commonj.sdo", "FloatObject"); - public static final String FLOATOBJECT_STR = "commonj.sdo.FloatObject"; - - public static final Type INTEGEROBJECT = TYPE_HELPER.getType("commonj.sdo", "IntObject"); - public static final String INTEGEROBJECT_STR = "commonj.sdo.IntObject"; - - public static final Type LONGOBJECT = TYPE_HELPER.getType("commonj.sdo", "LongObject"); - public static final String LONGOBJECT_STR = "commonj.sdo.LongObject"; - - public static final Type SHORTOBJECT = TYPE_HELPER.getType("commonj.sdo", "ShortObject"); - public static final String SHORTOBJECT_STR = "commonj.sdo.ShortObject"; + public static final Type YEARMONTH = TYPE_HELPER.getType("commonj.sdo", "YearMonth"); + public static final String YEARMONTH_STR = "commonj.sdo.YearMonth"; + public static final Type YEARMONTHDAY = TYPE_HELPER.getType("commonj.sdo", "YearMonthDay"); + public static final String YEARMONTHDAY_STR = "commonj.sdo.YearMonthDay"; } Modified: incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/TypeTests.java URL: http://svn.apache.org/viewvc/incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/TypeTests.java?rev=585433&r1=585432&r2=585433&view=diff ============================================================================== --- incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/TypeTests.java (original) +++ incubator/tuscany/java/das/rdb/src/test/java/org/apache/tuscany/das/rdb/test/TypeTests.java Wed Oct 17 03:05:46 2007 @@ -26,12 +26,20 @@ * */ +import java.util.Iterator; +import java.util.List; + import org.apache.tuscany.das.rdb.Command; import org.apache.tuscany.das.rdb.DAS; +import org.apache.tuscany.das.rdb.impl.SDODataTypeHelper; import org.apache.tuscany.das.rdb.test.data.TypesData; import org.apache.tuscany.das.rdb.test.framework.DasTest; +import org.apache.tuscany.sdo.api.SDOUtil; +import org.apache.tuscany.sdo.model.impl.ModelFactoryImpl; import commonj.sdo.DataObject; +import commonj.sdo.Type; +import commonj.sdo.impl.HelperProvider; public class TypeTests extends DasTest { @@ -86,5 +94,15 @@ assertEquals(now, ts); }*/ + + public void testTypeMapping() throws Exception { + List typesList = SDOUtil.getTypes(HelperProvider.getDefaultContext(), ModelFactoryImpl.NAMESPACE_URI); + Iterator itr = typesList.iterator(); + while(itr.hasNext()) { + Type sdoType = (Type)itr.next(); + if(sdoType.isDataType() && !sdoType.getName().equals("ChangeSummaryType")) + assertEquals(sdoType.getURI()+"."+sdoType.getName(), SDODataTypeHelper.columnTypeForSDOType(sdoType)); + } + } } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
