001    /**
002     * Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portal.dao.orm.hibernate;
016    
017    import com.liferay.portal.kernel.dao.orm.Type;
018    
019    import org.hibernate.type.StandardBasicTypes;
020    
021    /**
022     * @author Brian Wing Shun Chan
023     */
024    public class TypeTranslator {
025    
026            public static final org.hibernate.type.Type BIG_DECIMAL =
027                    StandardBasicTypes.BIG_DECIMAL;
028    
029            public static final org.hibernate.type.Type BIG_INTEGER =
030                    StandardBasicTypes.BIG_INTEGER;
031    
032            public static final org.hibernate.type.Type BINARY =
033                    StandardBasicTypes.BINARY;
034    
035            public static final org.hibernate.type.Type BLOB = StandardBasicTypes.BLOB;
036    
037            public static final org.hibernate.type.Type BOOLEAN =
038                    StandardBasicTypes.BOOLEAN;
039    
040            public static final org.hibernate.type.Type BYTE = StandardBasicTypes.BYTE;
041    
042            public static final org.hibernate.type.Type CALENDAR =
043                    StandardBasicTypes.CALENDAR;
044    
045            public static final org.hibernate.type.Type CALENDAR_DATE =
046                    StandardBasicTypes.CALENDAR_DATE;
047    
048            public static final org.hibernate.type.Type CHAR_ARRAY =
049                    StandardBasicTypes.CHAR_ARRAY;
050    
051            public static final org.hibernate.type.Type CHARACTER =
052                    StandardBasicTypes.CHARACTER;
053    
054            public static final org.hibernate.type.Type CHARACTER_ARRAY =
055                    StandardBasicTypes.CHARACTER_ARRAY;
056    
057            public static final org.hibernate.type.Type CLASS =
058                    StandardBasicTypes.CLASS;
059    
060            public static final org.hibernate.type.Type CLOB = StandardBasicTypes.CLOB;
061    
062            public static final org.hibernate.type.Type CURRENCY =
063                    StandardBasicTypes.CURRENCY;
064    
065            public static final org.hibernate.type.Type DATE = StandardBasicTypes.DATE;
066    
067            public static final org.hibernate.type.Type DOUBLE =
068                    StandardBasicTypes.DOUBLE;
069    
070            public static final org.hibernate.type.Type FLOAT =
071                    StandardBasicTypes.FLOAT;
072    
073            public static final org.hibernate.type.Type IMAGE =
074                    StandardBasicTypes.IMAGE;
075    
076            public static final org.hibernate.type.Type INTEGER =
077                    StandardBasicTypes.INTEGER;
078    
079            public static final org.hibernate.type.Type LOCALE =
080                    StandardBasicTypes.LOCALE;
081    
082            public static final org.hibernate.type.Type LONG = StandardBasicTypes.LONG;
083    
084            public static final org.hibernate.type.Type MATERIALIZED_BLOB =
085                    StandardBasicTypes.MATERIALIZED_BLOB;
086    
087            public static final org.hibernate.type.Type MATERIALIZED_CLOB =
088                    StandardBasicTypes.MATERIALIZED_CLOB;
089    
090            public static final org.hibernate.type.Type NUMERIC_BOOLEAN =
091                    StandardBasicTypes.NUMERIC_BOOLEAN;
092    
093            public static final org.hibernate.type.Type SERIALIZABLE =
094                    StandardBasicTypes.SERIALIZABLE;
095    
096            public static final org.hibernate.type.Type SHORT =
097                    StandardBasicTypes.SHORT;
098    
099            public static final org.hibernate.type.Type STRING =
100                    StandardBasicTypes.STRING;
101    
102            public static final org.hibernate.type.Type TEXT = StandardBasicTypes.TEXT;
103    
104            public static final org.hibernate.type.Type TIME = StandardBasicTypes.TIME;
105    
106            public static final org.hibernate.type.Type TIMESTAMP =
107                    StandardBasicTypes.TIMESTAMP;
108    
109            public static final org.hibernate.type.Type TIMEZONE =
110                    StandardBasicTypes.TIMEZONE;
111    
112            public static final org.hibernate.type.Type TRUE_FALSE =
113                    StandardBasicTypes.TRUE_FALSE;
114    
115            public static final org.hibernate.type.Type URL = StandardBasicTypes.URL;
116    
117            public static final org.hibernate.type.Type UUID_BINARY =
118                    StandardBasicTypes.UUID_BINARY;
119    
120            public static final org.hibernate.type.Type UUID_CHAR =
121                    StandardBasicTypes.UUID_CHAR;
122    
123            public static final org.hibernate.type.Type WRAPPER_BINARY =
124                    StandardBasicTypes.WRAPPER_BINARY;
125    
126            public static final org.hibernate.type.Type YES_NO =
127                    StandardBasicTypes.YES_NO;
128    
129            public static org.hibernate.type.Type translate(Type type) {
130                    if (type == Type.BIG_DECIMAL) {
131                            return BIG_DECIMAL;
132                    }
133                    else if (type == Type.BIG_INTEGER) {
134                            return BIG_INTEGER;
135                    }
136                    else if (type == Type.BINARY) {
137                            return BINARY;
138                    }
139                    else if (type == Type.BLOB) {
140                            return BLOB;
141                    }
142                    else if (type == Type.BOOLEAN) {
143                            return BOOLEAN;
144                    }
145                    else if (type == Type.BYTE) {
146                            return BYTE;
147                    }
148                    else if (type == Type.CALENDAR) {
149                            return CALENDAR;
150                    }
151                    else if (type == Type.CALENDAR_DATE) {
152                            return CALENDAR_DATE;
153                    }
154                    else if (type == Type.CHAR_ARRAY) {
155                            return CHAR_ARRAY;
156                    }
157                    else if (type == Type.CHARACTER) {
158                            return CHARACTER;
159                    }
160                    else if (type == Type.CHARACTER_ARRAY) {
161                            return CHARACTER_ARRAY;
162                    }
163                    else if (type == Type.CLASS) {
164                            return CLASS;
165                    }
166                    else if (type == Type.CLOB) {
167                            return CLOB;
168                    }
169                    else if (type == Type.CURRENCY) {
170                            return CURRENCY;
171                    }
172                    else if (type == Type.DATE) {
173                            return DATE;
174                    }
175                    else if (type == Type.DOUBLE) {
176                            return DOUBLE;
177                    }
178                    else if (type == Type.FLOAT) {
179                            return FLOAT;
180                    }
181                    else if (type == Type.IMAGE) {
182                            return IMAGE;
183                    }
184                    else if (type == Type.INTEGER) {
185                            return INTEGER;
186                    }
187                    else if (type == Type.LOCALE) {
188                            return LOCALE;
189                    }
190                    else if (type == Type.LONG) {
191                            return LONG;
192                    }
193                    else if (type == Type.MATERIALIZED_BLOB) {
194                            return MATERIALIZED_BLOB;
195                    }
196                    else if (type == Type.MATERIALIZED_CLOB) {
197                            return MATERIALIZED_CLOB;
198                    }
199                    else if (type == Type.NUMERIC_BOOLEAN) {
200                            return NUMERIC_BOOLEAN;
201                    }
202                    else if (type == Type.SERIALIZABLE) {
203                            return SERIALIZABLE;
204                    }
205                    else if (type == Type.SHORT) {
206                            return SHORT;
207                    }
208                    else if (type == Type.STRING) {
209                            return STRING;
210                    }
211                    else if (type == Type.TEXT) {
212                            return TEXT;
213                    }
214                    else if (type == Type.TIME) {
215                            return TIME;
216                    }
217                    else if (type == Type.TIMESTAMP) {
218                            return TIMESTAMP;
219                    }
220                    else if (type == Type.TIMEZONE) {
221                            return TIMEZONE;
222                    }
223                    else if (type == Type.TRUE_FALSE) {
224                            return TRUE_FALSE;
225                    }
226                    else if (type == Type.URL) {
227                            return URL;
228                    }
229                    else if (type == Type.UUID_BINARY) {
230                            return UUID_BINARY;
231                    }
232                    else if (type == Type.UUID_CHAR) {
233                            return UUID_CHAR;
234                    }
235                    else if (type == Type.WRAPPER_BINARY) {
236                            return WRAPPER_BINARY;
237                    }
238                    else if (type == Type.YES_NO) {
239                            return YES_NO;
240                    }
241                    else {
242                            return null;
243                    }
244            }
245    
246    }