1 package net.jaekl.cfb.db;
3 import static net.jaekl.cfb.db.Column.Null.*;
4 import static net.jaekl.cfb.db.Column.Type.*;
5 import net.jaekl.cfb.db.driver.DbDriver;
8 public class CfbSchema extends Schema {
9 // Define each table as follows:
12 // { column_name, type, width (-1 for default), null/not_null }
14 private static final Object[][][] TABLES = {
17 { "BUGID", INTEGER, -1, NOT_NULL },
18 { "TYPE", VARCHAR, 80, NOT_NULL },
19 { "SHORTDESCR", VARCHAR, 128, NOT_NULL },
20 { "LONGDESCR", VARCHAR, 128, NOT_NULL },
21 { "DETAILS", VARCHAR, 4096, NOT_NULL }
25 { "CATEGORYID", INTEGER, -1, NOT_NULL },
26 { "DESCRIPTION", VARCHAR, 128, NOT_NULL },
27 { "ABBREVIATION", CHAR, 1, NOT_NULL },
28 { "DETAILS", VARCHAR, 4096, NOT_NULL }
32 { "FOUNDID", INTEGER, -1, NOT_NULL },
33 { "BUGID", INTEGER, -1, NOT_NULL },
34 { "CATEGORYID", INTEGER, -1, NOT_NULL },
35 { "FIRSTLOCID", INTEGER, -1, NOT_NULL },
36 { "SECONDLOCID", INTEGER, -1, NULL },
37 { "THIRDLOCID", INTEGER, -1, NULL }
41 { "LOCID", INTEGER, -1, NOT_NULL },
42 { "CLASSNAME", VARCHAR, 256, NOT_NULL },
43 { "STARTLINE", INTEGER, -1, NULL },
44 { "ENDLINE", INTEGER, -1, NULL }
47 // Runs of FindBugs, normally one per build version
49 { "RUNID", INTEGER, -1, NOT_NULL },
50 { "VERSION", VARCHAR, 32, NULL },
51 { "STARTTIME", TIMESTAMPTZ, -1, NOT_NULL },
52 { "ENDTIME", TIMESTAMPTZ, -1, NOT_NULL }
56 public CfbSchema(DbDriver driver) {