/// <summary>
        /// Call the registered listeners in reverse order, respecting and
        /// prioritising those that hold an order metadata information.
        /// </summary>
        /// <param name="jobExecution"></param>
        public void AfterJob(JobExecution jobExecution)
        {
            IEnumerator <IJobExecutionListener> enumerator = _listeners.Reverse();

            while (enumerator.MoveNext())
            {
                IJobExecutionListener jobExecutionListener = enumerator.Current;
                jobExecutionListener.AfterJob(jobExecution);
            }
        }