/*
 * This file is generated by jOOQ.
 */
package jj.tech.paolu.repository.jooq.tables.records;


import jj.tech.paolu.repository.jooq.tables.SysRoleResource;

import org.jooq.Field;
import org.jooq.Record2;
import org.jooq.Record3;
import org.jooq.Row3;
import org.jooq.impl.UpdatableRecordImpl;


/**
 * This class is generated by jOOQ.
 */
@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" })
public class SysRoleResourceRecord extends UpdatableRecordImpl<SysRoleResourceRecord> implements Record3<String, String, String> {

    private static final long serialVersionUID = 1L;

    /**
     * Setter for <code>yx.sys_role_resource.id</code>.
     */
    public void setId(String value) {
        set(0, value);
    }

    /**
     * Getter for <code>yx.sys_role_resource.id</code>.
     */
    public String getId() {
        return (String) get(0);
    }

    /**
     * Setter for <code>yx.sys_role_resource.roleid</code>.
     */
    public void setRoleid(String value) {
        set(1, value);
    }

    /**
     * Getter for <code>yx.sys_role_resource.roleid</code>.
     */
    public String getRoleid() {
        return (String) get(1);
    }

    /**
     * Setter for <code>yx.sys_role_resource.resid</code>.
     */
    public void setResid(String value) {
        set(2, value);
    }

    /**
     * Getter for <code>yx.sys_role_resource.resid</code>.
     */
    public String getResid() {
        return (String) get(2);
    }

    // -------------------------------------------------------------------------
    // Primary key information
    // -------------------------------------------------------------------------

    @Override
    public Record2<String, String> key() {
        return (Record2) super.key();
    }

    // -------------------------------------------------------------------------
    // Record3 type implementation
    // -------------------------------------------------------------------------

    @Override
    public Row3<String, String, String> fieldsRow() {
        return (Row3) super.fieldsRow();
    }

    @Override
    public Row3<String, String, String> valuesRow() {
        return (Row3) super.valuesRow();
    }

    @Override
    public Field<String> field1() {
        return SysRoleResource.SYS_ROLE_RESOURCE.ID;
    }

    @Override
    public Field<String> field2() {
        return SysRoleResource.SYS_ROLE_RESOURCE.ROLEID;
    }

    @Override
    public Field<String> field3() {
        return SysRoleResource.SYS_ROLE_RESOURCE.RESID;
    }

    @Override
    public String component1() {
        return getId();
    }

    @Override
    public String component2() {
        return getRoleid();
    }

    @Override
    public String component3() {
        return getResid();
    }

    @Override
    public String value1() {
        return getId();
    }

    @Override
    public String value2() {
        return getRoleid();
    }

    @Override
    public String value3() {
        return getResid();
    }

    @Override
    public SysRoleResourceRecord value1(String value) {
        setId(value);
        return this;
    }

    @Override
    public SysRoleResourceRecord value2(String value) {
        setRoleid(value);
        return this;
    }

    @Override
    public SysRoleResourceRecord value3(String value) {
        setResid(value);
        return this;
    }

    @Override
    public SysRoleResourceRecord values(String value1, String value2, String value3) {
        value1(value1);
        value2(value2);
        value3(value3);
        return this;
    }

    // -------------------------------------------------------------------------
    // Constructors
    // -------------------------------------------------------------------------

    /**
     * Create a detached SysRoleResourceRecord
     */
    public SysRoleResourceRecord() {
        super(SysRoleResource.SYS_ROLE_RESOURCE);
    }

    /**
     * Create a detached, initialised SysRoleResourceRecord
     */
    public SysRoleResourceRecord(String id, String roleid, String resid) {
        super(SysRoleResource.SYS_ROLE_RESOURCE);

        setId(id);
        setRoleid(roleid);
        setResid(resid);
        resetChangedOnNotNull();
    }

    /**
     * Create a detached, initialised SysRoleResourceRecord
     */
    public SysRoleResourceRecord(jj.tech.paolu.repository.jooq.tables.pojos.SysRoleResource value) {
        super(SysRoleResource.SYS_ROLE_RESOURCE);

        if (value != null) {
            setId(value.getId());
            setRoleid(value.getRoleid());
            setResid(value.getResid());
            resetChangedOnNotNull();
        }
    }
}
