LSPProcessManager.java 文件源码

java
阅读 31 收藏 0 点赞 0 评论 0

项目:cloud-language-servers-container 作者:
synchronized LSPProcess createProcess(String wsKey, String lang, RemoteEndpoint.Basic remoteEndpoint, String ownerSessionId) throws LSPException {

        String procKey = processKey(wsKey, lang);
        String rpcType = langContexts.get(lang).getRpcType();
        String wsKeyElem[] = wsKey.split(WS_KEY_DELIMITER,3);

        disconnect(lang, ownerSessionId);
        LSPProcess lspProcess = new LSPProcess(wsKeyElem, lang, langContexts.get(lang).getProcessBuilder(wsKeyElem), remoteEndpoint, ownerSessionId);
        switch(rpcType) {
        case ENV_IPC_SOCKET:
            socketEnv(lspProcess, LangServerCtx.LangPrefix(lang));
            break;
        case ENV_IPC_PIPES:
            pipeEnv(lspProcess, LangServerCtx.LangPrefix(lang));
            break;
        case ENV_IPC_CLIENT:
            clientSocketEnv(lspProcess, LangServerCtx.LangPrefix(lang));
            break;
        default:
            streamEnv(lspProcess);
        }
        lspProcesses.put(procKey, lspProcess);
        return lspProcess;
    }
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号