All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.dingtalk.open.app.stream.network.api.TransportProtocol Maven / Gradle / Ivy

package com.dingtalk.open.app.stream.network.api;

import java.util.HashMap;
import java.util.Map;

/**
 * @author feiyin
 * @date 2023/3/24
 */
public enum TransportProtocol {
    /**
     * websocket协议
     */
    WSS("wss", true),
    /**
     * rsocket_tcp协议
     */
    RSOCKET_TCP("rsocket", true);

    private String scheme;

    private boolean tls;

    TransportProtocol(String scheme, boolean tls) {
        this.scheme = scheme;
        this.tls = tls;
    }

    public String getScheme() {
        return scheme;
    }

    public boolean isTls() {
        return this.tls;
    }


    public static TransportProtocol parseScheme(String scheme) {
        if (scheme == null) {
            return null;
        }
        return MAPPING.get(scheme);
    }

    private final static Map MAPPING = new HashMap<>();

    static {
        for (TransportProtocol value : TransportProtocol.values()) {
            MAPPING.put(value.scheme, value);
        }
    }


}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy