Public Class ActivityDefaultedState Inherits ActivityState 'Not from other state. Public Sub New(activity As IActivity) Me.Activity = activity End Sub ''' Public Overrides Function ActivityStateEnum() As ActivityStateEnum Return ProductiePitching.ActivityStateEnum.Defaulted End Function ''' Public Overrides Sub StartActivity(employee As IEmployee) If IsNothing(employee) Then 'Nothing employee. Throw New Exception($"The employee can't be nothing when starting an activity from defaulted state.") End If 'Update employee. employee.CurrentActivity = me.Activity 'Change state. Activity.State = New ActivityStartedState(Me, employee) End Sub End Class