public static BwwState ConvertStatus(short a)
        {
            BwwState result = BwwState.Undefined;


            switch (a)
            {
            case 1:
                result = BwwState.Open;
                break;

            case 2:
                result = BwwState.Close;
                break;

            case 3:
                result = BwwState.Error;
                break;

            default:
                result = BwwState.Undefined;
                break;
            }

            return(result);
        }
 public void InvokeStateChanged(short par_state)
 {
     bwwState = BwwFunctions.ConvertStatus(par_state);
     OnStateChange?.Invoke(par_state);
 }
Exemple #3
0
        public void WwOnMessage(BwwMessage par_message)
        {
            BwwBag b = par_message.WwBag;

            if (par_message.TransportType == BwwTransportType.Text)
            {
                BResultType r = (BResultType)b.Cmd;
                switch (r)
                {
                case BResultType.ActualMessage:
                    SwwWs_Item i = new SwwWs_Item
                    {
                        GUID     = Guid.NewGuid().ToString(),
                        Date     = DateTime.Now,
                        Caption  = b.data,
                        ClientID = b.ClientID,
                    };

                    log_list.Insert(0, i);

                    BlazorWindowHelper.BlazorTimeAnalyzer.Log();
                    StateHasChanged();
                    break;

                case BResultType.StateChange:
                    BwwState s = ((BwwState)short.Parse(b.data));
                    if (s == BwwState.Close)
                    {
                        WwClose();
                    }
                    else
                    {
                        Ws_Status = s.ToString();
                        WebWorkerHelper1.Ws_List.Single(x => x.bWebSocketID == WebWorkerHelper1.Active_WebSocket_ID).state = s;
                    }



                    StateHasChanged();
                    break;

                case BResultType.MultyPurposeItem1:
                    WsCreateInternal(b.data);
                    break;

                default:
                    break;
                }
            }
            else
            {
                BResultType r = (BResultType)b.Cmd;
                switch (r)
                {
                case BResultType.ActualMessage:
                    SwwWs_Item i = new SwwWs_Item
                    {
                        GUID     = Guid.NewGuid().ToString(),
                        Date     = DateTime.Now,
                        Caption  = Encoding.UTF8.GetString(b.binarydata) + " [" + string.Join(", ", b.binarydata.Take(100)) + "]",
                        ClientID = b.ClientID,
                    };

                    log_list.Insert(0, i);
                    BlazorWindowHelper.BlazorTimeAnalyzer.Log();
                    StateHasChanged();
                    break;

                case BResultType.StateChange:
                    WebWorkerHelper1.Ws_List.Single(x => x.bWebSocketID == WebWorkerHelper1.Active_WebSocket_ID).state = (BwwState)short.Parse(b.data);
                    break;

                default:
                    break;
                }
            }
        }