正在查看: SpeedCash v6.5.1482 应用的 EquivalentAddressGroup.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: SpeedCash v6.5.1482 应用的 EquivalentAddressGroup.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package io.grpc;
import com.google.common.base.Preconditions;
import io.grpc.Attributes;
import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.net.SocketAddress;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@ExperimentalApi("https://github.com/grpc/grpc-java/issues/1770")
public final class EquivalentAddressGroup {
@ExperimentalApi("https://github.com/grpc/grpc-java/issues/6138")
public static final Attributes.Key<String> ATTR_AUTHORITY_OVERRIDE = Attributes.Key.create("io.grpc.EquivalentAddressGroup.ATTR_AUTHORITY_OVERRIDE");
public final List<SocketAddress> a;
public final Attributes b;
public final int c;
@ExperimentalApi("https://github.com/grpc/grpc-java/issues/4972")
@Documented
@Retention(RetentionPolicy.SOURCE)
public @interface Attr {
}
public EquivalentAddressGroup(List<SocketAddress> list) {
this(list, Attributes.EMPTY);
}
public boolean equals(Object obj) {
if (!(obj instanceof EquivalentAddressGroup)) {
return false;
}
EquivalentAddressGroup equivalentAddressGroup = (EquivalentAddressGroup) obj;
if (this.a.size() != equivalentAddressGroup.a.size()) {
return false;
}
for (int i = 0; i < this.a.size(); i++) {
if (!this.a.get(i).equals(equivalentAddressGroup.a.get(i))) {
return false;
}
}
return this.b.equals(equivalentAddressGroup.b);
}
public List<SocketAddress> getAddresses() {
return this.a;
}
public Attributes getAttributes() {
return this.b;
}
public int hashCode() {
return this.c;
}
public String toString() {
return "[" + this.a + "/" + this.b + "]";
}
public EquivalentAddressGroup(List<SocketAddress> list, Attributes attributes) {
Preconditions.checkArgument(!list.isEmpty(), "addrs is empty");
List<SocketAddress> unmodifiableList = Collections.unmodifiableList(new ArrayList(list));
this.a = unmodifiableList;
this.b = (Attributes) Preconditions.checkNotNull(attributes, "attrs");
this.c = unmodifiableList.hashCode();
}
public EquivalentAddressGroup(SocketAddress socketAddress) {
this(socketAddress, Attributes.EMPTY);
}
public EquivalentAddressGroup(SocketAddress socketAddress, Attributes attributes) {
this((List<SocketAddress>) Collections.singletonList(socketAddress), attributes);
}
}