From: <one...@us...> - 2003-02-01 12:22:38
|
Update of /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/dialect In directory sc8-pr-cvs1:/tmp/cvs-serv29855/src/net/sf/hibernate/dialect Modified Files: Dialect.java OracleDialect.java SAPDBDialect.java Log Message: applied decode support patch by Simon Harris Index: Dialect.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/dialect/Dialect.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** Dialect.java 26 Jan 2003 01:33:35 -0000 1.6 --- Dialect.java 1 Feb 2003 12:22:35 -0000 1.7 *************** *** 8,12 **** --- 8,14 ---- import net.sf.hibernate.cfg.Environment; + import net.sf.hibernate.sql.ANSICaseFragment; import net.sf.hibernate.sql.ANSIOuterJoinFragment; + import net.sf.hibernate.sql.CaseFragment; import net.sf.hibernate.sql.OuterJoinFragment; import net.sf.hibernate.util.ReflectHelper; *************** *** 318,326 **** /** ! * Get the <tt>OuterJoinGenerator</tt> need to implement outer joins for this dialect. * @return OuterJoinGenerator */ public OuterJoinFragment createOuterJoinFragment() { return new ANSIOuterJoinFragment(); } --- 320,336 ---- /** ! * Create an <tt>OuterJoinGenerator</tt> for this dialect. * @return OuterJoinGenerator */ public OuterJoinFragment createOuterJoinFragment() { return new ANSIOuterJoinFragment(); + } + + /** + * Create a <tt>CaseFragment</tt> for this dialect. + * @return OuterJoinGenerator + */ + public CaseFragment createCaseFragment() { + return new ANSICaseFragment(); } Index: OracleDialect.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/dialect/OracleDialect.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** OracleDialect.java 26 Jan 2003 01:33:35 -0000 1.6 --- OracleDialect.java 1 Feb 2003 12:22:35 -0000 1.7 *************** *** 2,69 **** package net.sf.hibernate.dialect; ! import java.sql.Types; ! ! import net.sf.hibernate.cfg.Environment; import net.sf.hibernate.sql.OracleOuterJoinFragment; import net.sf.hibernate.sql.OuterJoinFragment; /** ! * An SQL dialect for Oracle. */ ! ! public class OracleDialect extends Dialect { public OracleDialect() { super(); ! register( Types.BIT, "NUMBER(1,0)" ); ! register( Types.BIGINT, "NUMBER(19,0)" ); ! register( Types.SMALLINT, "NUMBER(5,0)" ); ! register( Types.TINYINT, "NUMBER(3,0)" ); ! register( Types.INTEGER, "NUMBER(10,0)" ); ! register( Types.CHAR, "CHAR(1)" ); ! register( Types.VARCHAR, "VARCHAR2($l)" ); ! register( Types.FLOAT, "FLOAT" ); ! register( Types.DOUBLE, "DOUBLE PRECISION" ); ! register( Types.DATE, "DATE" ); ! register( Types.TIME, "DATE" ); ! register( Types.TIMESTAMP, "DATE" ); ! register( Types.VARBINARY, "RAW($l)" ); ! register( Types.NUMERIC, "NUMBER(19, $l)" ); ! register( Types.BLOB, "BLOB" ); ! register( Types.CLOB, "CLOB" ); ! ! getDefaultProperties().setProperty(Environment.USE_STREAMS_FOR_BINARY, "true"); ! getDefaultProperties().setProperty(Environment.STATEMENT_BATCH_SIZE, DEFAULT_BATCH_SIZE); ! getDefaultProperties().setProperty(Environment.OUTER_JOIN, "true"); ! } ! ! public String getAddColumnString() { ! return "add"; ! } ! ! public String getSequenceNextValString(String sequenceName) { ! return "select " + sequenceName + ".nextval from dual"; ! } ! public String getCreateSequenceString(String sequenceName) { ! return "create sequence " + sequenceName; ! } ! public String getDropSequenceString(String sequenceName) { ! return "drop sequence " + sequenceName; ! } ! ! public String getCascadeConstraintsString() { ! return " cascade constraints"; ! } ! public OuterJoinFragment createOuterJoinFragment() { return new OracleOuterJoinFragment(); } ! ! public boolean supportsForUpdateNowait() { ! return true; ! } ! ! public boolean supportsSequences() { ! return true; } --- 2,23 ---- package net.sf.hibernate.dialect; ! import net.sf.hibernate.sql.CaseFragment; ! import net.sf.hibernate.sql.DecodeCaseFragment; import net.sf.hibernate.sql.OracleOuterJoinFragment; import net.sf.hibernate.sql.OuterJoinFragment; /** ! * An SQL dialect for Oracle, compatible with Oracle 8. */ ! public class OracleDialect extends Oracle9Dialect { public OracleDialect() { super(); ! } public OuterJoinFragment createOuterJoinFragment() { return new OracleOuterJoinFragment(); } ! public CaseFragment createCaseFragment() { ! return new DecodeCaseFragment(); } Index: SAPDBDialect.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/dialect/SAPDBDialect.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** SAPDBDialect.java 26 Jan 2003 01:33:35 -0000 1.6 --- SAPDBDialect.java 1 Feb 2003 12:22:35 -0000 1.7 *************** *** 6,9 **** --- 6,11 ---- import net.sf.hibernate.cfg.Environment; + import net.sf.hibernate.sql.CaseFragment; + import net.sf.hibernate.sql.DecodeCaseFragment; import net.sf.hibernate.sql.OracleOuterJoinFragment; import net.sf.hibernate.sql.OuterJoinFragment; *************** *** 97,100 **** --- 99,106 ---- public boolean supportsSequences() { return true; + } + + public CaseFragment createCaseFragment() { + return new DecodeCaseFragment(); } |