Added Task Status Change Events as part of Dispatcher logic!!!! This is great!

This commit is contained in:
FlightControl_Master 2018-05-19 06:55:19 +02:00
parent d05973f487
commit d5d5d52bd5
5 changed files with 137 additions and 1 deletions

View File

@ -123,6 +123,48 @@ do -- DETECTION MANAGER
-- @param #DETECTION_MANAGER self -- @param #DETECTION_MANAGER self
-- @param #number Delay -- @param #number Delay
self:AddTransition( "Started", "Success", "Started" )
--- Success Handler OnAfter for DETECTION_MANAGER
-- @function [parent=#DETECTION_MANAGER] OnAfterSuccess
-- @param #DETECTION_MANAGER self
-- @param #string From
-- @param #string Event
-- @param #string To
-- @param Tasking.Task#TASK Task
self:AddTransition( "Started", "Failed", "Started" )
--- Failed Handler OnAfter for DETECTION_MANAGER
-- @function [parent=#DETECTION_MANAGER] OnAfterFailed
-- @param #DETECTION_MANAGER self
-- @param #string From
-- @param #string Event
-- @param #string To
-- @param Tasking.Task#TASK Task
self:AddTransition( "Started", "Aborted", "Started" )
--- Aborted Handler OnAfter for DETECTION_MANAGER
-- @function [parent=#DETECTION_MANAGER] OnAfterAborted
-- @param #DETECTION_MANAGER self
-- @param #string From
-- @param #string Event
-- @param #string To
-- @param Tasking.Task#TASK Task
self:AddTransition( "Started", "Cancelled", "Started" )
--- Cancelled Handler OnAfter for DETECTION_MANAGER
-- @function [parent=#DETECTION_MANAGER] OnAfterCancelled
-- @param #DETECTION_MANAGER self
-- @param #string From
-- @param #string Event
-- @param #string To
-- @param Tasking.Task#TASK Task
self:AddTransition( "Started", "Report", "Started" ) self:AddTransition( "Started", "Report", "Started" )

View File

@ -201,6 +201,7 @@ do -- TASK_A2A_DISPATCHER
self:AddTransition( "Started", "Assign", "Started" ) self:AddTransition( "Started", "Assign", "Started" )
--- OnAfter Transition Handler for Event Assign. --- OnAfter Transition Handler for Event Assign.
-- @function [parent=#TASK_A2A_DISPATCHER] OnAfterAssign -- @function [parent=#TASK_A2A_DISPATCHER] OnAfterAssign
-- @param #TASK_A2A_DISPATCHER self -- @param #TASK_A2A_DISPATCHER self
@ -562,6 +563,22 @@ do -- TASK_A2A_DISPATCHER
Task:SetDispatcher( self ) Task:SetDispatcher( self )
Mission:AddTask( Task ) Mission:AddTask( Task )
function Task.OnEnterSuccess( Task, From, Event, To )
self:Success( Task )
end
function Task.onenterCancelled( Task, From, Event, To )
self:Cancelled( Task )
end
function Task.onenterFailed( Task, From, Event, To )
self:Failed( Task )
end
function Task.onenterAborted( Task, From, Event, To )
self:Aborted( Task )
end
TaskReport:Add( Task:GetName() ) TaskReport:Add( Task:GetName() )
else else
self:F("This should not happen") self:F("This should not happen")

View File

@ -762,6 +762,23 @@ do -- TASK_A2G_DISPATCHER
Task:UpdateTaskInfo( DetectedItem ) Task:UpdateTaskInfo( DetectedItem )
Mission:AddTask( Task ) Mission:AddTask( Task )
function Task.OnEnterSuccess( Task, From, Event, To )
self:Success( Task )
end
function Task.onenterCancelled( Task, From, Event, To )
self:Cancelled( Task )
end
function Task.onenterFailed( Task, From, Event, To )
self:Failed( Task )
end
function Task.onenterAborted( Task, From, Event, To )
self:Aborted( Task )
end
TaskReport:Add( Task:GetName() ) TaskReport:Add( Task:GetName() )
else else
self:F("This should not happen") self:F("This should not happen")

View File

@ -578,6 +578,24 @@ do -- TASK_CARGO_DISPATCHER
else else
Transport.Task:SetDeployZones( self.DefaultDeployZones or {} ) Transport.Task:SetDeployZones( self.DefaultDeployZones or {} )
end end
function Transport.Task.OnEnterSuccess( Task, From, Event, To )
self:Success( Task )
end
function Transport.Task.onenterCancelled( Task, From, Event, To )
self:Cancelled( Task )
end
function Transport.Task.onenterFailed( Task, From, Event, To )
self:Failed( Task )
end
function Transport.Task.onenterAborted( Task, From, Event, To )
self:Aborted( Task )
end
end end
end end

View File

@ -111,6 +111,48 @@ do -- TASK_MANAGER
self:AddTransition( "Started", "Manage", "Started" ) self:AddTransition( "Started", "Manage", "Started" )
self:AddTransition( "Started", "Success", "Started" )
--- Success Handler OnAfter for TASK_MANAGER
-- @function [parent=#TASK_MANAGER] OnAfterSuccess
-- @param #TASK_MANAGER self
-- @param #string From
-- @param #string Event
-- @param #string To
-- @param Tasking.Task#TASK Task
self:AddTransition( "Started", "Failed", "Started" )
--- Failed Handler OnAfter for TASK_MANAGER
-- @function [parent=#TASK_MANAGER] OnAfterFailed
-- @param #TASK_MANAGER self
-- @param #string From
-- @param #string Event
-- @param #string To
-- @param Tasking.Task#TASK Task
self:AddTransition( "Started", "Aborted", "Started" )
--- Aborted Handler OnAfter for TASK_MANAGER
-- @function [parent=#TASK_MANAGER] OnAfterAborted
-- @param #TASK_MANAGER self
-- @param #string From
-- @param #string Event
-- @param #string To
-- @param Tasking.Task#TASK Task
self:AddTransition( "Started", "Cancelled", "Started" )
--- Cancelled Handler OnAfter for TASK_MANAGER
-- @function [parent=#TASK_MANAGER] OnAfterCancelled
-- @param #TASK_MANAGER self
-- @param #string From
-- @param #string Event
-- @param #string To
-- @param Tasking.Task#TASK Task
self:SetRefreshTimeInterval( 30 ) self:SetRefreshTimeInterval( 30 )
return self return self