} else if (dtUri.equals(XSD.decimal.toString())) {
// Decimal column
return new DecimalColumn(var, nullable);
} else if (dtUri.equals(XSD.duration.toString())) {
// JDBC has no notion of durations so return as a string
return new StringColumn(var, nullable);
} else if (dtUri.equals(XSD.integer.toString()) || dtUri.equals(XSD.xint.toString())
|| dtUri.equals(XSD.xlong.toString())) {
// Integer column
return new LongIntegerColumn(var, nullable, true);
} else if (dtUri.equals(XSD.unsignedInt.toString()) || dtUri.equals(XSD.unsignedLong.toString())) {
// Unsigned Integer column
return new LongIntegerColumn(var, nullable, false);
} else if (dtUri.equals(XSD.positiveInteger.toString()) || dtUri.equals(XSD.nonNegativeInteger.toString())) {
// Unsigned Integer column
return new LongIntegerColumn(var, nullable, false);
} else if (dtUri.equals(XSD.nonPositiveInteger.toString()) || dtUri.equals(XSD.negativeInteger.toString())) {
// Signed Integer column
return new LongIntegerColumn(var, nullable, true);
} else if (dtUri.equals(XSD.xshort.toString())) {
// Short Integer column
return new IntegerColumn(var, nullable, true);
} else if (dtUri.equals(XSD.unsignedShort.toString())) {
// Unsigned Short Integer column
return new IntegerColumn(var, nullable, false);
} else if (dtUri.equals(XSD.xbyte.toString())) {
// Signed Byte
return new ByteColumn(var, nullable, true);
} else if (dtUri.equals(XSD.unsignedByte.toString())) {
// Unsigned Byte
return new ByteColumn(var, nullable, false);
} else if (dtUri.equals(XSD.time.toString())) {
// Time column
return new TimeColumn(var, nullable);
} else if (dtUri.equals(XSD.xboolean.toString())) {
// Boolean column
return new BooleanColumn(var, nullable);
} else if (dtUri.equals(XSD.xdouble.toString())) {
// Double column
return new DoubleColumn(var, nullable);
} else if (dtUri.equals(XSD.xfloat.toString())) {
// Float column
return new FloatColumn(var, nullable);
} else if (dtUri.equals(XSD.xstring.toString())) {
// String column
return new StringColumn(var, nullable);
} else {
// Anything else we'll treat as a String
return new StringColumn(var, nullable);
}
}