@@ -34,8 +34,8 @@ def initialize(logger)
3434 end
3535
3636 # send POST request with given data and path.
37- # @param path[String] path relatived to `api`` endpoint.
38- # @param data[#to_json] data to send in request
37+ # @param path [String] path relatived to `api`` endpoint.
38+ # @param data [#to_json] data to send in request
3939 def post ( path , data )
4040 response = Net ::HTTP . post ( uri ( path ) , data . to_json , headers )
4141 return response unless response . is_a? ( Net ::HTTPClientError )
@@ -44,7 +44,7 @@ def post(path, data)
4444 end
4545
4646 # send GET request with given path.
47- # @param path[String] path relatived to `api`` endpoint.
47+ # @param path [String] path relatived to `api`` endpoint.
4848 # @return [Net::HTTPResponse, nil] Net::HTTPResponse if it is not an Net::HTTPClientError
4949 def get ( path )
5050 response = Net ::HTTP . get ( uri ( path ) , headers )
@@ -54,15 +54,27 @@ def get(path)
5454 end
5555
5656 # send PUT request with given data and path.
57- # @param path[String] path relatived to `api`` endpoint.
58- # @param data[#to_json] data to send in request
57+ # @param path [String] path relatived to `api`` endpoint.
58+ # @param data [#to_json] data to send in request
5959 def put ( path , data )
6060 response = Net ::HTTP . put ( uri ( path ) , data . to_json , headers )
6161 return unless response . is_a? ( Net ::HTTPClientError )
6262
6363 @logger . warn "server returned #{ response . code } with body: #{ response . body } "
6464 end
6565
66+ # send PATCH request with given data and path.
67+ # @param path [String] path relatived to `api`` endpoint.
68+ # @param data [#to_json] data to send in request
69+ def patch ( path , data )
70+ url = uri ( path )
71+ http = Net ::HTTP . start ( url . hostname , url . port , use_ssl : url . scheme == "https" )
72+ response = http . patch ( url , data . to_json , headers )
73+ return response unless response . is_a? ( Net ::HTTPClientError )
74+
75+ @logger . warn "server returned #{ response . code } with body: #{ response . body } "
76+ end
77+
6678 protected
6779
6880 def uri ( path )
0 commit comments