导航菜单

页面标题

页面副标题

SpeedCash v6.5.1482 - ConnectivityStateInfo.java 源代码

正在查看: SpeedCash v6.5.1482 应用的 ConnectivityStateInfo.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package io.grpc;

import com.google.common.base.Preconditions;

@ExperimentalApi("https://github.com/grpc/grpc-java/issues/1771")
public final class ConnectivityStateInfo {
    public final ConnectivityState a;
    public final Status b;

    public ConnectivityStateInfo(ConnectivityState connectivityState, Status status) {
        this.a = (ConnectivityState) Preconditions.checkNotNull(connectivityState, "state is null");
        this.b = (Status) Preconditions.checkNotNull(status, "status is null");
    }

    public static ConnectivityStateInfo forNonError(ConnectivityState connectivityState) {
        Preconditions.checkArgument(connectivityState != ConnectivityState.TRANSIENT_FAILURE, "state is TRANSIENT_ERROR. Use forError() instead");
        return new ConnectivityStateInfo(connectivityState, Status.OK);
    }

    public static ConnectivityStateInfo forTransientFailure(Status status) {
        Preconditions.checkArgument(!status.isOk(), "The error status must not be OK");
        return new ConnectivityStateInfo(ConnectivityState.TRANSIENT_FAILURE, status);
    }

    public boolean equals(Object obj) {
        if (!(obj instanceof ConnectivityStateInfo)) {
            return false;
        }
        ConnectivityStateInfo connectivityStateInfo = (ConnectivityStateInfo) obj;
        return this.a.equals(connectivityStateInfo.a) && this.b.equals(connectivityStateInfo.b);
    }

    public ConnectivityState getState() {
        return this.a;
    }

    public Status getStatus() {
        return this.b;
    }

    public int hashCode() {
        return this.a.hashCode() ^ this.b.hashCode();
    }

    public String toString() {
        if (this.b.isOk()) {
            return this.a.toString();
        }
        return this.a + "(" + this.b + ")";
    }
}