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 * Postgresql Platform implementation.
24 *
25 * @author <a href="mailto:mpoeschl@marmot.at">Martin Poeschl</a>
26 * @version $Id: PlatformPostgresqlImpl.java,v 1.6 2004/02/22 06:27:19 jmcnally Exp $
27 */
28 public class PlatformPostgresqlImpl extends PlatformDefaultImpl
29 {
30 /***
31 * Default constructor.
32 */
33 public PlatformPostgresqlImpl()
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.BIT, "BOOLEAN"));
45 setSchemaDomainMapping(new Domain(SchemaType.TINYINT, "INT2"));
46 setSchemaDomainMapping(new Domain(SchemaType.SMALLINT, "INT2"));
47 setSchemaDomainMapping(new Domain(SchemaType.BIGINT, "INT8"));
48 setSchemaDomainMapping(new Domain(SchemaType.REAL, "FLOAT"));
49
50 setSchemaDomainMapping(new Domain(SchemaType.BOOLEANCHAR, "CHAR"));
51
52 setSchemaDomainMapping(new Domain(SchemaType.BOOLEANINT, "INT2"));
53 setSchemaDomainMapping(new Domain(SchemaType.DOUBLE, "DOUBLE PRECISION"));
54 setSchemaDomainMapping(new Domain(SchemaType.LONGVARCHAR, "TEXT"));
55 setSchemaDomainMapping(new Domain(SchemaType.BINARY, "BYTEA"));
56 setSchemaDomainMapping(new Domain(SchemaType.VARBINARY, "BYTEA"));
57 setSchemaDomainMapping(new Domain(SchemaType.LONGVARBINARY, "BYTEA"));
58 setSchemaDomainMapping(new Domain(SchemaType.CLOB, "TEXT"));
59 }
60
61 /***
62 * @see Platform#getNativeIdMethod()
63 */
64 public String getNativeIdMethod()
65 {
66 return Platform.SEQUENCE;
67 }
68
69 /***
70 * @see Platform#getAutoIncrement()
71 */
72 public String getAutoIncrement()
73 {
74 return "";
75 }
76
77 }