private static void setSystemStateToDown(DateTime time, Configuration config, SparkQueue sparkQueue) { Debug.WriteLine("DOWN DOWN DOWN DOWN"); // TODO Conside doing something with an output here currentSystemState = SystemState.DOWN; timeOfLastSystemStateChange = time; numberOfHeartBeatsSinceLastStateChange = 0; MachineEvent evt = new MachineEvent { AssetID = config.AssetNumber, state = "DOWN", ticks = DateTime.Now.Ticks.ToString() }; //sparkQueue.Enqueue(@"assetID=" + config.AssetNumber + "&state=" + evt.state + "&ticks=" + evt.ticks.ToString() + "&blnNetworkUp=" + network.NetworkUp.ToString() + "&blntimeupdated=" + Program.time.TimeUpdated.ToString()); sparkQueue.Enqueue(@"assetID=" + config.AssetNumber + "&state=" + evt.state + "&ticks=" + evt.ticks.ToString()); //Thread threadRecordStateInMachineStateLog = new Thread(new ThreadStart(UpdateMachineStateOnSDCard)); //threadRecordStateInMachineStateLog.Start(); }
private static void handleHeartBeat(DateTime time, Controller controller, Configuration config, SparkQueue sparkQueue) { totalRuntimeMilliseconds += getMillisecondsSinceLastHeartBeat(time); totalNumberOfCycles++; numberOfHeartBeatsSinceLastStateChange++; timeOfLastHeartbeat = time; TimeSpan ts = time - timeOfLastHeartbeat; double totalMillisecondsSinceLastCycle = ts.Ticks / 10000.0; if (currentSystemState == SystemState.DOWN && numberOfHeartBeatsSinceLastStateChange >= config.HeartbeatsRequiredToChangeState && totalMillisecondsSinceLastCycle < (config.CycleLengthMs * 2.0)) { setSystemSateToRun(time, config, sparkQueue); } }
private static void setSystemSateToRun(DateTime time, Configuration config, SparkQueue sparkQueue) { // TODO Conside doing something with an output here Debug.WriteLine("RUN RUN RUN RUN"); currentSystemState = SystemState.RUNNING; timeOfLastSystemStateChange = time; numberOfHeartBeatsSinceLastStateChange = 0; MachineEvent evt = new MachineEvent { AssetID = config.AssetNumber, state = "RUNNING", ticks = DateTime.Now.Ticks.ToString() }; sparkQueue.Enqueue(@"assetID=" + config.AssetNumber + "&state=" + evt.state + "&ticks=" + evt.ticks.ToString()); //+ "&blnNetworkUp=" + network.NetworkUp.ToString() + "&blntimeupdated=" + Program.time.TimeUpdated.ToString()); }
private async void SetUpMisc(string strPowerOuttagePost) { sparkQueue = new SparkQueue(); sparkQueue.itializeClass().Wait(); if (strPowerOuttagePost.Length > 5) { sparkQueue.Enqueue(strPowerOuttagePost); } }