mirror of
https://github.com/postgres/postgres.git
synced 2025-06-09 00:01:41 -04:00
- Added a private api layer (org.postgresql.core.Base*) - Cleaned up public api (org.postgresql.PG*) - Added consistent headers and copywrite info - Removed deprecated Serialize functionality - Cleaned up imports - Moved some files to more appropriate locations Modified Files: jdbc/org/postgresql/Driver.java.in jdbc/org/postgresql/PGConnection.java jdbc/org/postgresql/PGNotification.java jdbc/org/postgresql/PGStatement.java jdbc/org/postgresql/core/Encoding.java jdbc/org/postgresql/core/Notification.java jdbc/org/postgresql/core/QueryExecutor.java jdbc/org/postgresql/core/StartupPacket.java jdbc/org/postgresql/fastpath/Fastpath.java jdbc/org/postgresql/fastpath/FastpathArg.java jdbc/org/postgresql/geometric/PGbox.java jdbc/org/postgresql/geometric/PGcircle.java jdbc/org/postgresql/geometric/PGline.java jdbc/org/postgresql/geometric/PGlseg.java jdbc/org/postgresql/geometric/PGpath.java jdbc/org/postgresql/geometric/PGpoint.java jdbc/org/postgresql/geometric/PGpolygon.java jdbc/org/postgresql/jdbc1/AbstractJdbc1Connection.java jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSetMetaData.java jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java jdbc/org/postgresql/jdbc1/Jdbc1CallableStatement.java jdbc/org/postgresql/jdbc1/Jdbc1Connection.java jdbc/org/postgresql/jdbc1/Jdbc1DatabaseMetaData.java jdbc/org/postgresql/jdbc1/Jdbc1PreparedStatement.java jdbc/org/postgresql/jdbc1/Jdbc1ResultSet.java jdbc/org/postgresql/jdbc1/Jdbc1ResultSetMetaData.java jdbc/org/postgresql/jdbc1/Jdbc1Statement.java jdbc/org/postgresql/jdbc2/AbstractJdbc2Blob.java jdbc/org/postgresql/jdbc2/AbstractJdbc2Clob.java jdbc/org/postgresql/jdbc2/AbstractJdbc2Connection.java jdbc/org/postgresql/jdbc2/AbstractJdbc2DatabaseMetaData.java jdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSet.java jdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSetMetaData.java jdbc/org/postgresql/jdbc2/AbstractJdbc2Statement.java jdbc/org/postgresql/jdbc2/Array.java jdbc/org/postgresql/jdbc2/Jdbc2CallableStatement.java jdbc/org/postgresql/jdbc2/Jdbc2Connection.java jdbc/org/postgresql/jdbc2/Jdbc2PreparedStatement.java jdbc/org/postgresql/jdbc2/Jdbc2ResultSet.java jdbc/org/postgresql/jdbc2/Jdbc2ResultSetMetaData.java jdbc/org/postgresql/jdbc2/Jdbc2Statement.java jdbc/org/postgresql/jdbc3/AbstractJdbc3ResultSet.java jdbc/org/postgresql/jdbc3/Jdbc3CallableStatement.java jdbc/org/postgresql/jdbc3/Jdbc3Connection.java jdbc/org/postgresql/jdbc3/Jdbc3PreparedStatement.java jdbc/org/postgresql/jdbc3/Jdbc3ResultSet.java jdbc/org/postgresql/jdbc3/Jdbc3ResultSetMetaData.java jdbc/org/postgresql/jdbc3/Jdbc3Statement.java jdbc/org/postgresql/largeobject/BlobInputStream.java jdbc/org/postgresql/largeobject/BlobOutputStream.java jdbc/org/postgresql/largeobject/LargeObject.java jdbc/org/postgresql/largeobject/LargeObjectManager.java jdbc/org/postgresql/test/jdbc2/Jdbc2TestSuite.java jdbc/org/postgresql/test/jdbc2/optional/BaseDataSourceTest.java jdbc/org/postgresql/util/MD5Digest.java jdbc/org/postgresql/util/MessageTranslator.java jdbc/org/postgresql/util/PGbytea.java jdbc/org/postgresql/util/PGmoney.java jdbc/org/postgresql/util/PGobject.java jdbc/org/postgresql/util/PGtokenizer.java jdbc/org/postgresql/util/PSQLException.java jdbc/org/postgresql/util/UnixCrypt.java Added Files: jdbc/org/postgresql/core/BaseConnection.java jdbc/org/postgresql/core/BaseResultSet.java jdbc/org/postgresql/core/BaseStatement.java jdbc/org/postgresql/core/Field.java jdbc/org/postgresql/core/PGStream.java Removed Files: jdbc/org/postgresql/Field.java jdbc/org/postgresql/PG_Stream.java jdbc/org/postgresql/test/jdbc2/SerializeObject.java jdbc/org/postgresql/test/jdbc2/SerializeTest.java jdbc/org/postgresql/util/Serialize.java
109 lines
1.9 KiB
Java
109 lines
1.9 KiB
Java
/*-------------------------------------------------------------------------
|
|
*
|
|
* PGmoney.java
|
|
* This implements a class that handles the PostgreSQL money and cash types
|
|
*
|
|
* Copyright (c) 2003, PostgreSQL Global Development Group
|
|
*
|
|
* IDENTIFICATION
|
|
* $Header: /cvsroot/pgsql/src/interfaces/jdbc/org/postgresql/util/Attic/PGmoney.java,v 1.5 2003/03/07 18:39:46 barry Exp $
|
|
*
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
package org.postgresql.util;
|
|
|
|
|
|
import java.io.Serializable;
|
|
import java.sql.SQLException;
|
|
|
|
public class PGmoney extends PGobject implements Serializable, Cloneable
|
|
{
|
|
/*
|
|
* The value of the field
|
|
*/
|
|
public double val;
|
|
|
|
/*
|
|
* @param value of field
|
|
*/
|
|
public PGmoney(double value)
|
|
{
|
|
this();
|
|
val = value;
|
|
}
|
|
|
|
public PGmoney(String value) throws SQLException
|
|
{
|
|
this();
|
|
setValue(value);
|
|
}
|
|
|
|
/*
|
|
* Required by the driver
|
|
*/
|
|
public PGmoney()
|
|
{
|
|
setType("money");
|
|
}
|
|
|
|
public void setValue(String s) throws SQLException
|
|
{
|
|
try
|
|
{
|
|
String s1;
|
|
boolean negative;
|
|
|
|
negative = (s.charAt(0) == '(') ;
|
|
|
|
// 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);
|
|
pos = s1.indexOf(',');
|
|
}
|
|
|
|
val = Double.valueOf(s1).doubleValue();
|
|
val = negative ? -val : val;
|
|
|
|
}
|
|
catch (NumberFormatException e)
|
|
{
|
|
throw new PSQLException("postgresql.money", e);
|
|
}
|
|
}
|
|
|
|
public boolean equals(Object obj)
|
|
{
|
|
if (obj instanceof PGmoney)
|
|
{
|
|
PGmoney p = (PGmoney)obj;
|
|
return val == p.val;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
/*
|
|
* This must be overidden to allow the object to be cloned
|
|
*/
|
|
public Object clone()
|
|
{
|
|
return new PGmoney(val);
|
|
}
|
|
|
|
public String getValue()
|
|
{
|
|
if (val < 0)
|
|
{
|
|
return "-$" + ( -val);
|
|
}
|
|
else
|
|
{
|
|
return "$" + val;
|
|
}
|
|
}
|
|
}
|