/**
 * This class is generated by jOOQ
 */
package info.gngr.db.tables;

/**
 * This class is generated by jOOQ.
 */
@java.lang.SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class Globals extends org.jooq.impl.TableImpl<info.gngr.db.tables.records.GlobalsRecord> {

  private static final long serialVersionUID = 418901589;

  /**
   * The reference instance of <code>PUBLIC.GLOBALS</code>
   */
  public static final info.gngr.db.tables.Globals GLOBALS = new info.gngr.db.tables.Globals();

  /**
   * The class holding records for this type
   */
  @Override
  public java.lang.Class<info.gngr.db.tables.records.GlobalsRecord> getRecordType() {
    return info.gngr.db.tables.records.GlobalsRecord.class;
  }

  /**
   * The column <code>PUBLIC.GLOBALS.NOTACOLUMN</code>.
   */
  public final org.jooq.TableField<info.gngr.db.tables.records.GlobalsRecord, java.lang.String> NOTACOLUMN = createField("NOTACOLUMN",
      org.jooq.impl.SQLDataType.CHAR.nullable(false), this, "");

  /**
   * The column <code>PUBLIC.GLOBALS.SCHEMAVERSION</code>.
   */
  public final org.jooq.TableField<info.gngr.db.tables.records.GlobalsRecord, java.lang.Integer> SCHEMAVERSION = createField(
      "SCHEMAVERSION", org.jooq.impl.SQLDataType.INTEGER.nullable(false), this, "");

  /**
   * The column <code>PUBLIC.GLOBALS.PERMISSIONSINITIALIZED</code>.
   */
  public final org.jooq.TableField<info.gngr.db.tables.records.GlobalsRecord, java.lang.Boolean> PERMISSIONSINITIALIZED = createField(
      "PERMISSIONSINITIALIZED", org.jooq.impl.SQLDataType.BOOLEAN.nullable(false).defaulted(true), this, "");

  /**
   * Create a <code>PUBLIC.GLOBALS</code> table reference
   */
  public Globals() {
    this("GLOBALS", null);
  }

  /**
   * Create an aliased <code>PUBLIC.GLOBALS</code> table reference
   */
  public Globals(final java.lang.String alias) {
    this(alias, info.gngr.db.tables.Globals.GLOBALS);
  }

  private Globals(final java.lang.String alias, final org.jooq.Table<info.gngr.db.tables.records.GlobalsRecord> aliased) {
    this(alias, aliased, null);
  }

  private Globals(final java.lang.String alias, final org.jooq.Table<info.gngr.db.tables.records.GlobalsRecord> aliased,
      final org.jooq.Field<?>[] parameters) {
    super(alias, info.gngr.db.Public.PUBLIC, aliased, parameters, "");
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public org.jooq.UniqueKey<info.gngr.db.tables.records.GlobalsRecord> getPrimaryKey() {
    return info.gngr.db.Keys.CONSTRAINT_3;
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public java.util.List<org.jooq.UniqueKey<info.gngr.db.tables.records.GlobalsRecord>> getKeys() {
    return java.util.Arrays.<org.jooq.UniqueKey<info.gngr.db.tables.records.GlobalsRecord>> asList(info.gngr.db.Keys.CONSTRAINT_3);
  }

  /**
   * {@inheritDoc}
   */
  @Override
  public info.gngr.db.tables.Globals as(final java.lang.String alias) {
    return new info.gngr.db.tables.Globals(alias, this);
  }

  /**
   * Rename this table
   */
  public info.gngr.db.tables.Globals rename(final java.lang.String name) {
    return new info.gngr.db.tables.Globals(name, null);
  }
}
