module XcodeServer::Server::Networking

Public Instance Methods

delete(endpoint) click to toggle source
# File lib/xcode_server/server/networking.rb, line 24
def delete(endpoint)
  http.request(Net::HTTP::Delete.new(path_to(endpoint)))
end
get(endpoint) click to toggle source
# File lib/xcode_server/server/networking.rb, line 9
def get(endpoint)
  http.request(Net::HTTP::Get.new(path_to(endpoint)))
end
get_json(endpoint) click to toggle source
# File lib/xcode_server/server/networking.rb, line 20
def get_json(endpoint)
  JSON.load(get(endpoint).body)
end
post(endpoint, params) click to toggle source
# File lib/xcode_server/server/networking.rb, line 13
def post(endpoint, params)
  puts params.to_json
  req = Net::HTTP::Post.new(path_to(endpoint))
  req['Content-Type'] = 'application/json'
  http.request(req, params.to_json)
end

Private Instance Methods

http() click to toggle source
# File lib/xcode_server/server/networking.rb, line 34
def http
  @_http ||= begin
    http = Net::HTTP.new(host, 443)
    http.use_ssl = true

    # By default, Xcode Server uses a self-signed certificate
    http.verify_mode = OpenSSL::SSL::VERIFY_NONE

    http
  end
end
path_to(endpoint) click to toggle source
# File lib/xcode_server/server/networking.rb, line 30
def path_to(endpoint)
  "/xcode/api/#{endpoint}"
end