private void internalInitialize() { final WorkspaceImpl workspace = appContext.getWorkspace(); final RuntimeImpl runtime = workspace.getRuntime(); if (runtime == null) { return; // workspace is stopped } wsAgentServerUtil .getWsAgentWebSocketServer() .ifPresent( server -> { String wsAgentWebSocketUrl = agentURLModifier.modify(server.getUrl()); String separator = wsAgentWebSocketUrl.contains("?") ? "&" : "?"; Optional<String> applicationWebSocketId = appContext.getApplicationId(); String queryParams = applicationWebSocketId.map(id -> separator + "clientId=" + id).orElse(""); initializer.initialize( WS_AGENT_JSON_RPC_ENDPOINT_ID, singletonMap("url", wsAgentWebSocketUrl + queryParams), emptySet()); }); } }