public TriggerPropertyBundle LoadExtendedTriggerProperties(ConnectionAndTransactionHolder conn, TriggerKey triggerKey) { using (IDbCommand cmd = CommandAccessor.PrepareCommand(conn, AdoJobStoreUtil.ReplaceTablePrefix(StdAdoConstants.SqlSelectCronTriggers, TablePrefix, SchedNameLiteral))) { CommandAccessor.AddCommandParameter(cmd, "triggerName", triggerKey.Name); CommandAccessor.AddCommandParameter(cmd, "triggerGroup", triggerKey.Group); using (IDataReader rs = cmd.ExecuteReader()) { if (rs.Read()) { string cronExpr = rs.GetString(AdoConstants.ColumnCronExpression); string timeZoneId = rs.GetString(AdoConstants.ColumnTimeZoneId); CronScheduleBuilder cb = CronScheduleBuilder.CronSchedule(cronExpr); if (timeZoneId != null) { cb.InTimeZone(TimeZoneInfo.FindSystemTimeZoneById(timeZoneId)); } return(new TriggerPropertyBundle(cb, null, null)); } } throw new InvalidOperationException("No record found for selection of Trigger with key: '" + triggerKey + "' and statement: " + AdoJobStoreUtil.ReplaceTablePrefix(StdAdoConstants.SqlSelectCronTriggers, TablePrefix, SchedNameLiteral)); } }
public TriggerPropertyBundle LoadExtendedTriggerProperties(ConnectionAndTransactionHolder conn, TriggerKey triggerKey) { using (IDbCommand cmd = CommandAccessor.PrepareCommand(conn, AdoJobStoreUtil.ReplaceTablePrefix(StdAdoConstants.SqlSelectSimpleTrigger, TablePrefix, SchedNameLiteral))) { CommandAccessor.AddCommandParameter(cmd, "triggerName", triggerKey.Name); CommandAccessor.AddCommandParameter(cmd, "triggerGroup", triggerKey.Group); using (IDataReader rs = cmd.ExecuteReader()) { if (rs.Read()) { int repeatCount = rs.GetInt32(AdoConstants.ColumnRepeatCount); long repeatInterval = rs.GetInt64(AdoConstants.ColumnRepeatInterval); int timesTriggered = rs.GetInt32(AdoConstants.ColumnTimesTriggered); SimpleScheduleBuilder sb = SimpleScheduleBuilder.Create() .WithRepeatCount(repeatCount) .WithInterval(TimeSpan.FromMilliseconds(repeatInterval)); string[] statePropertyNames = { "timesTriggered" }; object[] statePropertyValues = { timesTriggered }; return(new TriggerPropertyBundle(sb, statePropertyNames, statePropertyValues)); } } throw new InvalidOperationException("No record found for selection of Trigger with key: '" + triggerKey + "' and statement: " + AdoJobStoreUtil.ReplaceTablePrefix(StdAdoConstants.SqlSelectSimpleTrigger, TablePrefix, SchedNameLiteral)); } }
public int DeleteExtendedTriggerProperties(ConnectionAndTransactionHolder conn, TriggerKey triggerKey) { using (IDbCommand cmd = CommandAccessor.PrepareCommand(conn, AdoJobStoreUtil.ReplaceTablePrefix(StdAdoConstants.SqlDeleteCronTrigger, TablePrefix, SchedNameLiteral))) { CommandAccessor.AddCommandParameter(cmd, "triggerName", triggerKey.Name); CommandAccessor.AddCommandParameter(cmd, "triggerGroup", triggerKey.Group); return(cmd.ExecuteNonQuery()); } }
public int InsertExtendedTriggerProperties(ConnectionAndTransactionHolder conn, IOperableTrigger trigger, string state, IJobDetail jobDetail) { ICronTrigger cronTrigger = (ICronTrigger)trigger; using (IDbCommand cmd = CommandAccessor.PrepareCommand(conn, AdoJobStoreUtil.ReplaceTablePrefix(StdAdoConstants.SqlInsertCronTrigger, TablePrefix, SchedNameLiteral))) { CommandAccessor.AddCommandParameter(cmd, "triggerName", trigger.Key.Name); CommandAccessor.AddCommandParameter(cmd, "triggerGroup", trigger.Key.Group); CommandAccessor.AddCommandParameter(cmd, "triggerCronExpression", cronTrigger.CronExpressionString); CommandAccessor.AddCommandParameter(cmd, "triggerTimeZone", cronTrigger.TimeZone.Id); return(cmd.ExecuteNonQuery()); } }
public int InsertExtendedTriggerProperties(ConnectionAndTransactionHolder conn, IOperableTrigger trigger, string state, IJobDetail jobDetail) { ISimpleTrigger simpleTrigger = (ISimpleTrigger)trigger; using (IDbCommand cmd = CommandAccessor.PrepareCommand(conn, AdoJobStoreUtil.ReplaceTablePrefix(StdAdoConstants.SqlInsertSimpleTrigger, TablePrefix, SchedNameLiteral))) { CommandAccessor.AddCommandParameter(cmd, "triggerName", trigger.Key.Name); CommandAccessor.AddCommandParameter(cmd, "triggerGroup", trigger.Key.Group); CommandAccessor.AddCommandParameter(cmd, "triggerRepeatCount", simpleTrigger.RepeatCount); CommandAccessor.AddCommandParameter(cmd, "triggerRepeatInterval", simpleTrigger.RepeatInterval.TotalMilliseconds); CommandAccessor.AddCommandParameter(cmd, "triggerTimesTriggered", simpleTrigger.TimesTriggered); return(cmd.ExecuteNonQuery()); } }