Exemplo n.º 1
0
 private void checkStatusAlert(StatusRegisterBitAlert alert, StatusRegisterBit bit, StatusRegister register, RegisterFeedback feedback)
 {
     var isBitSet = bit.IsBitSet(register, feedback);
     var alarmAlerted = alert.Alerted;
     if (bit.ActiveType == ActiveType.ActiveHigh)
     {
         if (!alarmAlerted && isBitSet)
         {
             alert.Alerted = true;
             m_context.SaveChanges();
             sendEmail(alert.EmailSubject, buildStatusBody(alert, bit, register), alert.getEmailsList());
         }
         else if (alarmAlerted && !isBitSet)
         {
             alert.Alerted = false;
             m_context.SaveChanges();
             sendEmail(alert.EmailSubject, buildStatusBody(alert, bit, register), alert.getEmailsList());
         }
     }
     else if (bit.ActiveType == ActiveType.ActiveLow)
     {
         if (!alarmAlerted && !isBitSet)
         {
             alert.Alerted = true;
             m_context.SaveChanges();
             sendEmail(alert.EmailSubject, buildStatusBody(alert, bit, register), alert.getEmailsList());
         }
         else if (alarmAlerted && isBitSet)
         {
             alert.Alerted = false;
             m_context.SaveChanges();
             sendEmail(alert.EmailSubject, buildStatusBody(alert, bit, register), alert.getEmailsList());
         }
     }
 }
Exemplo n.º 2
0
 public ActionResult EditStatusRegisterBit(StatusRegisterBit bitToEdit)
 {
     if (ModelState.IsValid)
     {
         db.Entry(bitToEdit).State = EntityState.Modified;
         db.SaveChanges();
     }
     return RedirectToAction("EditRegister", new { id = bitToEdit.RegisterId });
 }
Exemplo n.º 3
0
 private string buildStatusBody(StatusRegisterBitAlert alert, StatusRegisterBit bit, StatusRegister register)
 {
     var builder = new StringBuilder();
     if (alert.Alerted)
     {
         builder.AppendLine(alert.EmailBody);
     }
     else
     {
         builder.AppendLine("No longer in an alerted state.");
     }
     builder.AppendLine("Device: ");
     builder.AppendLine(register.Device.SerialNumber);
     builder.AppendLine("Register: ");
     builder.AppendLine(register.Alias);
     builder.AppendLine("Bit: ");
     builder.AppendLine(bit.Alias);
     return builder.ToString();
 }
Exemplo n.º 4
0
 public StatusRegisterFeedbackBitValue(RegisterFeedback feedback, StatusRegisterBit bit, StatusRegister reg)
 {
     this.Reg = reg;
     this.Feedback = feedback;
     this.Bit = bit;
     this.Value = this.Bit.IsBitSet(reg, feedback);
 }