Exemplo n.º 1
0
        public void OnStateApplied(ApplyStateContext context, IWriteOnlyTransaction transaction)
        {
            var expireTransaction = new TagExpirationTransaction(context.Storage, (JobStorageTransaction)transaction);
            var jobid             = context.BackgroundJob.Id;

            if (context.NewState.IsFinal)
            {
                // Final state, so set the tags expiration
                expireTransaction.Expire(jobid, context.JobExpirationTimeout);
            }
            else
            {
                // Only remove tags if the job is going to be removed
                expireTransaction.Persist(jobid);
            }
        }
Exemplo n.º 2
0
        public void OnStateApplied(ApplyStateContext context, IWriteOnlyTransaction transaction)
        {
            var jobDetails = context.Storage.GetMonitoringApi().JobDetails(context.BackgroundJob.Id);

            if (jobDetails == null)
            {
                return; // Should never happen, we're updating this job right now!
            }
            var expireTransaction = new TagExpirationTransaction(context.Storage, (JobStorageTransaction)transaction);
            var jobid             = context.BackgroundJob.Id;

            if (context.NewState.IsFinal)
            {
                // Final state, so set the tags expiration
                expireTransaction.Expire(jobid, context.JobExpirationTimeout);
            }
            else
            {
                // Only remove tags if the job is going to be removed
                expireTransaction.Persist(jobid);
            }
        }