summaryrefslogtreecommitdiff
path: root/src/interfaces/jdbc/org/postgresql/util/PGmoney.java
diff options
context:
space:
mode:
authorPeter Mount <peter@retep.org.uk>2001-02-13 16:39:06 +0000
committerPeter Mount <peter@retep.org.uk>2001-02-13 16:39:06 +0000
commit3d21bf82c3e27396bd3598810cbcc6f7cdc05adf (patch)
tree0701214cf100311bc15314ae39a3ece1667729e9 /src/interfaces/jdbc/org/postgresql/util/PGmoney.java
parent2410963e8cc6272022c0a556a3fd3c9a3bd617e9 (diff)
downloadpostgresql-3d21bf82c3e27396bd3598810cbcc6f7cdc05adf.tar.gz
Some more including the patch to DatabaseMetaData backed out by Bruce.
Tue Feb 13 16:33:00 GMT 2001 peter@retep.org.uk - More TestCases implemented. Refined the test suite api's. - Removed need for SimpleDateFormat in ResultSet.getDate() improving performance. - Rewrote ResultSet.getTime() so that it uses JDK api's better. Tue Feb 13 10:25:00 GMT 2001 peter@retep.org.uk - Added MiscTest to hold reported problems from users. - Fixed PGMoney. - JBuilder4/JDBCExplorer now works with Money fields. Patched Field & ResultSet (lots of methods) for this one. Also changed cash/money to return type DOUBLE not DECIMAL. This broke JBuilder as zero scale BigDecimal's can't have decimal places! - When a Statement is reused, the previous ResultSet is now closed. - Removed deprecated call in ResultSet.getTime() Thu Feb 08 18:53:00 GMT 2001 peter@retep.org.uk - Changed a couple of settings in DatabaseMetaData where 7.1 now supports those features - Implemented the DatabaseMetaData TestCase. Wed Feb 07 18:06:00 GMT 2001 peter@retep.org.uk - Added comment to Connection.isClosed() explaining why we deviate from the JDBC2 specification. - Fixed bug where the Isolation Level is lost while in autocommit mode. - Fixed bug where several calls to getTransactionIsolationLevel() returned the first call's result.
Diffstat (limited to 'src/interfaces/jdbc/org/postgresql/util/PGmoney.java')
-rw-r--r--src/interfaces/jdbc/org/postgresql/util/PGmoney.java22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/interfaces/jdbc/org/postgresql/util/PGmoney.java b/src/interfaces/jdbc/org/postgresql/util/PGmoney.java
index 99264345e1..ef71e15666 100644
--- a/src/interfaces/jdbc/org/postgresql/util/PGmoney.java
+++ b/src/interfaces/jdbc/org/postgresql/util/PGmoney.java
@@ -12,7 +12,7 @@ public class PGmoney extends PGobject implements Serializable,Cloneable
* The value of the field
*/
public double val;
-
+
/**
* @param value of field
*/
@@ -20,7 +20,7 @@ public class PGmoney extends PGobject implements Serializable,Cloneable
this();
val = value;
}
-
+
/**
* This is called mainly from the other geometric types, when a
* point is imbeded within their definition.
@@ -32,7 +32,7 @@ public class PGmoney extends PGobject implements Serializable,Cloneable
this();
setValue(value);
}
-
+
/**
* Required by the driver
*/
@@ -40,7 +40,7 @@ public class PGmoney extends PGobject implements Serializable,Cloneable
{
setType("money");
}
-
+
/**
* @param s Definition of this point in PostgreSQL's syntax
* @exception SQLException on conversion failure
@@ -51,10 +51,12 @@ public class PGmoney extends PGobject implements Serializable,Cloneable
String s1;
boolean negative;
- negative = (s.charAt(0) == '-') ;
+ negative = (s.charAt(0) == '(') ;
- s1 = s.substring(negative ? 2 : 1);
-
+ // Remove any () (for negative) & currency symbol
+ s1 = PGtokenizer.removePara(s).substring(1);
+
+ // Strip out any , in currency
int pos = s1.indexOf(',');
while (pos != -1) {
s1 = s1.substring(0,pos) + s1.substring(pos +1);
@@ -68,7 +70,7 @@ public class PGmoney extends PGobject implements Serializable,Cloneable
throw new PSQLException("postgresql.money",e);
}
}
-
+
/**
* @param obj Object to compare with
* @return true if the two boxes are identical
@@ -81,7 +83,7 @@ public class PGmoney extends PGobject implements Serializable,Cloneable
}
return false;
}
-
+
/**
* This must be overidden to allow the object to be cloned
*/
@@ -89,7 +91,7 @@ public class PGmoney extends PGobject implements Serializable,Cloneable
{
return new PGmoney(val);
}
-
+
/**
* @return the PGpoint in the syntax expected by org.postgresql
*/