/**
 * 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 Cookies extends org.jooq.impl.TableImpl<info.gngr.db.tables.records.CookiesRecord> {

  private static final long serialVersionUID = 1280147249;

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

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

  /**
   * The column <code>PUBLIC.COOKIES.HOSTNAME</code>.
   */
  public final org.jooq.TableField<info.gngr.db.tables.records.CookiesRecord, java.lang.String> HOSTNAME = createField("HOSTNAME",
      org.jooq.impl.SQLDataType.VARCHAR.length(2147483647).nullable(false), this, "");

  /**
   * The column <code>PUBLIC.COOKIES.NAME</code>.
   */
  public final org.jooq.TableField<info.gngr.db.tables.records.CookiesRecord, java.lang.String> NAME = createField("NAME",
      org.jooq.impl.SQLDataType.VARCHAR.length(2147483647).nullable(false), this, "");

  /**
   * The column <code>PUBLIC.COOKIES.VALUE</code>.
   */
  public final org.jooq.TableField<info.gngr.db.tables.records.CookiesRecord, java.lang.String> VALUE = createField("VALUE",
      org.jooq.impl.SQLDataType.VARCHAR.length(2147483647).nullable(false), this, "");

  /**
   * The column <code>PUBLIC.COOKIES.PATH</code>.
   */
  public final org.jooq.TableField<info.gngr.db.tables.records.CookiesRecord, java.lang.String> PATH = createField("PATH",
      org.jooq.impl.SQLDataType.VARCHAR.length(2147483647).nullable(false), this, "");

  /**
   * The column <code>PUBLIC.COOKIES.SECURE</code>.
   */
  public final org.jooq.TableField<info.gngr.db.tables.records.CookiesRecord, java.lang.Boolean> SECURE = createField("SECURE",
      org.jooq.impl.SQLDataType.BOOLEAN, this, "");

  /**
   * The column <code>PUBLIC.COOKIES.HTTPONLY</code>.
   */
  public final org.jooq.TableField<info.gngr.db.tables.records.CookiesRecord, java.lang.Boolean> HTTPONLY = createField("HTTPONLY",
      org.jooq.impl.SQLDataType.BOOLEAN, this, "");

  /**
   * The column <code>PUBLIC.COOKIES.CREATIONTIME</code>.
   */
  public final org.jooq.TableField<info.gngr.db.tables.records.CookiesRecord, java.lang.Long> CREATIONTIME = createField("CREATIONTIME",
      org.jooq.impl.SQLDataType.BIGINT, this, "");

  /**
   * The column <code>PUBLIC.COOKIES.EXPIRATIONTIME</code>.
   */
  public final org.jooq.TableField<info.gngr.db.tables.records.CookiesRecord, java.lang.Long> EXPIRATIONTIME = createField(
      "EXPIRATIONTIME", org.jooq.impl.SQLDataType.BIGINT, this, "");

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

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

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

  private Cookies(final java.lang.String alias, final org.jooq.Table<info.gngr.db.tables.records.CookiesRecord> 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.CookiesRecord> getPrimaryKey() {
    return info.gngr.db.Keys.CONSTRAINT_6;
  }

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

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

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