private void startInspection(PlanDS plan) { DataBase db = new DataBase(); db.removePlan(plan); Scanner scanner = new Scanner(); scanner.start(plan.path); while (scanner.getScanStatus()) { } string[] result = scanner.getScanResult().Split('\n'); if (result.Length <= 3) { return; } for (int i = 3; i < result.Length - 1; i += 1) { db.addToFoundViruses(result[i]); } }
public void removePlan(PlanDS plan) { connection.Open(); var command = connection.CreateCommand(); command.CommandText = $"DELETE FROM plans WHERE id = '{plan.id}'"; command.ExecuteScalar(); connection.Close(); }
private void checkScheduledInspections(Object source, ElapsedEventArgs e) { DataBase db = new DataBase(); List <PlanDS> plans = db.getAllPlans(); foreach (PlanDS plan in plans) { DateTime now = DateTime.Now; bool isShouldInspect = PlanDS.getTimeStringFormat(now).Equals(PlanDS.getTimeStringFormat(plan.time)); if (isShouldInspect) { Thread inspectThread = new Thread(new ThreadStart( () => this.startInspection(plan) )); inspectThread.Start(); } } }
public bool addPlan(PlanDS plan) { List <PlanDS> ps = this.getAllPlans(); foreach (PlanDS p in ps) { bool haveThisTime = PlanDS.getTimeStringFormat(p.time) == PlanDS.getTimeStringFormat(plan.time); bool haveThisPath = p.path == plan.path; if (haveThisTime && haveThisPath) { return(false); } } connection.Open(); var command = connection.CreateCommand(); command.CommandText = $"insert into plans(path, time) values(\"{plan.path}\", \"{PlanDS.getTimeStringFormat(plan.time)}\")"; command.ExecuteScalar(); connection.Close(); return(true); }
public List <PlanDS> getAllPlans() { connection.Open(); List <PlanDS> plans = new List <PlanDS>(); var command = connection.CreateCommand(); command.CommandText = $"SELECT * FROM plans"; using (var reader = command.ExecuteReader()) { while (reader.Read()) { PlanDS plan = new PlanDS( reader.GetString(1), PlanDS.getTimeFromStringFormat(reader.GetString(2)), Int32.Parse(reader.GetString(0)) ); plans.Add(plan); } } connection.Close(); return(plans); }
public System.Threading.Tasks.Task removePlanAsync(ServiceDll.PlanDS plan) { return(base.Channel.removePlanAsync(plan)); }
public void removePlan(ServiceDll.PlanDS plan) { base.Channel.removePlan(plan); }
public System.Threading.Tasks.Task <bool> addPlanAsync(ServiceDll.PlanDS plan) { return(base.Channel.addPlanAsync(plan)); }
public bool addPlan(ServiceDll.PlanDS plan) { return(base.Channel.addPlan(plan)); }
public bool addPlan(PlanDS plan) { return(Service.database.addPlan(plan)); }
public void removePlan(PlanDS plan) { Service.database.removePlan(plan); }