package com.jstarcraft.core.resource.definition; import org.apache.commons.lang3.builder.EqualsBuilder; import org.apache.commons.lang3.builder.HashCodeBuilder; import com.jstarcraft.core.resource.format.FormatAdapter; /** * 格式定义 * * @author Birdy */ public class FormatDefinition { /** 适配器 */ private final FormatAdapter adapter; /** 名称 */ private final String name; /** 路径 */ private final String path; /** 后缀 */ private final String suffix; public FormatDefinition(FormatAdapter adapter, String name, String path, String suffix) { this.adapter = adapter; this.name = name; this.path = path; this.suffix = suffix; } public FormatAdapter getAdapter() { return adapter; } public String getName() { return name; } public String getPath() { return path; } public String getSuffix() { return suffix; } @Override public boolean equals(Object object) { if (this == object) return true; if (object == null) return false; if (getClass() != object.getClass()) return false; FormatDefinition that = (FormatDefinition) object; EqualsBuilder equal = new EqualsBuilder(); equal.append(this.name, that.name); return equal.isEquals(); } @Override public int hashCode() { HashCodeBuilder hash = new HashCodeBuilder(); hash.append(name); return hash.toHashCode(); } }