/**
 * This class is generated by jOOQ
 */
package com.incomb.server.model.dao.internal;

/**
 * This class is generated by jOOQ.
 */
@java.lang.SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class InternalUserNmRoleDao extends org.jooq.impl.DAOImpl<com.incomb.server.model.records.UserNmRoleRecord, com.incomb.server.model.UserNmRole, org.jooq.Record2<java.lang.Long, java.lang.Integer>> {

	/**
	 * Create a new InternalUserNmRoleDao without any configuration
	 */
	public InternalUserNmRoleDao() {
		super(com.incomb.server.model.tables.UserNmRoleTable.USER_NM_ROLE, com.incomb.server.model.UserNmRole.class);
	}

	/**
	 * Create a new InternalUserNmRoleDao with an attached configuration
	 */
	public InternalUserNmRoleDao(org.jooq.Configuration configuration) {
		super(com.incomb.server.model.tables.UserNmRoleTable.USER_NM_ROLE, com.incomb.server.model.UserNmRole.class, configuration);
	}

	/**
	 * {@inheritDoc}
	 */
	@Override
	protected org.jooq.Record2<java.lang.Long, java.lang.Integer> getId(com.incomb.server.model.UserNmRole object) {
		return compositeKeyRecord(object.getUserId(), object.getRoleId());
	}

	/**
	 * Fetch records that have <code>user_id IN (values)</code>
	 */
	public java.util.List<com.incomb.server.model.UserNmRole> fetchByUserId(java.lang.Long... values) {
		return fetch(com.incomb.server.model.tables.UserNmRoleTable.USER_NM_ROLE.USER_ID, values);
	}

	/**
	 * Fetch records that have <code>role_id IN (values)</code>
	 */
	public java.util.List<com.incomb.server.model.UserNmRole> fetchByRoleId(java.lang.Integer... values) {
		return fetch(com.incomb.server.model.tables.UserNmRoleTable.USER_NM_ROLE.ROLE_ID, values);
	}
}
