public virtual IList<TriggerFiredResult> TriggersFired(IList<IOperableTrigger> triggers)
        {
            return
                (IList<TriggerFiredResult>) ExecuteInNonManagedTXLock(LockTriggerAccess, conn =>
                                            {
                                                List<TriggerFiredResult> results = new List<TriggerFiredResult>();

                                                TriggerFiredResult result;
                                                foreach (IOperableTrigger trigger in triggers)
                                                {
                                                    try
                                                    {
                                                        TriggerFiredBundle bundle = TriggerFired(conn, trigger);
                                                        result = new TriggerFiredResult(bundle);
                                                    }
                                                    catch (JobPersistenceException jpe)
                                                    {
                                                        log.ErrorFormat("Caught job persistence exception: " + jpe.Message, jpe);
                                                        result = new TriggerFiredResult(jpe);
                                                    }
                                                    catch (Exception ex)
                                                    {
                                                        log.ErrorFormat("Caught exception: " + ex.Message, ex);
                                                        result = new TriggerFiredResult(ex);
                                                    }
                                                    results.Add(result);
                                                }

                                                return results;
                                            });
        }
        public virtual IList<TriggerFiredResult> TriggersFired(IList<IOperableTrigger> triggers)
        {
            return
                (IList<TriggerFiredResult>) ExecuteInNonManagedTXLock(LockTriggerAccess, conn =>
                                            {
                                                List<TriggerFiredResult> results = new List<TriggerFiredResult>();

                                                TriggerFiredResult result;
                                                foreach (IOperableTrigger trigger in triggers)
                                                {
                                                    try
                                                    {
                                                        TriggerFiredBundle bundle = TriggerFired(conn, trigger);
                                                        result = new TriggerFiredResult(bundle);
                                                    }
                                                    catch (JobPersistenceException jpe)
                                                    {
                                                        result = new TriggerFiredResult(jpe);
                                                    }
                                                    catch (Exception re)
                                                    {
                                                        result = new TriggerFiredResult(re);
                                                    }
                                                    results.Add(result);
                                                }

                                                return results;
                                            });
        }