1 package org.apache.torque.engine.platform;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 import org.apache.torque.engine.database.model.Domain;
20 import org.apache.torque.engine.database.model.SchemaType;
21
22 /***
23 * Oracle Platform implementation.
24 *
25 * @author <a href="mailto:mpoeschl@marmot.at">Martin Poeschl</a>
26 * @version $Id: PlatformOracleImpl.java 239626 2005-08-24 12:19:51Z henning $
27 */
28 public class PlatformOracleImpl extends PlatformDefaultImpl
29 {
30 /***
31 * Default constructor.
32 */
33 public PlatformOracleImpl()
34 {
35 super();
36 initialize();
37 }
38
39 /***
40 * Initializes db specific domain mapping.
41 */
42 private void initialize()
43 {
44 setSchemaDomainMapping(new Domain(SchemaType.TINYINT, "NUMBER", "3", "0"));
45 setSchemaDomainMapping(new Domain(SchemaType.SMALLINT, "NUMBER", "5", "0"));
46 setSchemaDomainMapping(new Domain(SchemaType.INTEGER, "NUMBER", "10", "0"));
47 setSchemaDomainMapping(new Domain(SchemaType.BOOLEANINT, "NUMBER", "1", "0"));
48 setSchemaDomainMapping(new Domain(SchemaType.BIGINT, "NUMBER", "20", "0"));
49 setSchemaDomainMapping(new Domain(SchemaType.REAL, "NUMBER"));
50 setSchemaDomainMapping(new Domain(SchemaType.DOUBLE, "FLOAT"));
51 setSchemaDomainMapping(new Domain(SchemaType.DECIMAL, "NUMBER"));
52 setSchemaDomainMapping(new Domain(SchemaType.NUMERIC, "NUMBER"));
53 setSchemaDomainMapping(new Domain(SchemaType.VARCHAR, "VARCHAR2"));
54 setSchemaDomainMapping(new Domain(SchemaType.LONGVARCHAR, "VARCHAR2", "2000"));
55 setSchemaDomainMapping(new Domain(SchemaType.TIME, "DATE"));
56 setSchemaDomainMapping(new Domain(SchemaType.TIMESTAMP, "TIMESTAMP"));
57 setSchemaDomainMapping(new Domain(SchemaType.BINARY, "LONG RAW"));
58 setSchemaDomainMapping(new Domain(SchemaType.VARBINARY, "BLOB"));
59 setSchemaDomainMapping(new Domain(SchemaType.LONGVARBINARY, "LONG RAW"));
60 }
61
62 /***
63 * @see Platform#getMaxColumnNameLength()
64 */
65 public int getMaxColumnNameLength()
66 {
67 return 30;
68 }
69
70 /***
71 * @see Platform#getNativeIdMethod()
72 */
73 public String getNativeIdMethod()
74 {
75 return Platform.SEQUENCE;
76 }
77
78 /***
79 * @see Platform#getAutoIncrement()
80 */
81 public String getAutoIncrement()
82 {
83 return "";
84 }
85 }