Imports System.Runtime.Serialization
Public Class StatusItem
Public Const PROGRESS_CURRENT = "__Progress_Current"
Public Const PROGRESS_TOTAL = "__Progress_Total"
Public Const STEP_DEBUG = "DEBUG"
Public Const STEP_INFO = "INFO"
Public Const STEP_WARNING = "WARNING"
Public Const STEP_ERROR = "ERROR"
'''
''' Is the job currently executing
'''
Public Executing As Boolean = False
'''
''' Did the job complete without an error
'''
Public Successful As Boolean = False
'''
''' Did the job do some work or is/was just waiting for some input
'''
Public Waiting As Boolean = False
'''
''' Unique Job Run Id, GUID
'''
Public Id As String
'''
''' Job Id, corresponds to Job Schedule in DB
'''
Public JobId As String
'''
''' Job Name, corresponds to Job Schedule Key from Quartz
'''
Public Name As String = "Unnamed"
Public Steps As List(Of HistoryStep)
' Runtime Variables
'''
''' Progress Counter
'''
Public ProgressCurrent As Integer = 0
'''
''' Total Progress
'''
Public ProgressTotal As Integer = 0
'''
''' Creation time of job, set by Constructor
'''
Public CreationTime As Date = Date.Now
'''
''' Start time of execution, set by JobStatus.Start
'''
Public StartTime As Date
'''
''' End time of execution, set by JobStatus.Complete
'''
Public CompleteTime As Date
'''
''' Time of last Progress Update
'''
Public UpdateTime As Date
'''
''' Total execution time, calculated by JobStatus.Complete
'''
Public ExecutionTime As TimeSpan
' Completion/Failure Messages
Public SuccessMessage As String = ""
Public FailureMessage As String = ""
Public Class HistoryStep
Public Property Created As Date = Now
Public Property Message As String
Public Property Level As String
End Class
End Class