/// <summary> /// Login to SkyResponse API /// </summary> /// <returns></returns> public async Task Login() { _accesstoken = await _userService.GetAccessToken(); if (!string.IsNullOrEmpty(_accesstoken)) { _userService.SaveUserInfo(); try { await _httpRequest.RegisterForPush(_accesstoken); } catch (HttpRequestException) { ReConnect(); return; } try { var webSocketUrl = string.Concat(WebSocketUrl, _accesstoken); _webSocket.Connect(webSocketUrl); } catch (WebSocketException) { ReConnect(); return; } _webSocket.OnMessage(OnMessageAsync); _webSocket.OnDisconnect(OnDisconnect); } }
public override StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace) { IWebSocketWrapper client = null; try { var serializer = new Dev2JsonSerializer(); var result = new List <IExecutionHistory>(); if (values == null) { throw new InvalidDataContractException(ErrorResource.NoParameter); } values.TryGetValue("ResourceId", out StringBuilder triggerID); if (triggerID != null) { client = _webSocketPool.Acquire(Config.Auditing.Endpoint).Connect(); Dev2Logger.Info("Get Execution History Data from Logger Service. " + triggerID, GlobalConstants.WarewolfInfo); var response = ""; var message = new AuditCommand { Type = "TriggerQuery", Query = values }; try { var ewh = new EventWaitHandle(false, EventResetMode.ManualReset); client.OnMessage((msgResponse, socket) => { response = msgResponse; result.AddRange(serializer.Deserialize <List <ExecutionHistory> >(response)); ewh.Set(); }); client.SendMessage(serializer.Serialize(message)); ewh.WaitOne(_waitTimeOut); return(serializer.SerializeToBuilder(result)); } catch (Exception e) { Dev2Logger.Info("Get Execution History Data ServiceError", e, GlobalConstants.WarewolfInfo); } return(serializer.SerializeToBuilder(result)); } Dev2Logger.Debug("No QueueName Provided", GlobalConstants.WarewolfDebug); return(serializer.SerializeToBuilder(new List <IExecutionHistory>())); } catch (Exception err) { Dev2Logger.Error(err, GlobalConstants.WarewolfError); throw; } finally { if (client != null) { _webSocketPool.Release(client); } } }
public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace) { IWebSocketWrapper client = null; Dev2Logger.Info("Get Log Data Service", GlobalConstants.WarewolfInfo); var serializer = new Dev2JsonSerializer(); var result = new List <Audit>(); var response = ""; var message = new AuditCommand() { Type = "LogQuery", Query = values }; try { client = _webSocketPool.Acquire(Config.Auditing.Endpoint).Connect(); var ewh = new EventWaitHandle(false, EventResetMode.ManualReset); client.OnMessage((msgResponse, socket) => { response = msgResponse; result.AddRange(serializer.Deserialize <List <Audit> >(response)); ewh.Set(); }); client.SendMessage(serializer.Serialize(message)); ewh.WaitOne(_waitTimeOut); LogDataCache.CurrentResults = result; return(serializer.SerializeToBuilder(result)); } catch (Exception e) { Dev2Logger.Info("Get Log Data ServiceError", e, GlobalConstants.WarewolfInfo); } finally { _webSocketPool.Release(client); } return(serializer.SerializeToBuilder("")); }