All Downloads are FREE. Search and download functionalities are using the official Maven repository.

me.aifaq.commons.lang.exception.MessageException Maven / Gradle / Ivy

The newest version!
package me.aifaq.commons.lang.exception;

import com.google.common.collect.Maps;
import me.aifaq.commons.lang.MapUtil;

import java.util.Map;

/**
 * @author Wang Wei [[email protected]]
 * @since 11:18 2017/6/16
 */
public class MessageException extends RuntimeException {
    private final String code;
    private Object[] args;

    private Map attributes = Maps.newHashMap();

    public MessageException(String code, String message, Object... args) {
        super(message);
        this.code = code;
        this.args = args;
    }

    public String getCode() {
        return code;
    }

    public Object[] getArgs() {
        return args;
    }

    public void setArgs(Object[] args) {
        this.args = args;
    }

    public MessageException attribute(String key, Object value) {
        attributes.put(key, value);
        return this;
    }

    public MessageException attributes(Map attributes) {
        this.setAttributes(attributes);
        return this;
    }

    public  T attribute(String key) {
        return (T) MapUtil.get(attributes, key);
    }


    public Map getAttributes() {
        return attributes;
    }

    public void setAttributes(Map attributes) {
        this.attributes = attributes;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy