Class: Legion::Cli::Lex::Queue

Inherits:
Thor
  • Object
show all
Includes:
Thor::Actions
Defined in:
lib/legion/cli/lex/queue.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.source_rootObject



7
8
9
# File 'lib/legion/cli/lex/queue.rb', line 7

def self.source_root
  File.dirname(__FILE__)
end

Instance Method Details

#create(name) ⇒ Object



18
19
20
21
22
23
24
# File 'lib/legion/cli/lex/queue.rb', line 18

def create(name)
  template('templates/queue_helper.erb', 'spec/queue_helper.rb')
  template('templates/queue.erb',
           "lib/legion/extensions/#{lex}/transport/queues/#{name}.rb",
           { name: name, lex: lex })
  template('templates/queue_spec.erb', "spec/queues/#{name}_spec.rb", { name: name, lex: lex })
end

#delete(name) ⇒ Object



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/legion/cli/lex/queue.rb', line 27

def delete(name)
  remove_file("lib/legion/extensions/#{lex}/transport/queues/#{name}.rb")
  remove_file("spec/queues/#{name}_spec.rb")
  remove_file("spec/transport/queues/#{name}_spec.rb")

  # puts Dir.pwd # /Users/miverso2/Rubymine/lex/wip/lex-conflux
  if Dir.exist? "#{Dir.pwd}/lib/legion/extensions/#{lex}/transport/queues/"
    remove_dir("#{Dir.pwd}/lib/legion/extensions/#{lex}/transport/queues") if Dir.empty?("#{Dir.pwd}/lib/legion/extensions/#{lex}/transport/queues/")
    remove_dir("#{Dir.pwd}/lib/legion/extensions/#{lex}/transport") if Dir.empty?("#{Dir.pwd}/lib/legion/extensions/#{lex}/transport")
  end

  remove_dir("#{Dir.pwd}/spec/queues") if Dir.exist?("#{Dir.pwd}/spec/queues") && Dir.empty?("#{Dir.pwd}/spec/queues")

  nil
end