private boolean preSendWebsocketCommandApi()

in src/main/java/com/alibaba/cloudapi/sdk/client/WebSocketApiClient.java [416:445]


    private boolean preSendWebsocketCommandApi(final ApiRequest apiRequest , final ApiCallback apiCallback){
        if(WebSocketApiType.REGISTER == apiRequest.getWebSocketApiType()) {
            try {
                if (null != registerLatch.getObj() && !registerLatch.getObj().await(10, TimeUnit.SECONDS)) {
                    Thread.sleep(5000);
                    close();
                    apiCallback.onFailure(apiRequest, new SdkException("WebSocket conection lost , connecting"));
                    return false;
                }
            } catch (InterruptedException ex) {
                throw new SdkException("WebSocket register failed ", ex);
            } finally {
                registerLatch.setObj(null);
            }

            if (!registerCommandSuccess.getObj()) {
                apiCallback.onFailure(null, new SdkException("Register Comand return error :" + errorMessage.getObj()));
                return false;
            }

            lastRegisterReqeust = apiRequest.duplicate();
            lastRegisterCallback = apiCallback;

        }

        apiRequest.addHeader(SdkConstant.CLOUDAPI_X_CA_WEBSOCKET_API_TYPE, apiRequest.getWebSocketApiType().toString());


        return true;
    }