Ravn::Tactical::Operation::

ArchiveMission class

Ravn-tactical Operation for archiving a mission.

Public Class Methods

param_validator()

Return a block for Roda::RodaPlugins::TypecastParams validation for this operation.

   # File lib/ravn/tactical/operation/archive_mission.rb
14 def self::param_validator
15     return ->( params ) do
16         params.uuid!( 'mission_id' )
17     end
18 end

Public Instance Methods

run( * )

Archive the mission specified by the mission_id parameter.

   # File lib/ravn/tactical/operation/archive_mission.rb
22 def run( * )
23     mission_id = self.config[ :mission_id ] or
24         raise "no mission ID specified!"
25 
26     self.log.info "Archiving mission %s with no replacement." % [ mission_id ]
27     mission = Ravn::Tactical::Mission.fetch( mission_id ) or
28         raise "no such mission %p" % [ mission_id ]
29 
30     mission.archive
31     Ravn::Executor.exec( :reset_helios )
32 
33     return [ 'Mission %s has been archived.' % [mission_id] ]
34 end