Class: EPC::Command::CreateLibrarylanguageCommand

Inherits:
BaseCommand show all
Defined in:
lib/epc/command/librarylanguage/create_librarylanguage_command.rb

Constant Summary

Constants inherited from BaseCommand

BaseCommand::GIVEUP_TICKS, BaseCommand::SLEEP_TIME, BaseCommand::TICKER_TICKS

Instance Attribute Summary

Attributes inherited from BaseCommand

#client, #klass_name, #object_id, #object_type, #options, #target_id, #target_type

Instance Method Summary collapse

Methods inherited from BaseCommand

#check_options, #context_params, #context_params=, #go, include_module, inherited, #initialize, required_options, #say_err

Methods included from PersistentAttributes

#auth_token, #caller_id, #target_url

Constructor Details

This class inherits a constructor from EPC::Command::BaseCommand

Instance Method Details

#execute(names = []) ⇒ Object

Raises:



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/epc/command/librarylanguage/create_librarylanguage_command.rb', line 4

def execute(names = [])

  raise FatalError, "You need to specify a name for the language" if names.blank?

  failures = []
  names.each do |name|
    status, response, headers = client.post(EPC::Config::LIBRARY_LANGUAGES_PATH, {:name => name})

    if status.successful?
      say("Language [#{name}] added")
      failures << false
    else
      say_err("Failed to create [#{name}] language: [#{response[:message]}]")
      failures << true
    end
  end

  failures.all? ? 1 : 0
end