private void addContextFunctions() { for (String contextType : DataTypeManager.getAllDataTypeNames()) { for (String exprType : DataTypeManager.getAllDataTypeNames()) { addTypedContextFunction(contextType, exprType); } } }
private void addIfNullFunctions() { for (String type : DataTypeManager.getAllDataTypeNames()) { addNvlFunction(type); addIfNullFunction(type); } }
private void addConversionFunctions() { for (String type : DataTypeManager.getAllDataTypeNames()) { addTypedConversionFunction(SourceSystemFunctions.CONVERT, type); addTypedConversionFunction("cast", type); //$NON-NLS-1$ } }
private void addIfNullFunctions() { for (String type : DataTypeManager.getAllDataTypeNames()) { addNvlFunction(type); addIfNullFunction(type); } }
private void addIfNullFunctions() { for (String type : DataTypeManager.getAllDataTypeNames()) { addNvlFunction(type); addIfNullFunction(type); } }
private void addConversionFunctions() { for (String type : DataTypeManager.getAllDataTypeNames()) { addTypedConversionFunction(SourceSystemFunctions.CONVERT, type); addTypedConversionFunction("cast", type); //$NON-NLS-1$ } }
private void addConversionFunctions() { for (String type : DataTypeManager.getAllDataTypeNames()) { addTypedConversionFunction(SourceSystemFunctions.CONVERT, type); addTypedConversionFunction("cast", type); //$NON-NLS-1$ } }
private void addRowLimitFunctions() { for (String exprType : DataTypeManager.getAllDataTypeNames()) { functions.add( new FunctionMethod("rowlimit", QueryPlugin.Util.getString("SystemSource.Rowlimit_desc"), MISCELLANEOUS, FUNCTION_CLASS, "rowlimit", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ new FunctionParameter[] { new FunctionParameter("element", exprType, QueryPlugin.Util.getString("SystemSource.Rowlimit_arg1")) }, //$NON-NLS-1$ //$NON-NLS-2$ new FunctionParameter("result", DataTypeManager.DefaultDataTypes.INTEGER, QueryPlugin.Util.getString("SystemSource.Rowlimit_result")) ) ); //$NON-NLS-1$ //$NON-NLS-2$ } }
private void addRowLimitExceptionFunctions() { for (String exprType : DataTypeManager.getAllDataTypeNames()) { functions.add( new FunctionMethod("rowlimitexception", QueryPlugin.Util.getString("SystemSource.RowlimitException_desc"), MISCELLANEOUS, FUNCTION_CLASS, "rowlimitexception", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ new FunctionParameter[] { new FunctionParameter("element", exprType, QueryPlugin.Util.getString("SystemSource.Rowlimit_arg1")) }, //$NON-NLS-1$ //$NON-NLS-2$ new FunctionParameter("result", DataTypeManager.DefaultDataTypes.INTEGER, QueryPlugin.Util.getString("SystemSource.Rowlimit_result")) ) ); //$NON-NLS-1$ //$NON-NLS-2$ } }
addAliasType(DataTypeManager.DataTypeAliases.TINYINT); addAliasType(DataTypeManager.DataTypeAliases.VARCHAR); for (String name : DataTypeManager.getAllDataTypeNames()) { if (!name.equals(DefaultDataTypes.NULL)) { Assertion.isNotNull(typeMap.get(name), name);
addAliasType(DataTypeManager.DataTypeAliases.TINYINT); addAliasType(DataTypeManager.DataTypeAliases.VARCHAR); for (String name : DataTypeManager.getAllDataTypeNames()) { if (!name.equals(DefaultDataTypes.NULL)) { Assertion.isNotNull(typeMap.get(name), name);
addAliasType(DataTypeManager.DataTypeAliases.TINYINT); addAliasType(DataTypeManager.DataTypeAliases.VARCHAR); for (String name : DataTypeManager.getAllDataTypeNames()) { if (!name.equals(DefaultDataTypes.NULL)) { Assertion.isNotNull(typeMap.get(name), name);
@Test public void testCheckAllConversions() { Set<String> allTypes = DataTypeManager.getAllDataTypeNames(); for (String src : allTypes) { for (String tgt : allTypes) { boolean isImplicit = DataTypeManager.isImplicitConversion(src, tgt); boolean isExplicit = DataTypeManager.isExplicitConversion(src, tgt); if(isImplicit && isExplicit) { fail("Can't be both implicit and explicit for " + src + " to " + tgt); //$NON-NLS-1$ //$NON-NLS-2$ } } } }
private void addLookupFunctions() { for (String keyValueType : DataTypeManager.getAllDataTypeNames()) { functions.add( new FunctionMethod("lookup", QueryPlugin.Util.getString("SystemSource.Lookup_desc"), MISCELLANEOUS, PushDown.CANNOT_PUSHDOWN, FUNCTION_CLASS, "lookup", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ Arrays.asList( new FunctionParameter("codetable", DataTypeManager.DefaultDataTypes.STRING, QueryPlugin.Util.getString("SystemSource.Lookup_arg1")), //$NON-NLS-1$ //$NON-NLS-2$ new FunctionParameter("returnelement", DataTypeManager.DefaultDataTypes.STRING, QueryPlugin.Util.getString("SystemSource.Lookup_arg2")), //$NON-NLS-1$ //$NON-NLS-2$ new FunctionParameter("keyelement", DataTypeManager.DefaultDataTypes.STRING, QueryPlugin.Util.getString("SystemSource.Lookup_arg3")), //$NON-NLS-1$ //$NON-NLS-2$ new FunctionParameter("keyvalue", keyValueType, QueryPlugin.Util.getString("SystemSource.Lookup_arg4")) //$NON-NLS-1$ //$NON-NLS-2$ ), new FunctionParameter("result", DataTypeManager.DefaultDataTypes.OBJECT, QueryPlugin.Util.getString("SystemSource.Lookup_result")), false, Determinism.VDB_DETERMINISTIC ) ); //$NON-NLS-1$ //$NON-NLS-2$ } }
private void addLookupFunctions() { for (String keyValueType : DataTypeManager.getAllDataTypeNames()) { functions.add( new FunctionMethod("lookup", QueryPlugin.Util.getString("SystemSource.Lookup_desc"), MISCELLANEOUS, PushDown.CANNOT_PUSHDOWN, FUNCTION_CLASS, "lookup", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ Arrays.asList( new FunctionParameter("codetable", DataTypeManager.DefaultDataTypes.STRING, QueryPlugin.Util.getString("SystemSource.Lookup_arg1")), //$NON-NLS-1$ //$NON-NLS-2$ new FunctionParameter("returnelement", DataTypeManager.DefaultDataTypes.STRING, QueryPlugin.Util.getString("SystemSource.Lookup_arg2")), //$NON-NLS-1$ //$NON-NLS-2$ new FunctionParameter("keyelement", DataTypeManager.DefaultDataTypes.STRING, QueryPlugin.Util.getString("SystemSource.Lookup_arg3")), //$NON-NLS-1$ //$NON-NLS-2$ new FunctionParameter("keyvalue", keyValueType, QueryPlugin.Util.getString("SystemSource.Lookup_arg4")) //$NON-NLS-1$ //$NON-NLS-2$ ), new FunctionParameter("result", DataTypeManager.DefaultDataTypes.OBJECT, QueryPlugin.Util.getString("SystemSource.Lookup_result")), false, Determinism.VDB_DETERMINISTIC ) ); //$NON-NLS-1$ //$NON-NLS-2$ } }
private void addLookupFunctions() { for (String keyValueType : DataTypeManager.getAllDataTypeNames()) { functions.add( new FunctionMethod("lookup", QueryPlugin.Util.getString("SystemSource.Lookup_desc"), MISCELLANEOUS, PushDown.CANNOT_PUSHDOWN, FUNCTION_CLASS, "lookup", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ Arrays.asList( new FunctionParameter("codetable", DataTypeManager.DefaultDataTypes.STRING, QueryPlugin.Util.getString("SystemSource.Lookup_arg1")), //$NON-NLS-1$ //$NON-NLS-2$ new FunctionParameter("returnelement", DataTypeManager.DefaultDataTypes.STRING, QueryPlugin.Util.getString("SystemSource.Lookup_arg2")), //$NON-NLS-1$ //$NON-NLS-2$ new FunctionParameter("keyelement", DataTypeManager.DefaultDataTypes.STRING, QueryPlugin.Util.getString("SystemSource.Lookup_arg3")), //$NON-NLS-1$ //$NON-NLS-2$ new FunctionParameter("keyvalue", keyValueType, QueryPlugin.Util.getString("SystemSource.Lookup_arg4")) //$NON-NLS-1$ //$NON-NLS-2$ ), new FunctionParameter("result", DataTypeManager.DefaultDataTypes.OBJECT, QueryPlugin.Util.getString("SystemSource.Lookup_result")), false, Determinism.VDB_DETERMINISTIC ) ); //$NON-NLS-1$ //$NON-NLS-2$ } }
@Test public void testTypeMappings() { Set<String> dataTypeNames = DataTypeManager.getAllDataTypeNames(); for (String dataTypeName : dataTypeNames) { Class<?> dataTypeClass = DataTypeManager.getDataTypeClass(dataTypeName); assertNotNull("Data type class was null for type " + dataTypeName, dataTypeClass); //$NON-NLS-1$ String dataTypeName2 = DataTypeManager.getDataTypeName(dataTypeClass); assertEquals("Name to class to name not equals: ", dataTypeName, dataTypeName2); //$NON-NLS-1$ } }
@Test public void testMetadataGenerationForAllTypes() throws Exception { Set<String> dataTypes = DataTypeManager.getAllDataTypeNames(); for (String type : dataTypes) { Class<?> typeClass = DataTypeManager.getDataTypeClass(type); MetaDataProcessor processor = new MetaDataProcessor(null, null, "vdb", 1); Map<Integer, Object> columnMetadata = processor.getDefaultColumn("t", "c", typeClass); //$NON-NLS-1$ //$NON-NLS-2$ verifyColumn(columnMetadata, type); } }
for (String type : DataTypeManager.getAllDataTypeNames()) { if (!DataTypeManager.isNonComparable(type)) { addTypedNullIfFunction(type);
for (String type : DataTypeManager.getAllDataTypeNames()) { if (!DataTypeManager.isNonComparable(type)) { addTypedNullIfFunction(type);