1 package net.jaekl.cfb.db;
3 // Copyright (C) 2015 Christian Jaekl
5 import static net.jaekl.cfb.db.Column.Null.*;
6 import static net.jaekl.cfb.db.Column.Type.*;
7 import net.jaekl.cfb.db.driver.DbDriver;
10 public class CfbSchema extends Schema {
11 // Define each table as follows:
14 // { column_name, type, width (-1 for default), null/not_null }
16 private static final Object[][][] TABLES = {
19 { "BUGID", INTEGER, -1, NOT_NULL },
20 { "TYPE", VARCHAR, 80, NOT_NULL },
21 { "SHORTDESCR", VARCHAR, 128, NOT_NULL },
22 { "LONGDESCR", VARCHAR, 128, NOT_NULL },
23 { "DETAILS", VARCHAR, 4096, NOT_NULL }
27 { "CATEGORYID", INTEGER, -1, NOT_NULL },
28 { "DESCRIPTION", VARCHAR, 128, NOT_NULL },
29 { "ABBREVIATION", CHAR, 1, NOT_NULL },
30 { "DETAILS", VARCHAR, 4096, NOT_NULL }
34 { "FOUNDID", INTEGER, -1, NOT_NULL },
35 { "BUGID", INTEGER, -1, NOT_NULL },
36 { "CATEGORYID", INTEGER, -1, NOT_NULL },
37 { "FIRSTLOCID", INTEGER, -1, NOT_NULL },
38 { "SECONDLOCID", INTEGER, -1, NULL },
39 { "THIRDLOCID", INTEGER, -1, NULL }
43 { "LOCID", INTEGER, -1, NOT_NULL },
44 { "CLASSNAME", VARCHAR, 256, NOT_NULL },
45 { "STARTLINE", INTEGER, -1, NULL },
46 { "ENDLINE", INTEGER, -1, NULL }
49 // Runs of FindBugs, normally one per build version
51 { "RUNID", INTEGER, -1, NOT_NULL },
52 { "VERSION", VARCHAR, 32, NULL },
53 { "STARTTIME", TIMESTAMPTZ, -1, NOT_NULL },
54 { "ENDTIME", TIMESTAMPTZ, -1, NOT_NULL }
58 public CfbSchema(DbDriver driver) {