class NSXDriver::NSXTClient

Class NSXTClient

Attributes

nsx_password[RW]
nsx_type[RW]
nsx_user[RW]
nsxmgr[RW]

ATTIBUTES

Public Class Methods

new(nsxmgr, nsx_user, nsx_password) click to toggle source

CONSTRUCTORS

Calls superclass method NSXDriver::NSXClient::new
# File lib/nsxt_client.rb, line 66
def initialize(nsxmgr, nsx_user, nsx_password)
    super(nsxmgr, nsx_user, nsx_password)
    @nsx_type = NSXConstants::NSXT
end

Public Instance Methods

add_headers(aditional_headers = []) click to toggle source

Prepare headers

# File lib/nsxt_client.rb, line 72
def add_headers(aditional_headers = [])
    headers = NSXConstants::HEADER_JSON.clone
    unless aditional_headers.empty?
        aditional_headers.each do |header|
            headers[header.keys[0]] = header.values[0]
        end
    end
    headers
end
delete(url, aditional_headers = [], valid_codes = []) click to toggle source
# File lib/nsxt_client.rb, line 155
def delete(url, aditional_headers = [], valid_codes = [])
    if valid_codes.empty?
        valid_codes = [NSXConstants::CODE_OK,
                       NSXConstants::CODE_NO_CONTENT]
    end
    uri = URI.parse(@nsxmgr + url)
    headers = add_headers(aditional_headers)
    request = Net::HTTP::Delete.new(uri.request_uri, headers)
    request.basic_auth(@nsx_user, @nsx_password)
    response = Net::HTTP.start(uri.host, uri.port, :use_ssl => true,
        :verify_mode => OpenSSL::SSL::VERIFY_NONE) do |https|
            https.request(request)
        end
    check_response(response, valid_codes)
end
get(url, aditional_headers = [], valid_codes = []) click to toggle source

METHODS

# File lib/nsxt_client.rb, line 83
def get(url, aditional_headers = [], valid_codes = [])
    if valid_codes.empty?
        valid_codes = [NSXConstants::CODE_OK,
                       NSXConstants::CODE_NO_CONTENT]
    end
    uri = URI.parse(@nsxmgr + url)
    headers = add_headers(aditional_headers)
    request = Net::HTTP::Get.new(uri.request_uri, headers)
    request.basic_auth(@nsx_user, @nsx_password)
    response = Net::HTTP.start(uri.host, uri.port, :use_ssl => true,
        :verify_mode => OpenSSL::SSL::VERIFY_NONE) do |https|
            https.request(request)
        end
    response = check_response(response, valid_codes)
    JSON.parse(response.body)
end
get_full_response(url, aditional_headers = [], valid_codes = []) click to toggle source
# File lib/nsxt_client.rb, line 100
def get_full_response(url, aditional_headers = [], valid_codes = [])
    if valid_codes.empty?
        valid_codes = [NSXConstants::CODE_OK,
                       NSXConstants::CODE_NO_CONTENT]
    end
    uri = URI.parse(@nsxmgr + url)
    headers = add_headers(aditional_headers)
    request = Net::HTTP::Get.new(uri.request_uri, headers)
    request.basic_auth(@nsx_user, @nsx_password)
    response = Net::HTTP.start(uri.host, uri.port, :use_ssl => true,
        :verify_mode => OpenSSL::SSL::VERIFY_NONE) do |https|
            https.request(request)
        end
    check_response(response, valid_codes)
end
get_token(url, aditional_headers = [], valid_codes = []) click to toggle source
# File lib/nsxt_client.rb, line 171
def get_token(url, aditional_headers = [], valid_codes = [])
    if valid_codes.empty?
        valid_codes = [NSXConstants::CODE_OK]
    end
    uri = URI.parse(@nsxmgr + url)
    headers = add_headers(aditional_headers)
    request = Net::HTTP::Post.new(uri.request_uri, headers)
    request.basic_auth(@nsx_user, @nsx_password)
    response = Net::HTTP.start(uri.host, uri.port, :use_ssl => true,
        :verify_mode => OpenSSL::SSL::VERIFY_NONE) do |https|
            https.request(request)
        end
    response = check_response(response, valid_codes)
    response.body
end
post(url, data, aditional_headers = [], valid_codes = []) click to toggle source

Return: id of the created object

# File lib/nsxt_client.rb, line 117
def post(url, data, aditional_headers = [], valid_codes = [])
    if valid_codes.empty?
        valid_codes = [NSXConstants::CODE_CREATED,
                       NSXConstants::CODE_OK]
    end
    uri = URI.parse(@nsxmgr + url)
    headers = add_headers(aditional_headers)
    request = Net::HTTP::Post.new(uri.request_uri, headers)
    request.body = data
    request.basic_auth(@nsx_user, @nsx_password)
    response = Net::HTTP.start(uri.host, uri.port, :use_ssl => true,
        :verify_mode => OpenSSL::SSL::VERIFY_NONE) do |https|
            https.request(request)
        end
    response = check_response(response, valid_codes)
    response_json = JSON.parse(response.body)
    response_json['id']
end
put(url, data, aditional_headers = [], valid_codes = []) click to toggle source
# File lib/nsxt_client.rb, line 136
def put(url, data, aditional_headers = [], valid_codes = [])
    if valid_codes.empty?
        valid_codes = [NSXConstants::CODE_CREATED,
                       NSXConstants::CODE_OK]
    end
    uri = URI.parse(@nsxmgr + url)
    headers = add_headers(aditional_headers)
    request = Net::HTTP::Put.new(uri.request_uri, headers)
    request.body = data
    request.basic_auth(@nsx_user, @nsx_password)
    response = Net::HTTP.start(uri.host, uri.port, :use_ssl => true,
        :verify_mode => OpenSSL::SSL::VERIFY_NONE) do |https|
            https.request(request)
        end
    response = check_response(response, valid_codes)
    response_json = JSON.parse(response.body)
    response_json['id']
end