package com.hotent.base.entity;

import java.io.Serializable;
import java.util.Objects;

// 外部接口的信息
public class URIEntity implements Serializable {
        private String classURI;
        private String methodURI;
        private String function; // Controller上的功能描述
        private String moduleName; // 所在的模块
        private String description; // 接口的描述
        private String className; // 接口所在的类
        public String getClassURI() {
            return classURI;
        }

        public void setClassURI(String classURI) {
            this.classURI = classURI;
        }

        public String getMethodURI() {
            return methodURI;
        }

        public void setMethodURI(String methodURI) {
            this.methodURI = methodURI;
        }

        public String getFunction() {
            return function;
        }

        public void setFunction(String function) {
            this.function = function;
        }

        public String getModuleName() {
            return moduleName;
        }

        public void setModuleName(String moduleName) {
            this.moduleName = moduleName;
        }

        public String getDescription() {
            return description;
        }

        public void setDescription(String description) {
            this.description = description;
        }

        public String getClassName() {
            return className;
        }

        public void setClassName(String className) {
            this.className = className;
        }

    @Override
    public String toString() {
        return "{" +
                "classURI='" + classURI + '\'' +
                ", methodURI='" + methodURI + '\'' +
                ", function='" + function + '\'' +
                ", moduleName='" + moduleName + '\'' +
                ", description='" + description + '\'' +
                ", className='" + className + '\'' +
                '}';
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }
        URIEntity uriEntity = (URIEntity) o;
        return Objects.equals(classURI, uriEntity.classURI) && Objects.equals(methodURI, uriEntity.methodURI);
    }

    @Override
    public int hashCode() {
        return Objects.hash(classURI, methodURI, function, moduleName, description, className);
    }
}