/**
 * This class is generated by jOOQ
 */
package cleandb.information_schema.tables;

/**
 * This class is generated by jOOQ.
 */
@javax.annotation.Generated(
	value = {
		"http://www.jooq.org",
		"jOOQ version:3.5.4"
	},
	comments = "This class is generated by jOOQ"
)
@java.lang.SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class InnodbLockWaits extends org.jooq.impl.TableImpl<cleandb.information_schema.tables.records.InnodbLockWaitsRecord> {

	private static final long serialVersionUID = 484901857;

	/**
	 * The reference instance of <code>information_schema.INNODB_LOCK_WAITS</code>
	 */
	public static final cleandb.information_schema.tables.InnodbLockWaits INNODB_LOCK_WAITS = new cleandb.information_schema.tables.InnodbLockWaits();

	/**
	 * The class holding records for this type
	 */
	@Override
	public java.lang.Class<cleandb.information_schema.tables.records.InnodbLockWaitsRecord> getRecordType() {
		return cleandb.information_schema.tables.records.InnodbLockWaitsRecord.class;
	}

	/**
	 * The column <code>information_schema.INNODB_LOCK_WAITS.requesting_trx_id</code>.
	 */
	public final org.jooq.TableField<cleandb.information_schema.tables.records.InnodbLockWaitsRecord, java.lang.String> REQUESTING_TRX_ID = createField("requesting_trx_id", org.jooq.impl.SQLDataType.VARCHAR.length(18).nullable(false).defaulted(true), this, "");

	/**
	 * The column <code>information_schema.INNODB_LOCK_WAITS.requested_lock_id</code>.
	 */
	public final org.jooq.TableField<cleandb.information_schema.tables.records.InnodbLockWaitsRecord, java.lang.String> REQUESTED_LOCK_ID = createField("requested_lock_id", org.jooq.impl.SQLDataType.VARCHAR.length(81).nullable(false).defaulted(true), this, "");

	/**
	 * The column <code>information_schema.INNODB_LOCK_WAITS.blocking_trx_id</code>.
	 */
	public final org.jooq.TableField<cleandb.information_schema.tables.records.InnodbLockWaitsRecord, java.lang.String> BLOCKING_TRX_ID = createField("blocking_trx_id", org.jooq.impl.SQLDataType.VARCHAR.length(18).nullable(false).defaulted(true), this, "");

	/**
	 * The column <code>information_schema.INNODB_LOCK_WAITS.blocking_lock_id</code>.
	 */
	public final org.jooq.TableField<cleandb.information_schema.tables.records.InnodbLockWaitsRecord, java.lang.String> BLOCKING_LOCK_ID = createField("blocking_lock_id", org.jooq.impl.SQLDataType.VARCHAR.length(81).nullable(false).defaulted(true), this, "");

	/**
	 * Create a <code>information_schema.INNODB_LOCK_WAITS</code> table reference
	 */
	public InnodbLockWaits() {
		this("INNODB_LOCK_WAITS", null);
	}

	/**
	 * Create an aliased <code>information_schema.INNODB_LOCK_WAITS</code> table reference
	 */
	public InnodbLockWaits(java.lang.String alias) {
		this(alias, cleandb.information_schema.tables.InnodbLockWaits.INNODB_LOCK_WAITS);
	}

	private InnodbLockWaits(java.lang.String alias, org.jooq.Table<cleandb.information_schema.tables.records.InnodbLockWaitsRecord> aliased) {
		this(alias, aliased, null);
	}

	private InnodbLockWaits(java.lang.String alias, org.jooq.Table<cleandb.information_schema.tables.records.InnodbLockWaitsRecord> aliased, org.jooq.Field<?>[] parameters) {
		super(alias, cleandb.information_schema.InformationSchema.INFORMATION_SCHEMA, aliased, parameters, "");
	}

	/**
	 * {@inheritDoc}
	 */
	@Override
	public cleandb.information_schema.tables.InnodbLockWaits as(java.lang.String alias) {
		return new cleandb.information_schema.tables.InnodbLockWaits(alias, this);
	}

	/**
	 * Rename this table
	 */
	public cleandb.information_schema.tables.InnodbLockWaits rename(java.lang.String name) {
		return new cleandb.information_schema.tables.InnodbLockWaits(name, null);
	}
}
