package com.aipo.orm.model.account.auto;

import java.util.Date;
import java.util.List;

import org.apache.cayenne.CayenneDataObject;

import com.aipo.orm.model.account.EipTAclPortletFeature;
import com.aipo.orm.model.account.EipTAclUserRoleMap;

/**
 * Class _EipTAclRole was generated by Cayenne.
 * It is probably a good idea to avoid changing this class manually,
 * since it may be overwritten next time code is regenerated.
 * If you need to make any customizations, please use subclass.
 */
public abstract class _EipTAclRole extends CayenneDataObject {

    public static final String ACL_TYPE_PROPERTY = "aclType";
    public static final String CREATE_DATE_PROPERTY = "createDate";
    public static final String FEATURE_ID_PROPERTY = "featureId";
    public static final String NOTE_PROPERTY = "note";
    public static final String ROLE_NAME_PROPERTY = "roleName";
    public static final String UPDATE_DATE_PROPERTY = "updateDate";
    public static final String EIP_TACL_PORTLET_FEATURE_PROPERTY = "eipTAclPortletFeature";
    public static final String EIP_TACL_USER_ROLE_MAPS_PROPERTY = "eipTAclUserRoleMaps";

    public static final String ROLE_ID_PK_COLUMN = "ROLE_ID";

    public void setAclType(Integer aclType) {
        writeProperty("aclType", aclType);
    }
    public Integer getAclType() {
        return (Integer)readProperty("aclType");
    }

    public void setCreateDate(Date createDate) {
        writeProperty("createDate", createDate);
    }
    public Date getCreateDate() {
        return (Date)readProperty("createDate");
    }

    public void setFeatureId(Integer featureId) {
        writeProperty("featureId", featureId);
    }
    public Integer getFeatureId() {
        return (Integer)readProperty("featureId");
    }

    public void setNote(String note) {
        writeProperty("note", note);
    }
    public String getNote() {
        return (String)readProperty("note");
    }

    public void setRoleName(String roleName) {
        writeProperty("roleName", roleName);
    }
    public String getRoleName() {
        return (String)readProperty("roleName");
    }

    public void setUpdateDate(Date updateDate) {
        writeProperty("updateDate", updateDate);
    }
    public Date getUpdateDate() {
        return (Date)readProperty("updateDate");
    }

    public void setEipTAclPortletFeature(EipTAclPortletFeature eipTAclPortletFeature) {
        setToOneTarget("eipTAclPortletFeature", eipTAclPortletFeature, true);
    }

    public EipTAclPortletFeature getEipTAclPortletFeature() {
        return (EipTAclPortletFeature)readProperty("eipTAclPortletFeature");
    }


    public void addToEipTAclUserRoleMaps(EipTAclUserRoleMap obj) {
        addToManyTarget("eipTAclUserRoleMaps", obj, true);
    }
    public void removeFromEipTAclUserRoleMaps(EipTAclUserRoleMap obj) {
        removeToManyTarget("eipTAclUserRoleMaps", obj, true);
    }
    @SuppressWarnings("unchecked")
    public List<EipTAclUserRoleMap> getEipTAclUserRoleMaps() {
        return (List<EipTAclUserRoleMap>)readProperty("eipTAclUserRoleMaps");
    }


}
