class Resources::Service
Public Instance Methods
create()
click to toggle source
# File lib/pvdgm-svc-client/resources/service.rb, line 32 def create params = { service: { name: prompter.ask("\nName for new service: ") { |q| q.validate = /\A.{1,255}\z/; q.responses[:ask_on_error] = :question; q.responses[:not_valid] = "\nNot a valid service name" }, key: prompter.ask("\nUnique key for service: ") { |q| q.validate = /\A[a-zA-Z0-9_-]{1,255}\z/; q.responses[:ask_on_error] = :question; q.responses[:not_valid] = "\nNot a valid service key" } } } result = post("services/services", params) puts "\nID of new service: #{result['id']}" puts end
invoke()
click to toggle source
# File lib/pvdgm-svc-client/resources/service.rb, line 58 def invoke sv_id = service_id result = put("services/services/#{sv_id}/invoke", {}) if result.has_key?('message') puts result['message'] else puts result['error'] end end
list()
click to toggle source
# File lib/pvdgm-svc-client/resources/service.rb, line 6 def list result = get("services/services") puts "\nServices:" table = Terminal::Table.new headings: [ 'Name', 'Key' ] do |t| result.each do | service | # puts format "(%4d) %s", service['id'], service['name'] t << [ service['name'], service['key'] ] end end prompter.say table.to_s puts end
show()
click to toggle source
# File lib/pvdgm-svc-client/resources/service.rb, line 19 def show sv_id = service_id result = get("services/services/#{sv_id}") puts "\nService:" table = Terminal::Table.new headings: [ 'Name', 'Key' ] do |t| t << [ result['name'], result['key'] ] end @service_name = result['name'] @service_key = result['key'] puts table puts end
update()
click to toggle source
# File lib/pvdgm-svc-client/resources/service.rb, line 44 def update sv_id = service_id show params = { service: { name: prompter.ask("\nNew name for service: ") { |q| q.default = @service_name; q.validate = /\A.{1,255}\z/; q.responses[:ask_on_error] = :question; q.responses[:not_valid] = "\nNot a valid service name" }, key: prompter.ask("\nUnique key for service: ") { |q| q.default = @service_key; q.validate = /\A[a-zA-Z0-9_-]{1,255}\z/; q.responses[:ask_on_error] = :question; q.responses[:not_valid] = "\nNot a valid service key" } } } result = put("services/services/#{sv_id}", params) puts "\nID of updated service: #{result['id']}" puts end