Sha256: 04ac154b9e86b61a52c6783e68a4f250eda61a748cb3b7b08e651c81bd8816e2
Contents?: true
Size: 1.8 KB
Versions: 5
Compression:
Stored size: 1.8 KB
Contents
module Xcal module Parktronic module Routes module StackChanges # Fetches stack changes # # ==== Parameters # * +element+ stack change element # * +time_range+ time range interval # * +page+ page number, defaults to 1 # * +per_page+ per page value, defaults to 100 # # ==== Examples # api.get_paged_stack_changes # api.stack_changes(element: 'TEST', page: 1, per_page: 5) def get_paged_stack_changes(args = {}) args.merge!(access_token: access_token) args[:time_range] = args[:time_range].to_json if args[:time_range] response = get_response("/#{api_version}/stack_changes?#{URI.encode_www_form(args)}") generic_response = Xcal::Parktronic::GenericResponse.new(response.body) if response.code == '200' && generic_response.has_key?(:stack_changes) generic_response.stack_changes.map { |stack| Xcal::Parktronic::GenericResponse.new(stack.stack_change, self) } else generic_response end end alias :stack_changes :get_paged_stack_changes # Posts new stack change # # ==== Parameters # * +stack_change+ hash of Stack Change data. # # ==== Examples # api.post_stack_change( ticket_id: 'CHANGE-14725', ticket_summary: 'test', element: 'TEST' ) def post_stack_change(stack_change = {}) request = Net::HTTP::Post.new("/#{api_version}/stack_changes", 'Content-Type' => 'application/json') request.body = { access_token: access_token, stack_change: stack_change }.to_json response = http.start { |net| net.request(request) } Xcal::Parktronic::GenericResponse.new(response.body) end end end end end
Version data entries
5 entries across 5 versions & 1 rubygems