1 7 package org.enhydra.dods.editor.Doml; 8 9 import java.util.Arrays ; 10 import java.util.Collections ; 11 import java.util.List ; 12 13 import org.eclipse.emf.common.util.AbstractEnumerator; 14 15 24 public final class JdbcType extends AbstractEnumerator { 25 34 public static final int BIT = 0; 35 36 45 public static final int TINYINT = 1; 46 47 56 public static final int SMALLINT = 2; 57 58 67 public static final int INTEGER = 3; 68 69 78 public static final int BIGINT = 4; 79 80 89 public static final int REAL = 5; 90 91 100 public static final int FLOAT = 6; 101 102 111 public static final int DOUBLE = 7; 112 113 122 public static final int NUMERIC = 8; 123 124 133 public static final int DECIMAL = 9; 134 135 144 public static final int CHAR = 10; 145 146 155 public static final int VARCHAR = 11; 156 157 166 public static final int LONGVARCHAR = 12; 167 168 177 public static final int BINARY = 13; 178 179 188 public static final int VARBINARY = 14; 189 190 199 public static final int LONGVARBINARY = 15; 200 201 210 public static final int DATE = 16; 211 212 221 public static final int TIME = 17; 222 223 232 public static final int TIMESTAMP = 18; 233 234 246 public static final JdbcType BIT_LITERAL = new JdbcType(BIT, "BIT"); 247 248 260 public static final JdbcType TINYINT_LITERAL = new JdbcType(TINYINT, "TINYINT"); 261 262 274 public static final JdbcType SMALLINT_LITERAL = new JdbcType(SMALLINT, "SMALLINT"); 275 276 288 public static final JdbcType INTEGER_LITERAL = new JdbcType(INTEGER, "INTEGER"); 289 290 302 public static final JdbcType BIGINT_LITERAL = new JdbcType(BIGINT, "BIGINT"); 303 304 316 public static final JdbcType REAL_LITERAL = new JdbcType(REAL, "REAL"); 317 318 330 public static final JdbcType FLOAT_LITERAL = new JdbcType(FLOAT, "FLOAT"); 331 332 344 public static final JdbcType DOUBLE_LITERAL = new JdbcType(DOUBLE, "DOUBLE"); 345 346 358 public static final JdbcType NUMERIC_LITERAL = new JdbcType(NUMERIC, "NUMERIC"); 359 360 372 public static final JdbcType DECIMAL_LITERAL = new JdbcType(DECIMAL, "DECIMAL"); 373 374 386 public static final JdbcType CHAR_LITERAL = new JdbcType(CHAR, "CHAR"); 387 388 400 public static final JdbcType VARCHAR_LITERAL = new JdbcType(VARCHAR, "VARCHAR"); 401 402 414 public static final JdbcType LONGVARCHAR_LITERAL = new JdbcType(LONGVARCHAR, "LONGVARCHAR"); 415 416 428 public static final JdbcType BINARY_LITERAL = new JdbcType(BINARY, "BINARY"); 429 430 442 public static final JdbcType VARBINARY_LITERAL = new JdbcType(VARBINARY, "VARBINARY"); 443 444 456 public static final JdbcType LONGVARBINARY_LITERAL = new JdbcType(LONGVARBINARY, "LONGVARBINARY"); 457 458 470 public static final JdbcType DATE_LITERAL = new JdbcType(DATE, "DATE"); 471 472 484 public static final JdbcType TIME_LITERAL = new JdbcType(TIME, "TIME"); 485 486 498 public static final JdbcType TIMESTAMP_LITERAL = new JdbcType(TIMESTAMP, "TIMESTAMP"); 499 500 506 private static final JdbcType[] VALUES_ARRAY = 507 new JdbcType[] { 508 BIT_LITERAL, 509 TINYINT_LITERAL, 510 SMALLINT_LITERAL, 511 INTEGER_LITERAL, 512 BIGINT_LITERAL, 513 REAL_LITERAL, 514 FLOAT_LITERAL, 515 DOUBLE_LITERAL, 516 NUMERIC_LITERAL, 517 DECIMAL_LITERAL, 518 CHAR_LITERAL, 519 VARCHAR_LITERAL, 520 LONGVARCHAR_LITERAL, 521 BINARY_LITERAL, 522 VARBINARY_LITERAL, 523 LONGVARBINARY_LITERAL, 524 DATE_LITERAL, 525 TIME_LITERAL, 526 TIMESTAMP_LITERAL, 527 }; 528 529 535 public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); 536 537 543 public static JdbcType get(String name) { 544 for (int i = 0; i < VALUES_ARRAY.length; ++i) { 545 JdbcType result = VALUES_ARRAY[i]; 546 if (result.toString().equals(name)) { 547 return result; 548 } 549 } 550 return null; 551 } 552 553 559 public static JdbcType get(int value) { 560 switch (value) { 561 case BIT: return BIT_LITERAL; 562 case TINYINT: return TINYINT_LITERAL; 563 case SMALLINT: return SMALLINT_LITERAL; 564 case INTEGER: return INTEGER_LITERAL; 565 case BIGINT: return BIGINT_LITERAL; 566 case REAL: return REAL_LITERAL; 567 case FLOAT: return FLOAT_LITERAL; 568 case DOUBLE: return DOUBLE_LITERAL; 569 case NUMERIC: return NUMERIC_LITERAL; 570 case DECIMAL: return DECIMAL_LITERAL; 571 case CHAR: return CHAR_LITERAL; 572 case VARCHAR: return VARCHAR_LITERAL; 573 case LONGVARCHAR: return LONGVARCHAR_LITERAL; 574 case BINARY: return BINARY_LITERAL; 575 case VARBINARY: return VARBINARY_LITERAL; 576 case LONGVARBINARY: return LONGVARBINARY_LITERAL; 577 case DATE: return DATE_LITERAL; 578 case TIME: return TIME_LITERAL; 579 case TIMESTAMP: return TIMESTAMP_LITERAL; 580 } 581 return null; 582 } 583 584 590 private JdbcType(int value, String name) { 591 super(value, name); 592 } 593 594 } | Popular Tags |