public boolean satisfy()

in tchannel-core/src/main/java/com/uber/tchannel/channels/Connection.java [74:89]


    public boolean satisfy(@Nullable ConnectionState preferredState) {
        synchronized (lock) {
            ConnectionState connState = this.state;
            if (connState == ConnectionState.DESTROYED) {
                return false;
            } else if (preferredState == null) {
                return true;
            } else if (connState == preferredState || connState == ConnectionState.IDENTIFIED) {
                return true;
            } else if (connState == ConnectionState.CONNECTED && preferredState == ConnectionState.UNCONNECTED) {
                return true;
            } else {
                return false;
            }
        }
    }