/// ----------------------------------------------------------------------------- /// <summary> /// Indexes content within the given time farame /// </summary> /// ----------------------------------------------------------------------------- internal void IndexContent() { //Index TAB META-DATA var tabIndexer = new TabIndexer(); var searchDocsCount = GetAndStoreSearchDocuments(tabIndexer); var indexedSearchDocumentCount = searchDocsCount; AddIdexingResults("Tabs Indexed", searchDocsCount); //Index MODULE META-DATA from modules that inherit from ModuleSearchBase var moduleIndexer = new ModuleIndexer(true); searchDocsCount = GetAndStoreModuleMetaData(moduleIndexer); indexedSearchDocumentCount += searchDocsCount; AddIdexingResults("Modules (Metadata) Indexed", searchDocsCount); //Index MODULE CONTENT from modules that inherit from ModuleSearchBase searchDocsCount = GetAndStoreSearchDocuments(moduleIndexer); indexedSearchDocumentCount += searchDocsCount; //Both ModuleSearchBase and ISearchable module content count AddIdexingResults("Modules (Content) Indexed", searchDocsCount); if (!HostController.Instance.GetBoolean("DisableUserCrawling", false)) { //Index User data var userIndexer = new UserIndexer(); var userIndexed = GetAndStoreSearchDocuments(userIndexer); indexedSearchDocumentCount += userIndexed; AddIdexingResults("Users", userIndexed); } SchedulerItem.AddLogNote("<br/><b>Total Items Indexed: " + indexedSearchDocumentCount + "</b>"); }
public bool Charge(UUID agentID, int amount, string text, int daysUntilNextCharge, TransactionType type, string identifer, bool chargeImmediately) { IMoneyModule moneyModule = m_registry.RequestModuleInterface<IMoneyModule>(); if (moneyModule != null) { if (chargeImmediately) { bool success = moneyModule.Charge(agentID, amount, text, type); if (!success) return false; } IScheduleService scheduler = m_registry.RequestModuleInterface<IScheduleService>(); if (scheduler != null) { OSDMap itemInfo = new OSDMap(); itemInfo.Add("AgentID", agentID); itemInfo.Add("Amount", amount); itemInfo.Add("Text", text); itemInfo.Add("Type", (int)type); SchedulerItem item = new SchedulerItem("ScheduledPayment" + identifer, OSDParser.SerializeJsonString(itemInfo), false, DateTime.UtcNow, daysUntilNextCharge, RepeatType.days, agentID); itemInfo.Add("SchedulerID", item.id); scheduler.Save(item); } } return true; }
public void SaveScheduler(SchedulerItem schedulerItem) { if (schedulerItem.ProfileId == 0) { throw new Exception("bad Email setting - is null"); } using (var cmd = GetCommand("PriceSender_SaveScheduler")) { cmd.CommandType = CommandType.StoredProcedure; cmd.AddParameter("id", schedulerItem.Id); cmd.AddParameter("groupId", schedulerItem.GroupId); cmd.AddParameter("clientId", schedulerItem.ClientId); cmd.AddParameter("email", schedulerItem.Email); cmd.AddParameter("daysSend", schedulerItem.DaysSend); cmd.AddParameter("timeSend", schedulerItem.TimesSend); cmd.AddParameter("fileName", schedulerItem.FileName); cmd.AddParameter("fileConfig", schedulerItem.FileConfig); cmd.AddParameter("fileType", schedulerItem.FileType); cmd.AddParameter("isEnabled", schedulerItem.IsEnabled); cmd.AddParameter("mailSubject", schedulerItem.Subject); cmd.AddParameter("mailBody", schedulerItem.Body); cmd.AddParameter("profileId", schedulerItem.ProfileId); var newId = (cmd.ExecuteValue() as int?) ?? 0; if (newId != 0) { schedulerItem.Id = newId; } } }
public bool Charge(UUID agentID, int amount, string text, int daysUntilNextCharge, TransactionType type, string identifer, bool chargeImmediately) { IMoneyModule moneyModule = m_registry.RequestModuleInterface <IMoneyModule>(); if (moneyModule != null) { if (chargeImmediately) { bool success = moneyModule.Charge(agentID, amount, text, type); if (!success) { return(false); } } IScheduleService scheduler = m_registry.RequestModuleInterface <IScheduleService>(); if (scheduler != null) { OSDMap itemInfo = new OSDMap(); itemInfo.Add("AgentID", agentID); itemInfo.Add("Amount", amount); itemInfo.Add("Text", text); itemInfo.Add("Type", (int)type); SchedulerItem item = new SchedulerItem("ScheduledPayment" + identifer, OSDParser.SerializeJsonString(itemInfo), false, DateTime.UtcNow, daysUntilNextCharge, RepeatType.days, agentID); itemInfo.Add("SchedulerID", item.id); scheduler.Save(item); } } return(true); }
private void TimerElasped(object sender, ElapsedEventArgs elapsedEventArgs) { taskTimer.Enabled = false; IUserAccountService userService = m_registry.RequestModuleInterface <IUserAccountService>(); List <UserAccount> users = new List <UserAccount>(); users = userService.GetUserAccounts(new List <UUID> { UUID.Zero }, 0, m_options.StipendsPremiumOnly ? 600 : 0); foreach (UserAccount user in users) { SchedulerItem i = m_scheduler.Get(user.PrincipalID.ToString(), "StipendsPayout"); if (i != null) { continue; } RepeatType runevertype = (RepeatType)Enum.Parse(typeof(RepeatType), m_options.StipendsEveryType); int runevery = m_options.StipendsEvery; m_scheduler.Save(new SchedulerItem("StipendsPayout", OSDParser.SerializeJsonString( new StipendsInfo() { AgentID = user.PrincipalID }.ToOSD()), false, UnixTimeStampToDateTime(user.Created), runevery, runevertype, user.PrincipalID) { HisotryKeep = true, HistoryReciept = true }); } }
public void HistoryDeleteOld(SchedulerItem I) { if ((I.id != "") && (I.HistoryLastID != "")) { m_Gd.Delete("scheduler_history", "WHERE id != '" + I.HistoryLastID + "' AND scheduler_id = '" + I.id + "'"); } }
public SchedulerItem SaveHistoryComplete(SchedulerItem I) { m_Gd.Update("scheduler_history", new object[] { 1, Util.ToUnixTime(I.TimeToRun), "" }, new[] { "is_complete", "complete_time", "reciept" }, new[] { "id" }, new object[] { I.HistoryLastID }); return(I); }
private Action SendStatisticSchedulerAction(SchedulerItem scheduler) => () => { foreach (var recipient in recipients) { //mailManager.SendEmailAsync(recipient.UserInformation.FirstName, recipient.UserInformation.Email, scheduler.Message); } };
public bool Charge(UUID agentID, int amount, string text, int daysUntilNextCharge) { IMoneyModule moneyModule = m_registry.RequestModuleInterface <IMoneyModule>(); if (moneyModule != null) { bool success = moneyModule.Charge(agentID, amount, text); if (!success) { return(false); } IScheduleService scheduler = m_registry.RequestModuleInterface <IScheduleService>(); if (scheduler != null) { OSDMap itemInfo = new OSDMap(); itemInfo.Add("AgentID", agentID); itemInfo.Add("Amount", amount); itemInfo.Add("Text", text); SchedulerItem item = new SchedulerItem("ScheduledPayment", OSDParser.SerializeJsonString(itemInfo), false, DateTime.Now.AddDays(daysUntilNextCharge) - DateTime.Now); itemInfo.Add("SchedulerID", item.id); scheduler.Save(item); } } return(true); }
public string Save(SchedulerItem I) { if (m_doRemoteCalls) { return((string)DoRemote(I)); } return(m_database.SchedulerSave(I)); }
private object[] GetDBValues(SchedulerItem I) { return(new object[] { I.id, I.FireFunction, I.FireParams, (I.RunOnce)?1:0, I.RunEvery, Util.ToUnixTime(I.TimeToRun), (I.HisotryKeep)?1:0, (I.HistoryReciept)?1:0, I.HistoryLastID, Util.ToUnixTime(I.CreateTime), (I.Enabled)?1:0 }); }
public bool Register(SchedulerItem I, OnGenericEventHandler handler) { if (m_doRemoteCalls) { return(false); } EventManager.RegisterEventHandler(I.FireFunction, handler); return(true); }
public void HistoryDeleteOld(SchedulerItem itm) { if ((itm.id != "") && (itm.HistoryLastID != "")) { QueryFilter filter = new QueryFilter(); filter.andNotFilters["id"] = itm.HistoryLastID; filter.andFilters["scheduler_id"] = itm.id; GD.Delete("scheduler_history", filter); } }
public void HistoryDeleteOld(SchedulerItem I) { if ((I.id != "") && (I.HistoryLastID != "")) { QueryFilter filter = new QueryFilter(); filter.andNotFilters["id"] = I.HistoryLastID; filter.andFilters["scheduler_id"] = I.id; m_Gd.Delete("scheduler_history", filter); } }
public bool IsScheduling() { SchedulerItem item = _homegenie.ProgramEngine.SchedulerService.Get(_schedulename); if (item != null) { return(_homegenie.ProgramEngine.SchedulerService.IsScheduling(item.CronExpression)); } return(false); }
private object DeleteUserInformation(string functionname, object parameters) { UUID user = (UUID)parameters; SchedulerItem i = m_scheduler.Get(user.ToString(), "StipendsPayout"); if (i != null) { m_scheduler.Remove(i.id); } return(null); }
private static bool IsTimeCome(DateTime time, SchedulerItem item) { var isNextSend = (item.NextSend - time) <= _offset; var isLastSend = ((time + _offsetLastSend) >= item.LastSend); if (isLastSend && isNextSend) { return(true); } return(false); }
public string SchedulerSave(SchedulerItem I) { if (SchedulerExist(I.id)) { m_Gd.Update("scheduler", GetDBValues(I), theFields, new[] { "id" }, new object[] { I.id }); } else { m_Gd.Insert("scheduler", theFields, GetDBValues(I)); } return I.id; }
public string SchedulerSave(SchedulerItem I) { if (SchedulerExist(I.id)) { m_Gd.Update("scheduler", GetDBValues(I), theFields, new[] { "id" }, new object[] { I.id }); } else { m_Gd.Insert("scheduler", theFields, GetDBValues(I)); } return(I.id); }
private void FireEvent(SchedulerItem I) { try { // save chagnes before it fires in case its chagned during the fire I = m_database.SaveHistory(I); if (I.RunOnce) { I.Enabled = false; } if (I.Enabled) { I.CalculateNextRunTime(I.TimeToRun); } if (!I.HisotryKeep) { m_database.HistoryDeleteOld(I); } m_database.SchedulerSave(I); // now fire List <Object> reciept = EventManager.FireGenericEventHandler(I.FireFunction, I.FireParams); if (!I.HistoryReciept) { I = m_database.SaveHistoryComplete(I); } else { #if (!ISWIN) foreach (Object o in reciept) { string results = (string)o; if (results != "") { m_database.SaveHistoryCompleteReciept(I.HistoryLastID, results); } } #else foreach (string results in reciept.Cast <string>().Where(results => results != "")) { m_database.SaveHistoryCompleteReciept(I.HistoryLastID, results); } #endif } } catch (Exception e) { MainConsole.Instance.Error("[Scheduler] FireEvent Error " + I.id, e); } }
public SchedulerItem SaveHistory(SchedulerItem I) { string his_id = UUID.Random().ToString(); m_Gd.Insert("scheduler_history", new[] { "id", "scheduler_id", "ran_time", "run_time", "is_complete", "complete_time", "reciept" }, new object[] { his_id, I.id, Util.ToUnixTime(DateTime.UtcNow), Util.ToUnixTime(I.TimeToRun), 0, 0, "" } ); I.HistoryLastID = his_id; return(I); }
public SchedulerItem SaveHistoryComplete(SchedulerItem I) { Dictionary <string, object> values = new Dictionary <string, object>(3); values["is_complete"] = true; values["complete_time"] = DateTime.UtcNow; values["reciept"] = ""; QueryFilter filter = new QueryFilter(); filter.andFilters["id"] = I.HistoryLastID; m_Gd.Update("scheduler_history", values, null, filter, null, null); return(I); }
private object[] GetDBValues(SchedulerItem I) { return(new object[] { I.id, I.FireFunction, I.FireParams, I.RunOnce, I.RunEvery, I.TimeToRun, I.HisotryKeep, I.HistoryReciept, I.HistoryLastID, I.CreateTime, I.StartTime, (int)I.RunEveryType, I.Enabled }); }
public SchedulerItem SaveHistory(SchedulerItem I) { string his_id = UUID.Random().ToString(); Dictionary <string, object> row = new Dictionary <string, object>(7); row["id"] = his_id; row["scheduler_id"] = I.id; row["ran_time"] = DateTime.UtcNow; row["run_time"] = I.TimeToRun; row["is_complete"] = 0; row["complete_time"] = DateTime.UtcNow; row["reciept"] = ""; m_Gd.Insert("scheduler_history", row); I.HistoryLastID = his_id; return(I); }
private object CreateUserInformation(string functionname, object parameters) { UUID userid = (UUID)parameters; IUserAccountService userService = m_registry.RequestModuleInterface <IUserAccountService>(); UserAccount user = userService.GetUserAccount(null, userid); if (user == null) { return(null); } if ((m_options.StipendsPremiumOnly) && ((user.UserFlags & Constants.USER_FLAG_MEMBER) != Constants.USER_FLAG_MEMBER)) { return(null); } // Don't set a StipendPayment for System Users if (Utilities.IsSystemUser(user.PrincipalID)) { return(null); } SchedulerItem i = m_scheduler.Get(user.PrincipalID.ToString(), "StipendsPayout"); if (i != null) { return(null); } // Scheduler needs to get 1 date/time to set for "PayDay" - Fly 17/11/2014 RepeatType runevertype = (RepeatType)Enum.Parse(typeof(RepeatType), m_options.StipendsEveryType); int runevery = m_options.StipendsEvery; m_scheduler.Save(new SchedulerItem("StipendsPayout", OSDParser.SerializeJsonString( new StipendsInfo() { AgentID = user.PrincipalID }.ToOSD()), false, UnixTimeStampToDateTime(user.Created), runevery, runevertype, user.PrincipalID) { HistoryKeep = true, HistoryReceipt = true }); return(null); }
private void FireEvent(SchedulerItem I) { try { I = m_database.SaveHistory(I); List <Object> reciept = EventManager.FireGenericEventHandler(I.FireFunction, I.FireParams); if (!I.HistoryReciept) { I = m_database.SaveHistoryComplete(I); } else { foreach (Object o in reciept) { string results = (string)o; if (results != "") { m_database.SaveHistoryCompleteReciept(I.HistoryLastID, results); } } } if (I.RunOnce) { I.Enabled = false; } if (I.Enabled) { I.TimeToRun = I.TimeToRun.AddSeconds(I.RunEvery); } if (!I.HisotryKeep) { m_database.HistoryDeleteOld(I); } m_database.SchedulerSave(I); } catch (Exception e) { MainConsole.Instance.Error("[Scheduler] FireEvent Error " + I.id, e); } }
object[] GetDBValues(SchedulerItem itm) { return(new object[] { itm.id, itm.FireFunction, itm.FireParams, itm.RunOnce, itm.RunEvery, itm.TimeToRun, // "run_next" field in db itm.HistoryKeep, itm.HistoryReceipt, itm.HistoryLastID, itm.CreateTime, itm.StartTime, (int)itm.RunEveryType, itm.Enabled, itm.ScheduleFor }); }
/// ----------------------------------------------------------------------------- /// <summary> /// Indexes content within the given time farame /// </summary> /// ----------------------------------------------------------------------------- internal void IndexContent() { //Index TAB META-DATA TabIndexer tabIndexer = new TabIndexer(); int searchDocsCount = GetAndStoreSearchDocuments(tabIndexer); int indexedSearchDocumentCount = searchDocsCount; AddIdexingResults("Tabs Indexed", searchDocsCount); //Index MODULE META-DATA from modules that inherit from ModuleSearchBase ModuleIndexer moduleIndexer = new ModuleIndexer(true); searchDocsCount = GetAndStoreModuleMetaData(moduleIndexer); indexedSearchDocumentCount += searchDocsCount; AddIdexingResults("Modules (Metadata) Indexed", searchDocsCount); //Index MODULE CONTENT from modules that inherit from ModuleSearchBase searchDocsCount = GetAndStoreSearchDocuments(moduleIndexer); indexedSearchDocumentCount += searchDocsCount; //Index all Defunct ISearchable module content #pragma warning disable 0618 SearchItemInfoCollection searchItems = GetContent(moduleIndexer); SearchDataStoreProvider.Instance().StoreSearchItems(searchItems); #pragma warning restore 0618 indexedSearchDocumentCount += searchItems.Count; //Both ModuleSearchBase and ISearchable module content count AddIdexingResults("Modules (Content) Indexed", searchDocsCount + searchItems.Count); if (!HostController.Instance.GetBoolean("DisableUserCrawling", false)) { //Index User data UserIndexer userIndexer = new UserIndexer(); int userIndexed = GetAndStoreSearchDocuments(userIndexer); indexedSearchDocumentCount += userIndexed; AddIdexingResults("Users", userIndexed); } SchedulerItem.AddLogNote("<br/><b>Total Items Indexed: " + indexedSearchDocumentCount + "</b>"); }
private static SchedulerItem CreatePriceSendModel(DbDataReader r) { var model = new SchedulerItem { Id = r.GetValue <int>("Id"), GroupId = r.GetValue <int>("PriceGroupId"), ClientId = r.GetValue <int>("ClientId"), Email = r.GetValue <string>("Email"), DaysSend = r.GetValue <string>("DaysSend"), TimesSend = r.GetValue <string>("TimeSend"), FileName = r.GetValue <string>("FileName"), FileConfig = r.GetValue <string>("FileConfig"), FileType = r.GetValue <string>("FileType"), IsEnabled = r.GetValue <bool>("IsEnabled"), Subject = r.GetValue <string>("MailSubject"), Body = r.GetValue <string>("MailBody"), ProfileId = r.GetValue <int>("ProfileId"), LastSend = r.GetValue <DateTime>("LastSend") }; return(model); }
public string SchedulerSave(SchedulerItem I) { object[] dbv = GetDBValues(I); Dictionary <string, object> values = new Dictionary <string, object>(dbv.Length); int i = 0; foreach (object value in dbv) { values[theFields[i++]] = value; } if (SchedulerExist(I.id)) { QueryFilter filter = new QueryFilter(); filter.andFilters["id"] = I.id; m_Gd.Update("scheduler", values, null, filter, null, null); } else { m_Gd.Insert("scheduler", values); } return(I.id); }
public async Task <int> CreateSchedulerItemAsync(SchedulerItemDTO schedulerItemDTO) { var schedulerItemsWithSameName = await schedulerItemRepository.GetByAsync(s => s.Name == schedulerItemDTO.Name); if (schedulerItemsWithSameName.Any()) { throw new Exception("Scheduler with same name already exists."); } var schedulerItem = SchedulerItem.Insert(schedulerItemDTO.Name, schedulerItemDTO.MessageSubject, schedulerItemDTO.MessageBody, schedulerItemDTO.ExecutionFrequency, schedulerItemDTO.ExecutionHours, schedulerItemDTO.ExecutionMinutes, schedulerItemDTO.ExecutionDayOfWeek); await schedulerItemRepository.InsertAsync(schedulerItem); await schedulerItemRepository.SaveChangesAsync(); return(schedulerItem.Id); }
private object CreateUserInformation(string functionname, object parameters) { UUID userid = (UUID)parameters; IUserAccountService userService = m_registry.RequestModuleInterface <IUserAccountService>(); UserAccount user = userService.GetUserAccount(null, userid); if (user == null) { return(null); } if ((m_options.StipendsPremiumOnly) && ((user.UserFlags & 600) != 600)) { return(null); } SchedulerItem i = m_scheduler.Get(user.PrincipalID.ToString(), "StipendsPayout"); if (i != null) { return(null); } RepeatType runevertype = (RepeatType)Enum.Parse(typeof(RepeatType), m_options.StipendsEveryType); int runevery = m_options.StipendsEvery; m_scheduler.Save(new SchedulerItem("StipendsPayout", OSDParser.SerializeJsonString( new StipendsInfo() { AgentID = user.PrincipalID }.ToOSD()), false, UnixTimeStampToDateTime(user.Created), runevery, runevertype, user.PrincipalID) { HisotryKeep = true, HistoryReciept = true }); return(null); }
public SchedulerItem SaveHistory(SchedulerItem I) { string his_id = UUID.Random().ToString(); m_Gd.Insert("scheduler_history", new[] {"id", "scheduler_id", "ran_time", "run_time", "is_complete", "complete_time", "reciept"}, new object[] {his_id, I.id, Util.ToUnixTime(DateTime.UtcNow), Util.ToUnixTime(I.TimeToRun), 0, 0, ""} ); I.HistoryLastID = his_id; return I; }
public SchedulerItem SaveHistoryComplete(SchedulerItem I) { m_Gd.Update("scheduler_history", new object[] { 1, Util.ToUnixTime(I.TimeToRun), "" }, new[] { "is_complete", "complete_time", "reciept" }, new[] { "id" }, new object[] { I.HistoryLastID }); return I; }
public string Save(SchedulerItem I) { return m_database.SchedulerSave(I); }
public void HisotryDeleteOld(SchedulerItem I) { if ((I.id != "") && (I.HistoryLastID != "")) m_Gd.Delete("scheduler_history", "WHERE id != '" + I.HistoryLastID + "' AND scheduler_id = '" + I.id + "'"); }
private void FireEvent(SchedulerItem I) { try { I = m_database.SaveHistory(I); List<Object> reciept = EventManager.FireGenericEventHandler(I.FireFunction, I.FireParams); if (!I.HistoryReciept) I = m_database.SaveHistoryComplete(I); else { foreach (Object o in reciept) { string results = (string)o; if (results != "") { m_database.SaveHistoryCompleteReciept(I.HistoryLastID, results); } } } if (I.RunOnce) I.Enabled = false; if (I.Enabled) I.TimeToRun = I.TimeToRun.AddSeconds(I.RunEvery); if (!I.HisotryKeep) m_database.HisotryDeleteOld(I); m_database.SchedulerSave(I); } catch (Exception e) { MainConsole.Instance.Error("[Scheduler] FireEvent Error " + I.id, e); } }
public SchedulerItem SaveHistoryComplete(SchedulerItem I) { Dictionary<string, object> values = new Dictionary<string, object>(3); values["is_complete"] = true; values["complete_time"] = DateTime.UtcNow; values["reciept"] = ""; QueryFilter filter = new QueryFilter(); filter.andFilters["id"] = I.HistoryLastID; m_Gd.Update("scheduler_history", values, null, filter, null, null); return I; }
private object[] GetDBValues(SchedulerItem I) { return new object[] { I.id, I.FireFunction, I.FireParams, (I.RunOnce)?1:0, I.RunEvery, Util.ToUnixTime(I.TimeToRun), (I.HisotryKeep)?1:0,(I.HistoryReciept)?1:0, I.HistoryLastID, Util.ToUnixTime(I.CreateTime), (I.Enabled)?1:0 }; }
public bool Register(SchedulerItem I, OnGenericEventHandler handler) { if (m_doRemoteCalls) return false; EventManager.RegisterEventHandler(I.FireFunction, handler); return true; }
public string Save(SchedulerItem I) { if (m_doRemoteCalls) return (string) DoRemote(I); return m_database.SchedulerSave(I); }
private object[] GetDBValues(SchedulerItem I) { return new object[] { I.id, I.FireFunction, I.FireParams, I.RunOnce, I.RunEvery, I.TimeToRun, I.HisotryKeep, I.HistoryReciept, I.HistoryLastID, I.CreateTime, I.StartTime, (int) I.RunEveryType, I.Enabled, I.ScheduleFor }; }
private void FireEvent(SchedulerItem I) { try { // save chagnes before it fires in case its chagned during the fire I = m_database.SaveHistory(I); if (I.RunOnce) I.Enabled = false; if (I.Enabled) I.CalculateNextRunTime(I.TimeToRun); if (!I.HisotryKeep) m_database.HistoryDeleteOld(I); m_database.SchedulerSave(I); // now fire List<Object> reciept = EventManager.FireGenericEventHandler(I.FireFunction, I.FireParams); if (!I.HistoryReciept) I = m_database.SaveHistoryComplete(I); else { foreach (string results in reciept.Cast<string>().Where(results => results != "")) { m_database.SaveHistoryCompleteReciept(I.HistoryLastID, results); } } } catch (Exception e) { MainConsole.Instance.ErrorFormat("[Scheduler] FireEvent Error {0}: {1}", I.id, e.ToString()); } }
public SchedulerItem SaveHistory(SchedulerItem I) { string his_id = UUID.Random().ToString(); Dictionary<string, object> row = new Dictionary<string, object>(7); row["id"] = his_id; row["scheduler_id"] = I.id; row["ran_time"] = DateTime.UtcNow; row["run_time"] = I.TimeToRun; row["is_complete"] = 0; row["complete_time"] = DateTime.UtcNow; row["reciept"] = ""; m_Gd.Insert("scheduler_history", row); I.HistoryLastID = his_id; return I; }
public string SchedulerSave(SchedulerItem I) { object[] dbv = GetDBValues(I); Dictionary<string, object> values = new Dictionary<string, object>(dbv.Length); int i = 0; foreach (object value in dbv) { values[theFields[i++]] = value; } if (SchedulerExist(I.id)) { QueryFilter filter = new QueryFilter(); filter.andFilters["id"] = I.id; m_Gd.Update("scheduler", values, null, filter, null, null); } else { m_Gd.Insert("scheduler", values); } return I.id; }
public bool Register(SchedulerItem I, OnGenericEventHandler handler) { EventManager.RegisterEventHandler(I.FireFunction, handler); return true; }