Class: Simp::Metadata::Commands::Save

Inherits:
Base
  • Object
show all
Defined in:
lib/simp/metadata/commands/save.rb

Instance Method Summary collapse

Methods inherited from Base

#defaults, #get_engine

Instance Method Details

#run(argv, engine = nil) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/simp/metadata/commands/save.rb', line 6

def run(argv, engine = nil)
  options = defaults(argv) do |opts,options|
    opts.banner = 'Usage: simp-metadata save [options] [message]'
  end

  engine, root = get_engine(engine, options)
  short = if argv.empty?
            'Auto-saving using simp-metadata'
          else
            argv.join(' ')
          end

  if $commandqueue.nil?
    engine.save(short)
  else
    message = []
    message << $commandqueue.pop until $commandqueue.empty?
    puts message
    engine.save("#{short}\n\nsimp-metadata log:\n    #{message.join("\n    ")}")
  end
end