class ProviderInfo implements Serializable {

    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }

        ProviderInfo that = (ProviderInfo) o;

        if (port != that.port) {
            return false;
        }
        if (rpcVersion != that.rpcVersion) {
            return false;
        }
        if (protocolType != null ? !protocolType.equals(that.protocolType) : that.protocolType != null) {
            return false;
        }
        if (host != null ? !host.equals(that.host) : that.host != null) {
            return false;
        }
        if (path != null ? !path.equals(that.path) : that.path != null) {
            return false;
        }
        if (serializationType != null ? !serializationType.equals(that.serializationType)
            : that.serializationType != null) {
            return false;
        }
        // return staticAttrs != null ? staticAttrs.equals(that.staticAttrs) : that.staticAttrs == null;
        return true;
    }

    public  ProviderInfo();
    public  ProviderInfo(String host, int port);
    public  ProviderInfo(String host, int port, String originUrl);

}