class OpenStack::Network::Connection

Attributes

connection[RW]

Public Class Methods

new(connection) click to toggle source
# File lib/openstack/network/connection.rb, line 8
def initialize(connection)
  @connection = connection
  OpenStack::Authentication.init(@connection)
end

Public Instance Methods

authok?() click to toggle source

Returns true if the authentication was successful and returns false otherwise.

cs.authok?
=> true
# File lib/openstack/network/connection.rb, line 17
def authok?
  @connection.authok
end
create_network(name) click to toggle source
# File lib/openstack/network/connection.rb, line 34
def create_network(name)
  req_body = JSON.generate({"network"=>{"name"=>name}})
  response = @connection.req("POST", "/networks", {:data=>req_body})
  OpenStack::Network::Network.new(JSON.parse(response.body)["network"])
end
create_port(network_id, opts={}) click to toggle source
# File lib/openstack/network/connection.rb, line 84
def create_port(network_id, opts={})
  body_hash = {"port"=>{"network_id"=> network_id}}
  body_hash["port"].merge!(opts) #fixme - validation?
  req_body = JSON.generate(body_hash)
  response = @connection.req("POST", "/ports", {:data=>req_body})
  OpenStack::Network::Port.new(JSON.parse(response.body)["port"])
end
create_subnet(network_id, cidr, ip_version="4", opts={}) click to toggle source
# File lib/openstack/network/connection.rb, line 58
def create_subnet(network_id, cidr, ip_version="4", opts={})
  body_hash = {"subnet"=>{"network_id"=> network_id, "cidr"=>cidr, "ip_version"=>ip_version}}
  body_hash["subnet"].merge!(opts) #fixme - validation?
  req_body = JSON.generate(body_hash)
  response = @connection.req("POST", "/subnets", {:data=>req_body})
  OpenStack::Network::Subnet.new(JSON.parse(response.body)["subnet"])
end
delete_network(id) click to toggle source
# File lib/openstack/network/connection.rb, line 40
def delete_network(id)
  @connection.req("DELETE", "/networks/#{id}")
  true
end
delete_port(id) click to toggle source
# File lib/openstack/network/connection.rb, line 92
def delete_port(id)
  @connection.req("DELETE", "/ports/#{id}")
  true
end
delete_subnet(id) click to toggle source
# File lib/openstack/network/connection.rb, line 66
def delete_subnet(id)
  @connection.req("DELETE", "/subnets/#{id}")
  true
end
get_network(network_id) click to toggle source
# File lib/openstack/network/connection.rb, line 28
def get_network(network_id)
  response = @connection.req("GET", "/networks/#{network_id}")
  OpenStack::Network::Network.new(JSON.parse(response.body)["network"])
end
Also aliased as: network
get_port(port_id) click to toggle source
# File lib/openstack/network/connection.rb, line 78
def get_port(port_id)
  response = @connection.req("GET", "/ports/#{port_id}")
  OpenStack::Network::Port.new(JSON.parse(response.body)["port"])
end
Also aliased as: port
get_subnet(subnet_id) click to toggle source
# File lib/openstack/network/connection.rb, line 52
def get_subnet(subnet_id)
  response = @connection.req("GET", "/subnets/#{subnet_id}")
  OpenStack::Network::Subnet.new(JSON.parse(response.body)["subnet"])
end
Also aliased as: subnet
list_networks() click to toggle source
# File lib/openstack/network/connection.rb, line 21
def list_networks
  response = @connection.req("GET", "/networks")
  nets_hash = JSON.parse(response.body)["networks"]
  nets_hash.inject([]){|res, current| res << OpenStack::Network::Network.new(current); res}
end
Also aliased as: networks
list_ports() click to toggle source
# File lib/openstack/network/connection.rb, line 71
def list_ports
  response = @connection.req("GET", "/ports")
  ports_hash = JSON.parse(response.body)["ports"]
  ports_hash.inject([]){|res, current| res << OpenStack::Network::Port.new(current); res}
end
Also aliased as: ports
list_subnets() click to toggle source
# File lib/openstack/network/connection.rb, line 45
def list_subnets
  response = @connection.req("GET", "/subnets")
  nets_hash = JSON.parse(response.body)["subnets"]
  nets_hash.inject([]){|res, current| res << OpenStack::Network::Subnet.new(current); res}
end
Also aliased as: subnets
network(network_id)
Alias for: get_network
networks()
Alias for: list_networks
port(port_id)
Alias for: get_port
ports()
Alias for: list_ports
subnet(subnet_id)
Alias for: get_subnet
subnets()
Alias for: list_subnets