Class: Wimdu::Cli::Utility

Inherits:
Thor
  • Object
show all
Defined in:
lib/wimdu/cli/utility.rb

Instance Method Summary collapse

Instance Method Details

#continue(id) ⇒ Object



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/wimdu/cli/utility.rb', line 30

def continue(id)
  property = Wimdu::Property.find(id)
  begin
    Wimdu::Property.unsaved_attributes(property).each do |attribute|
      begin
        attribute_value = ask("Enter #{attribute.to_s.humanize.upcase}")
        property.update_attribute(attribute, attribute_value)
      rescue Wimdu::Property::InvalidPropertyError => validation_error
        ap validation_error.message
        retry
      rescue Interrupt
        ap("Exiting...") and exit
      end
    end
  rescue Wimdu::Property::NothingToContinue => property_error
    ap property_error.message and exit
  end
end

#listObject



8
9
10
# File 'lib/wimdu/cli/utility.rb', line 8

def list
  ap(Wimdu::Property.list)
end

#newObject



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/wimdu/cli/utility.rb', line 13

def new
  property = Wimdu::Property.new
  ap("Starting with")
  Wimdu::Property::ATTRIBUTES.each do |attribute|
    begin
      attribute_value = ask("Enter #{attribute.to_s.humanize.upcase}")
      property.update_attribute(attribute, attribute_value)
    rescue Wimdu::Property::InvalidPropertyError => validation_error
      ap validation_error.message
      retry
    rescue Interrupt
      ap("Exiting...") and exit
    end
  end
end