public void AddJobState(string jobId, IHangfireState state)
        {
            QueueCommand(() =>
            {
                var job = Data.Get<JobDto>(jobId);
                if (job == null)
                {
                    return;
                }

                DateTime createdAt = DateTime.UtcNow;
                Dictionary<string, string> serializedStateData = state.SerializeData();

                var stateData = new StateDto
                {
                    Id = AutoIncrementIdGenerator.GenerateId(typeof(StateDto)),
                    JobId = jobId,
                    Name = state.Name,
                    Reason = state.Reason,
                    CreatedAt = createdAt,
                    Data = JobHelper.ToJson(serializedStateData)
                };
                
                var stateHistory = new StateHistoryDto
                {
                    StateName = state.Name,
                    CreatedAt = createdAt,
                    Reason = state.Reason,
                    Data = serializedStateData
                };

                job.History.Add(stateHistory);
            });
        }
        public override void AddJobState(string jobId, IHangfireState state)
        {
            QueueCommand(() =>
            {
                var job = _data.Get <JobDto>(jobId);
                if (job == null)
                {
                    return;
                }

                DateTime createdAt = DateTime.UtcNow;
                Dictionary <string, string> serializedStateData = state.SerializeData();

                var stateData = new StateDto
                {
                    Id        = AutoIncrementIdGenerator.GenerateId(typeof(StateDto)),
                    JobId     = jobId,
                    Name      = state.Name,
                    Reason    = state.Reason,
                    CreatedAt = createdAt,
                    Data      = SerializationHelper.Serialize(serializedStateData, null, SerializationOption.User)
                };

                var stateHistory = new StateHistoryDto
                {
                    StateName = state.Name,
                    CreatedAt = createdAt,
                    Reason    = state.Reason,
                    Data      = serializedStateData
                };

                job.History.Add(stateHistory);
            });
        }
 public void AddJobState(string jobId, IHangfireState state)
 {
     QueueCommand(() =>
     {
         Data.Create<StateDto>(new StateDto
         {
             Id = AutoIncrementIdGenerator.GenerateId(typeof (StateDto)),
             JobId = jobId,
             Name = state.Name,
             Reason = state.Reason,
             CreatedAt = DateTime.UtcNow,
             Data = JobHelper.ToJson(state.SerializeData())
         });
     });
 }
        public void SetJobState(string jobId, IHangfireState state)
        {
            QueueCommand(() =>
            {
                var job = Data.Get<JobDto>(jobId);
                if (job == null)
                {
                    return;
                }

                var stateData = Data.Create<StateDto>(new StateDto
                {
                    Id = AutoIncrementIdGenerator.GenerateId(typeof (StateDto)),
                    JobId = jobId,
                    Name = state.Name,
                    Reason = state.Reason,
                    CreatedAt = DateTime.UtcNow,
                    Data = JobHelper.ToJson(state.SerializeData())
                });

                job.State = stateData;
            });
        }