package br.mp.mprj.portal.portlet.gestaomensagens.service.model;

import com.liferay.portal.kernel.util.Validator;
import com.liferay.portal.model.ModelWrapper;

import java.util.Date;
import java.util.HashMap;
import java.util.Map;

/**
 * <p>
 * This class is a wrapper for {@link MensagemWorkflow}.
 * </p>
 *
 * @author Henrique Simoes
 * @see MensagemWorkflow
 * @generated
 */
public class MensagemWorkflowWrapper implements MensagemWorkflow,
    ModelWrapper<MensagemWorkflow> {
    private MensagemWorkflow _mensagemWorkflow;

    public MensagemWorkflowWrapper(MensagemWorkflow mensagemWorkflow) {
        _mensagemWorkflow = mensagemWorkflow;
    }

    @Override
    public Class<?> getModelClass() {
        return MensagemWorkflow.class;
    }

    @Override
    public String getModelClassName() {
        return MensagemWorkflow.class.getName();
    }

    @Override
    public Map<String, Object> getModelAttributes() {
        Map<String, Object> attributes = new HashMap<String, Object>();

        attributes.put("uuid", getUuid());
        attributes.put("mensagemWorkflowId", getMensagemWorkflowId());
        attributes.put("mensagemId", getMensagemId());
        attributes.put("userId", getUserId());
        attributes.put("status", getStatus());
        attributes.put("data", getData());
        attributes.put("comentario", getComentario());

        return attributes;
    }

    @Override
    public void setModelAttributes(Map<String, Object> attributes) {
        String uuid = (String) attributes.get("uuid");

        if (uuid != null) {
            setUuid(uuid);
        }

        Long mensagemWorkflowId = (Long) attributes.get("mensagemWorkflowId");

        if (mensagemWorkflowId != null) {
            setMensagemWorkflowId(mensagemWorkflowId);
        }

        Long mensagemId = (Long) attributes.get("mensagemId");

        if (mensagemId != null) {
            setMensagemId(mensagemId);
        }

        Long userId = (Long) attributes.get("userId");

        if (userId != null) {
            setUserId(userId);
        }

        Integer status = (Integer) attributes.get("status");

        if (status != null) {
            setStatus(status);
        }

        Date data = (Date) attributes.get("data");

        if (data != null) {
            setData(data);
        }

        String comentario = (String) attributes.get("comentario");

        if (comentario != null) {
            setComentario(comentario);
        }
    }

    /**
    * Returns the primary key of this mensagem workflow.
    *
    * @return the primary key of this mensagem workflow
    */
    @Override
    public long getPrimaryKey() {
        return _mensagemWorkflow.getPrimaryKey();
    }

    /**
    * Sets the primary key of this mensagem workflow.
    *
    * @param primaryKey the primary key of this mensagem workflow
    */
    @Override
    public void setPrimaryKey(long primaryKey) {
        _mensagemWorkflow.setPrimaryKey(primaryKey);
    }

    /**
    * Returns the uuid of this mensagem workflow.
    *
    * @return the uuid of this mensagem workflow
    */
    @Override
    public java.lang.String getUuid() {
        return _mensagemWorkflow.getUuid();
    }

    /**
    * Sets the uuid of this mensagem workflow.
    *
    * @param uuid the uuid of this mensagem workflow
    */
    @Override
    public void setUuid(java.lang.String uuid) {
        _mensagemWorkflow.setUuid(uuid);
    }

    /**
    * Returns the mensagem workflow ID of this mensagem workflow.
    *
    * @return the mensagem workflow ID of this mensagem workflow
    */
    @Override
    public long getMensagemWorkflowId() {
        return _mensagemWorkflow.getMensagemWorkflowId();
    }

    /**
    * Sets the mensagem workflow ID of this mensagem workflow.
    *
    * @param mensagemWorkflowId the mensagem workflow ID of this mensagem workflow
    */
    @Override
    public void setMensagemWorkflowId(long mensagemWorkflowId) {
        _mensagemWorkflow.setMensagemWorkflowId(mensagemWorkflowId);
    }

    /**
    * Returns the mensagem ID of this mensagem workflow.
    *
    * @return the mensagem ID of this mensagem workflow
    */
    @Override
    public long getMensagemId() {
        return _mensagemWorkflow.getMensagemId();
    }

    /**
    * Sets the mensagem ID of this mensagem workflow.
    *
    * @param mensagemId the mensagem ID of this mensagem workflow
    */
    @Override
    public void setMensagemId(long mensagemId) {
        _mensagemWorkflow.setMensagemId(mensagemId);
    }

    /**
    * Returns the user ID of this mensagem workflow.
    *
    * @return the user ID of this mensagem workflow
    */
    @Override
    public long getUserId() {
        return _mensagemWorkflow.getUserId();
    }

    /**
    * Sets the user ID of this mensagem workflow.
    *
    * @param userId the user ID of this mensagem workflow
    */
    @Override
    public void setUserId(long userId) {
        _mensagemWorkflow.setUserId(userId);
    }

    /**
    * Returns the user uuid of this mensagem workflow.
    *
    * @return the user uuid of this mensagem workflow
    * @throws SystemException if a system exception occurred
    */
    @Override
    public java.lang.String getUserUuid()
        throws com.liferay.portal.kernel.exception.SystemException {
        return _mensagemWorkflow.getUserUuid();
    }

    /**
    * Sets the user uuid of this mensagem workflow.
    *
    * @param userUuid the user uuid of this mensagem workflow
    */
    @Override
    public void setUserUuid(java.lang.String userUuid) {
        _mensagemWorkflow.setUserUuid(userUuid);
    }

    /**
    * Returns the status of this mensagem workflow.
    *
    * @return the status of this mensagem workflow
    */
    @Override
    public int getStatus() {
        return _mensagemWorkflow.getStatus();
    }

    /**
    * Sets the status of this mensagem workflow.
    *
    * @param status the status of this mensagem workflow
    */
    @Override
    public void setStatus(int status) {
        _mensagemWorkflow.setStatus(status);
    }

    /**
    * Returns the data of this mensagem workflow.
    *
    * @return the data of this mensagem workflow
    */
    @Override
    public java.util.Date getData() {
        return _mensagemWorkflow.getData();
    }

    /**
    * Sets the data of this mensagem workflow.
    *
    * @param data the data of this mensagem workflow
    */
    @Override
    public void setData(java.util.Date data) {
        _mensagemWorkflow.setData(data);
    }

    /**
    * Returns the comentario of this mensagem workflow.
    *
    * @return the comentario of this mensagem workflow
    */
    @Override
    public java.lang.String getComentario() {
        return _mensagemWorkflow.getComentario();
    }

    /**
    * Sets the comentario of this mensagem workflow.
    *
    * @param comentario the comentario of this mensagem workflow
    */
    @Override
    public void setComentario(java.lang.String comentario) {
        _mensagemWorkflow.setComentario(comentario);
    }

    @Override
    public boolean isNew() {
        return _mensagemWorkflow.isNew();
    }

    @Override
    public void setNew(boolean n) {
        _mensagemWorkflow.setNew(n);
    }

    @Override
    public boolean isCachedModel() {
        return _mensagemWorkflow.isCachedModel();
    }

    @Override
    public void setCachedModel(boolean cachedModel) {
        _mensagemWorkflow.setCachedModel(cachedModel);
    }

    @Override
    public boolean isEscapedModel() {
        return _mensagemWorkflow.isEscapedModel();
    }

    @Override
    public java.io.Serializable getPrimaryKeyObj() {
        return _mensagemWorkflow.getPrimaryKeyObj();
    }

    @Override
    public void setPrimaryKeyObj(java.io.Serializable primaryKeyObj) {
        _mensagemWorkflow.setPrimaryKeyObj(primaryKeyObj);
    }

    @Override
    public com.liferay.portlet.expando.model.ExpandoBridge getExpandoBridge() {
        return _mensagemWorkflow.getExpandoBridge();
    }

    @Override
    public void setExpandoBridgeAttributes(
        com.liferay.portal.model.BaseModel<?> baseModel) {
        _mensagemWorkflow.setExpandoBridgeAttributes(baseModel);
    }

    @Override
    public void setExpandoBridgeAttributes(
        com.liferay.portlet.expando.model.ExpandoBridge expandoBridge) {
        _mensagemWorkflow.setExpandoBridgeAttributes(expandoBridge);
    }

    @Override
    public void setExpandoBridgeAttributes(
        com.liferay.portal.service.ServiceContext serviceContext) {
        _mensagemWorkflow.setExpandoBridgeAttributes(serviceContext);
    }

    @Override
    public java.lang.Object clone() {
        return new MensagemWorkflowWrapper((MensagemWorkflow) _mensagemWorkflow.clone());
    }

    @Override
    public int compareTo(
        br.mp.mprj.portal.portlet.gestaomensagens.service.model.MensagemWorkflow mensagemWorkflow) {
        return _mensagemWorkflow.compareTo(mensagemWorkflow);
    }

    @Override
    public int hashCode() {
        return _mensagemWorkflow.hashCode();
    }

    @Override
    public com.liferay.portal.model.CacheModel<br.mp.mprj.portal.portlet.gestaomensagens.service.model.MensagemWorkflow> toCacheModel() {
        return _mensagemWorkflow.toCacheModel();
    }

    @Override
    public br.mp.mprj.portal.portlet.gestaomensagens.service.model.MensagemWorkflow toEscapedModel() {
        return new MensagemWorkflowWrapper(_mensagemWorkflow.toEscapedModel());
    }

    @Override
    public br.mp.mprj.portal.portlet.gestaomensagens.service.model.MensagemWorkflow toUnescapedModel() {
        return new MensagemWorkflowWrapper(_mensagemWorkflow.toUnescapedModel());
    }

    @Override
    public java.lang.String toString() {
        return _mensagemWorkflow.toString();
    }

    @Override
    public java.lang.String toXmlString() {
        return _mensagemWorkflow.toXmlString();
    }

    @Override
    public void persist()
        throws com.liferay.portal.kernel.exception.SystemException {
        _mensagemWorkflow.persist();
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj) {
            return true;
        }

        if (!(obj instanceof MensagemWorkflowWrapper)) {
            return false;
        }

        MensagemWorkflowWrapper mensagemWorkflowWrapper = (MensagemWorkflowWrapper) obj;

        if (Validator.equals(_mensagemWorkflow,
                    mensagemWorkflowWrapper._mensagemWorkflow)) {
            return true;
        }

        return false;
    }

    /**
     * @deprecated As of 6.1.0, replaced by {@link #getWrappedModel}
     */
    public MensagemWorkflow getWrappedMensagemWorkflow() {
        return _mensagemWorkflow;
    }

    @Override
    public MensagemWorkflow getWrappedModel() {
        return _mensagemWorkflow;
    }

    @Override
    public void resetOriginalValues() {
        _mensagemWorkflow.resetOriginalValues();
    }
}
