/*
 * This file is generated by jOOQ.
 */
package keywhiz.jooq;


import keywhiz.jooq.tables.Accessgrants;
import keywhiz.jooq.tables.Clients;
import keywhiz.jooq.tables.DeletedAccessgrants;
import keywhiz.jooq.tables.DeletedSecrets;
import keywhiz.jooq.tables.Groups;
import keywhiz.jooq.tables.Memberships;
import keywhiz.jooq.tables.SchemaVersion;
import keywhiz.jooq.tables.Secrets;
import keywhiz.jooq.tables.SecretsContent;
import keywhiz.jooq.tables.Users;
import keywhiz.jooq.tables.records.AccessgrantsRecord;
import keywhiz.jooq.tables.records.ClientsRecord;
import keywhiz.jooq.tables.records.DeletedAccessgrantsRecord;
import keywhiz.jooq.tables.records.DeletedSecretsRecord;
import keywhiz.jooq.tables.records.GroupsRecord;
import keywhiz.jooq.tables.records.MembershipsRecord;
import keywhiz.jooq.tables.records.SchemaVersionRecord;
import keywhiz.jooq.tables.records.SecretsContentRecord;
import keywhiz.jooq.tables.records.SecretsRecord;
import keywhiz.jooq.tables.records.UsersRecord;

import org.jooq.TableField;
import org.jooq.UniqueKey;
import org.jooq.impl.DSL;
import org.jooq.impl.Internal;


/**
 * A class modelling foreign key relationships and constraints of tables in
 * keywhizdb_test.
 */
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class Keys {

    // -------------------------------------------------------------------------
    // UNIQUE and PRIMARY KEY definitions
    // -------------------------------------------------------------------------

    public static final UniqueKey<AccessgrantsRecord> KEY_ACCESSGRANTS_ACCESSGRANTS_GROUPID_SECRETID_IDX = Internal.createUniqueKey(Accessgrants.ACCESSGRANTS, DSL.name("KEY_accessgrants_accessgrants_groupid_secretid_idx"), new TableField[] { Accessgrants.ACCESSGRANTS.GROUPID, Accessgrants.ACCESSGRANTS.SECRETID }, true);
    public static final UniqueKey<AccessgrantsRecord> KEY_ACCESSGRANTS_PRIMARY = Internal.createUniqueKey(Accessgrants.ACCESSGRANTS, DSL.name("KEY_accessgrants_PRIMARY"), new TableField[] { Accessgrants.ACCESSGRANTS.ID }, true);
    public static final UniqueKey<ClientsRecord> KEY_CLIENTS_NAME = Internal.createUniqueKey(Clients.CLIENTS, DSL.name("KEY_clients_name"), new TableField[] { Clients.CLIENTS.NAME }, true);
    public static final UniqueKey<ClientsRecord> KEY_CLIENTS_PRIMARY = Internal.createUniqueKey(Clients.CLIENTS, DSL.name("KEY_clients_PRIMARY"), new TableField[] { Clients.CLIENTS.ID }, true);
    public static final UniqueKey<ClientsRecord> KEY_CLIENTS_SPIFFE_ID_UNIQUE = Internal.createUniqueKey(Clients.CLIENTS, DSL.name("KEY_clients_spiffe_id_unique"), new TableField[] { Clients.CLIENTS.SPIFFE_ID }, true);
    public static final UniqueKey<DeletedAccessgrantsRecord> KEY_DELETED_ACCESSGRANTS_PRIMARY = Internal.createUniqueKey(DeletedAccessgrants.DELETED_ACCESSGRANTS, DSL.name("KEY_deleted_accessgrants_PRIMARY"), new TableField[] { DeletedAccessgrants.DELETED_ACCESSGRANTS.ID }, true);
    public static final UniqueKey<DeletedSecretsRecord> KEY_DELETED_SECRETS_PRIMARY = Internal.createUniqueKey(DeletedSecrets.DELETED_SECRETS, DSL.name("KEY_deleted_secrets_PRIMARY"), new TableField[] { DeletedSecrets.DELETED_SECRETS.ID }, true);
    public static final UniqueKey<GroupsRecord> KEY_GROUPS_NAME = Internal.createUniqueKey(Groups.GROUPS, DSL.name("KEY_groups_name"), new TableField[] { Groups.GROUPS.NAME }, true);
    public static final UniqueKey<GroupsRecord> KEY_GROUPS_PRIMARY = Internal.createUniqueKey(Groups.GROUPS, DSL.name("KEY_groups_PRIMARY"), new TableField[] { Groups.GROUPS.ID }, true);
    public static final UniqueKey<MembershipsRecord> KEY_MEMBERSHIPS_MEMBERSHIPS_CLIENTID_GROUPID_IDX = Internal.createUniqueKey(Memberships.MEMBERSHIPS, DSL.name("KEY_memberships_memberships_clientid_groupid_idx"), new TableField[] { Memberships.MEMBERSHIPS.CLIENTID, Memberships.MEMBERSHIPS.GROUPID }, true);
    public static final UniqueKey<MembershipsRecord> KEY_MEMBERSHIPS_PRIMARY = Internal.createUniqueKey(Memberships.MEMBERSHIPS, DSL.name("KEY_memberships_PRIMARY"), new TableField[] { Memberships.MEMBERSHIPS.ID }, true);
    public static final UniqueKey<SchemaVersionRecord> KEY_SCHEMA_VERSION_PRIMARY = Internal.createUniqueKey(SchemaVersion.SCHEMA_VERSION, DSL.name("KEY_schema_version_PRIMARY"), new TableField[] { SchemaVersion.SCHEMA_VERSION.INSTALLED_RANK }, true);
    public static final UniqueKey<SecretsRecord> KEY_SECRETS_NAME = Internal.createUniqueKey(Secrets.SECRETS, DSL.name("KEY_secrets_name"), new TableField[] { Secrets.SECRETS.NAME }, true);
    public static final UniqueKey<SecretsRecord> KEY_SECRETS_PRIMARY = Internal.createUniqueKey(Secrets.SECRETS, DSL.name("KEY_secrets_PRIMARY"), new TableField[] { Secrets.SECRETS.ID }, true);
    public static final UniqueKey<SecretsContentRecord> KEY_SECRETS_CONTENT_PRIMARY = Internal.createUniqueKey(SecretsContent.SECRETS_CONTENT, DSL.name("KEY_secrets_content_PRIMARY"), new TableField[] { SecretsContent.SECRETS_CONTENT.ID }, true);
    public static final UniqueKey<UsersRecord> KEY_USERS_PRIMARY = Internal.createUniqueKey(Users.USERS, DSL.name("KEY_users_PRIMARY"), new TableField[] { Users.USERS.USERNAME }, true);
}
