Commit a263e39b authored by Bruce Momjian's avatar Bruce Momjian

Re-apply Array.java patch to new Array.java file to fix compile.

parent 2589735d
...@@ -169,11 +169,11 @@ public class Array implements java.sql.Array ...@@ -169,11 +169,11 @@ public class Array implements java.sql.Array
} }
public int getBaseType() throws SQLException { public int getBaseType() throws SQLException {
return Field.getSQLType( getBaseTypeName() ); return conn.getSQLType(getBaseTypeName());
} }
public String getBaseTypeName() throws SQLException { public String getBaseTypeName() throws SQLException {
String fType = field.getTypeName(); String fType = field.getPGType();
if( fType.charAt(0) == '_' ) if( fType.charAt(0) == '_' )
fType = fType.substring(1); fType = fType.substring(1);
return fType; return fType;
...@@ -195,12 +195,12 @@ public class Array implements java.sql.Array ...@@ -195,12 +195,12 @@ public class Array implements java.sql.Array
Object array = getArray( index, count, map ); Object array = getArray( index, count, map );
Vector rows = new Vector(); Vector rows = new Vector();
Field[] fields = new Field[2]; Field[] fields = new Field[2];
fields[0] = new Field(conn, "INDEX", field.getOID("int2"), 2); fields[0] = new Field(conn, "INDEX", conn.getOID("int2"), 2);
switch ( getBaseType() ) switch ( getBaseType() )
{ {
case Types.BIT: case Types.BIT:
boolean[] booleanArray = (boolean[]) array; boolean[] booleanArray = (boolean[]) array;
fields[1] = new Field(conn, "VALUE", field.getOID("bool"), 1); fields[1] = new Field(conn, "VALUE", conn.getOID("bool"), 1);
for( int i=0; i<booleanArray.length; i++ ) { for( int i=0; i<booleanArray.length; i++ ) {
byte[][] tuple = new byte[2][0]; byte[][] tuple = new byte[2][0];
tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index
...@@ -208,11 +208,11 @@ public class Array implements java.sql.Array ...@@ -208,11 +208,11 @@ public class Array implements java.sql.Array
rows.addElement(tuple); rows.addElement(tuple);
} }
case Types.SMALLINT: case Types.SMALLINT:
fields[1] = new Field(conn, "VALUE", field.getOID("int2"), 2); fields[1] = new Field(conn, "VALUE", conn.getOID("int2"), 2);
case Types.INTEGER: case Types.INTEGER:
int[] intArray = (int[]) array; int[] intArray = (int[]) array;
if( fields[1] == null ) if( fields[1] == null )
fields[1] = new Field(conn, "VALUE", field.getOID("int4"), 4); fields[1] = new Field(conn, "VALUE", conn.getOID("int4"), 4);
for( int i=0; i<intArray.length; i++ ) { for( int i=0; i<intArray.length; i++ ) {
byte[][] tuple = new byte[2][0]; byte[][] tuple = new byte[2][0];
tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index
...@@ -222,7 +222,7 @@ public class Array implements java.sql.Array ...@@ -222,7 +222,7 @@ public class Array implements java.sql.Array
break; break;
case Types.BIGINT: case Types.BIGINT:
long[] longArray = (long[]) array; long[] longArray = (long[]) array;
fields[1] = new Field(conn, "VALUE", field.getOID("int8"), 8); fields[1] = new Field(conn, "VALUE", conn.getOID("int8"), 8);
for( int i=0; i<longArray.length; i++ ) { for( int i=0; i<longArray.length; i++ ) {
byte[][] tuple = new byte[2][0]; byte[][] tuple = new byte[2][0];
tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index
...@@ -232,7 +232,7 @@ public class Array implements java.sql.Array ...@@ -232,7 +232,7 @@ public class Array implements java.sql.Array
break; break;
case Types.NUMERIC: case Types.NUMERIC:
BigDecimal[] bdArray = (BigDecimal[]) array; BigDecimal[] bdArray = (BigDecimal[]) array;
fields[1] = new Field(conn, "VALUE", field.getOID("numeric"), -1); fields[1] = new Field(conn, "VALUE", conn.getOID("numeric"), -1);
for( int i=0; i<bdArray.length; i++ ) { for( int i=0; i<bdArray.length; i++ ) {
byte[][] tuple = new byte[2][0]; byte[][] tuple = new byte[2][0];
tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index
...@@ -242,7 +242,7 @@ public class Array implements java.sql.Array ...@@ -242,7 +242,7 @@ public class Array implements java.sql.Array
break; break;
case Types.REAL: case Types.REAL:
float[] floatArray = (float[]) array; float[] floatArray = (float[]) array;
fields[1] = new Field(conn, "VALUE", field.getOID("float4"), 4); fields[1] = new Field(conn, "VALUE", conn.getOID("float4"), 4);
for( int i=0; i<floatArray.length; i++ ) { for( int i=0; i<floatArray.length; i++ ) {
byte[][] tuple = new byte[2][0]; byte[][] tuple = new byte[2][0];
tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index
...@@ -252,7 +252,7 @@ public class Array implements java.sql.Array ...@@ -252,7 +252,7 @@ public class Array implements java.sql.Array
break; break;
case Types.DOUBLE: case Types.DOUBLE:
double[] doubleArray = (double[]) array; double[] doubleArray = (double[]) array;
fields[1] = new Field(conn, "VALUE", field.getOID("float8"), 8); fields[1] = new Field(conn, "VALUE", conn.getOID("float8"), 8);
for( int i=0; i<doubleArray.length; i++ ) { for( int i=0; i<doubleArray.length; i++ ) {
byte[][] tuple = new byte[2][0]; byte[][] tuple = new byte[2][0];
tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index
...@@ -261,11 +261,11 @@ public class Array implements java.sql.Array ...@@ -261,11 +261,11 @@ public class Array implements java.sql.Array
} }
break; break;
case Types.CHAR: case Types.CHAR:
fields[1] = new Field(conn, "VALUE", field.getOID("char"), 1); fields[1] = new Field(conn, "VALUE", conn.getOID("char"), 1);
case Types.VARCHAR: case Types.VARCHAR:
String[] strArray = (String[]) array; String[] strArray = (String[]) array;
if( fields[1] == null ) if( fields[1] == null )
fields[1] = new Field(conn, "VALUE", field.getOID("varchar"), -1); fields[1] = new Field(conn, "VALUE", conn.getOID("varchar"), -1);
for( int i=0; i<strArray.length; i++ ) { for( int i=0; i<strArray.length; i++ ) {
byte[][] tuple = new byte[2][0]; byte[][] tuple = new byte[2][0];
tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index
...@@ -275,7 +275,7 @@ public class Array implements java.sql.Array ...@@ -275,7 +275,7 @@ public class Array implements java.sql.Array
break; break;
case Types.DATE: case Types.DATE:
java.sql.Date[] dateArray = (java.sql.Date[]) array; java.sql.Date[] dateArray = (java.sql.Date[]) array;
fields[1] = new Field(conn, "VALUE", field.getOID("date"), 4); fields[1] = new Field(conn, "VALUE", conn.getOID("date"), 4);
for( int i=0; i<dateArray.length; i++ ) { for( int i=0; i<dateArray.length; i++ ) {
byte[][] tuple = new byte[2][0]; byte[][] tuple = new byte[2][0];
tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index
...@@ -285,7 +285,7 @@ public class Array implements java.sql.Array ...@@ -285,7 +285,7 @@ public class Array implements java.sql.Array
break; break;
case Types.TIME: case Types.TIME:
java.sql.Time[] timeArray = (java.sql.Time[]) array; java.sql.Time[] timeArray = (java.sql.Time[]) array;
fields[1] = new Field(conn, "VALUE", field.getOID("time"), 8); fields[1] = new Field(conn, "VALUE", conn.getOID("time"), 8);
for( int i=0; i<timeArray.length; i++ ) { for( int i=0; i<timeArray.length; i++ ) {
byte[][] tuple = new byte[2][0]; byte[][] tuple = new byte[2][0];
tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index
...@@ -295,7 +295,7 @@ public class Array implements java.sql.Array ...@@ -295,7 +295,7 @@ public class Array implements java.sql.Array
break; break;
case Types.TIMESTAMP: case Types.TIMESTAMP:
java.sql.Timestamp[] timestampArray = (java.sql.Timestamp[]) array; java.sql.Timestamp[] timestampArray = (java.sql.Timestamp[]) array;
fields[1] = new Field(conn, "VALUE", field.getOID("timestamp"), 8); fields[1] = new Field(conn, "VALUE", conn.getOID("timestamp"), 8);
for( int i=0; i<timestampArray.length; i++ ) { for( int i=0; i<timestampArray.length; i++ ) {
byte[][] tuple = new byte[2][0]; byte[][] tuple = new byte[2][0];
tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment