/// <summary>
        /// Contructor for new Alert
        /// </summary>
        /// <param name="row">The culprit row</param>
        /// <param name="rule">The violated rule</param>
        /// <param name="column">The column in row containing culprit's identity</param>
        public Alert(DataRow row, Rule rule, string column)
        {
            if (rule == null || column == null || row == null)
                throw new ArgumentException("Cannot make alerts with null values");

            this.table = new DataTable();
            foreach (DataColumn col in row.Table.Columns)
                table.Columns.Add(col.ColumnName, col.DataType);
            AddRow(row);

            this.rule = rule;
            violator = row[column].ToString();
            priority = rule.priority;
        }
 /// <summary>
 /// Removes a rule from the manager
 /// </summary>
 /// <param name="rule">The rule to remove</param>
 public void RemoveRule(Rule rule)
 {
     rules.Remove(rule);
 }
 /// <summary>
 /// adds a rule to be managed, does not allow uplicates
 /// </summary>
 /// <param name="rule">The rule to attempt to add</param>
 public void AddRule(Rule rule)
 {
     if (rules.Exists(r => r.Equals(rule)))
         throw new ArgumentException("Rule Already exists");
     rules.Add(rule);
 }
Esempio n. 4
0
 public override void Act(DataRow row, Rule violated)
 {
     addAlert(row, violated);
 }
Esempio n. 5
0
 public abstract void Act(DataRow row, Rule violated);
Esempio n. 6
0
 public override void Act(DataRow row, Rule violated)
 {
     throw new NotImplementedException();
 }
Esempio n. 7
0
 public override void Act(DataRow row, Rule violated)
 {
     kill(row["SESSION_ID"],row["SESSION_SPID"]);
 }