EclipseLink 1.0_1.0M2 API Reference - Incubation

org.eclipse.persistence.platform.database
Class InformixPlatform

java.lang.Object
  extended by org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
      extended by org.eclipse.persistence.platform.database.DatabasePlatform
          extended by org.eclipse.persistence.platform.database.InformixPlatform

public class InformixPlatform
extends DatabasePlatform

Purpose: Provides Informix specific behaviour.

Responsibilities:

Since:
TOPLink/Java 1.0.1

Constructor Summary
InformixPlatform()
           
 
Method Summary
protected  void appendCalendar(java.util.Calendar calendar, java.io.Writer writer)
          Answer a platform correct string representation of a Calendar, suitable for SQL generation.
protected  void appendDate(java.sql.Date date, java.io.Writer writer)
          Answer a platform correct string representation of a Date, suitable for SQL generation.
protected  void appendInformixCalendar(java.util.Calendar calendar, java.io.Writer writer)
          Write a timestamp in Informix specific format ( yyyy-mm-dd hh:mm:ss.fff)
protected  void appendInformixTimestamp(java.sql.Timestamp timestamp, java.io.Writer writer)
          Write a timestamp in Informix specific format (yyyy-mm-dd hh:mm:ss.fff).
protected  void appendTime(java.sql.Time time, java.io.Writer writer)
          Answer a platform correct string representation of a Time, suitable for SQL generation.
protected  void appendTimestamp(java.sql.Timestamp timestamp, java.io.Writer writer)
          Answer a platform correct string representation of a Timestamp, suitable for SQL generation.
protected  java.util.Hashtable buildFieldTypes()
           
 ValueReadQuery buildSelectQueryForIdentity()
          INTERNAL: Build the identity query for native sequencing.
 int getMaxFieldNameSize()
          INTERNAL: returns the maximum number of characters that can be used in a field name on this platform.
 java.lang.String getSelectForUpdateString()
          Informix seems to like this syntax instead of the OF * syntax.
 boolean isInformix()
           
 boolean isInformixOuterJoin()
          Some database require outer joins to be given in the where clause, others require it in the from clause.
 java.util.Hashtable maximumNumericValues()
          Builds a table of maximum numeric values keyed on java class.
 java.util.Hashtable minimumNumericValues()
          Builds a table of minimum numeric values keyed on java class.
 void printFieldIdentityClause(java.io.Writer writer)
          Append the receiver's field serial constraint clause to a writer.
 boolean requiresProcedureCallBrackets()
          USed for sp calls.
 boolean shouldPrintConstraintNameAfter()
          Some Platforms want the constraint name after the constraint definition.
 boolean shouldPrintOuterJoinInWhereClause()
          Some database require outer joins to be given in the where clause, others require it in the from clause.
 boolean supportsIdentity()
          INTERNAL: Indicates whether the platform supports identity.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InformixPlatform

public InformixPlatform()
Method Detail

appendDate

protected void appendDate(java.sql.Date date,
                          java.io.Writer writer)
                   throws java.io.IOException
Answer a platform correct string representation of a Date, suitable for SQL generation. Native format: 'yyyy-mm-dd

Throws:
java.io.IOException

appendInformixTimestamp

protected void appendInformixTimestamp(java.sql.Timestamp timestamp,
                                       java.io.Writer writer)
                                throws java.io.IOException
Write a timestamp in Informix specific format (yyyy-mm-dd hh:mm:ss.fff).

Throws:
java.io.IOException

appendCalendar

protected void appendCalendar(java.util.Calendar calendar,
                              java.io.Writer writer)
                       throws java.io.IOException
Answer a platform correct string representation of a Calendar, suitable for SQL generation. The date is printed in the ODBC platform independent format {d'YYYY-MM-DD'}.

Throws:
java.io.IOException

appendInformixCalendar

protected void appendInformixCalendar(java.util.Calendar calendar,
                                      java.io.Writer writer)
                               throws java.io.IOException
Write a timestamp in Informix specific format ( yyyy-mm-dd hh:mm:ss.fff)

Throws:
java.io.IOException

appendTime

protected void appendTime(java.sql.Time time,
                          java.io.Writer writer)
                   throws java.io.IOException
Answer a platform correct string representation of a Time, suitable for SQL generation. The time is printed in the ODBC platform independent format {t'hh:mm:ss'}.

Throws:
java.io.IOException

appendTimestamp

protected void appendTimestamp(java.sql.Timestamp timestamp,
                               java.io.Writer writer)
                        throws java.io.IOException
Answer a platform correct string representation of a Timestamp, suitable for SQL generation. The date is printed in the ODBC platform independent format {d'YYYY-MM-DD'}.

Throws:
java.io.IOException

buildFieldTypes

protected java.util.Hashtable buildFieldTypes()

buildSelectQueryForIdentity

public ValueReadQuery buildSelectQueryForIdentity()
INTERNAL: Build the identity query for native sequencing.


getMaxFieldNameSize

public int getMaxFieldNameSize()
INTERNAL: returns the maximum number of characters that can be used in a field name on this platform.


getSelectForUpdateString

public java.lang.String getSelectForUpdateString()
Informix seems to like this syntax instead of the OF * syntax.


isInformix

public boolean isInformix()

isInformixOuterJoin

public boolean isInformixOuterJoin()
Some database require outer joins to be given in the where clause, others require it in the from clause. Informix requires it in the from clause with no ON expression.


maximumNumericValues

public java.util.Hashtable maximumNumericValues()
Builds a table of maximum numeric values keyed on java class. This is used for type testing but might also be useful to end users attempting to sanitize values.

NOTE: BigInteger & BigDecimal maximums are dependent upon their precision & Scale


minimumNumericValues

public java.util.Hashtable minimumNumericValues()
Builds a table of minimum numeric values keyed on java class. This is used for type testing but might also be useful to end users attempting to sanitize values.

NOTE: BigInteger & BigDecimal minimums are dependent upon their precision & Scale


printFieldIdentityClause

public void printFieldIdentityClause(java.io.Writer writer)
                              throws ValidationException
Append the receiver's field serial constraint clause to a writer.

Throws:
ValidationException

requiresProcedureCallBrackets

public boolean requiresProcedureCallBrackets()
USed for sp calls.


shouldPrintConstraintNameAfter

public boolean shouldPrintConstraintNameAfter()
Some Platforms want the constraint name after the constraint definition.


shouldPrintOuterJoinInWhereClause

public boolean shouldPrintOuterJoinInWhereClause()
Some database require outer joins to be given in the where clause, others require it in the from clause.


supportsIdentity

public boolean supportsIdentity()
INTERNAL: Indicates whether the platform supports identity. Informix does this through SERIAL field types. This method is to be used *ONLY* by sequencing classes


EclipseLink 1.0_1.0M2 API Reference - Incubation