Class: Opendaylight::API
- Inherits:
-
Object
- Object
- Opendaylight::API
- Defined in:
- lib/opendaylight.rb
Class Method Summary collapse
- .build_options(tpSrc: nil, protocol: nil, vlanId: nil, id: nil, type: "OF", vlanPriority: nil, idleTimeout: nil, priority: "500", ingressPort: nil, tosBits: nil, name: nil, hardTimeout: nil, dlDst: nil, installInHW: "true", etherType: "0x800", actions: nil, cookie: nil, dlSrc: nil, nwSrc: nil, nwDst: nil, tpDst: nil, username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default") ⇒ Object
- .deleteflow(**params) ⇒ Object
- .hostTracker(username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default") ⇒ Object
- .listFlows(username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default") ⇒ Object
- .makeflow(**params) ⇒ Object
- .statistics(username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default", stats: "flow") ⇒ Object
- .topology(username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default") ⇒ Object
Class Method Details
.build_options(tpSrc: nil, protocol: nil, vlanId: nil, id: nil, type: "OF", vlanPriority: nil, idleTimeout: nil, priority: "500", ingressPort: nil, tosBits: nil, name: nil, hardTimeout: nil, dlDst: nil, installInHW: "true", etherType: "0x800", actions: nil, cookie: nil, dlSrc: nil, nwSrc: nil, nwDst: nil, tpDst: nil, username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default") ⇒ Object
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/opendaylight.rb', line 55 def self.(tpSrc: nil, protocol: nil, vlanId: nil, id: nil, type: "OF", vlanPriority: nil, idleTimeout: nil, priority: "500", ingressPort: nil, tosBits: nil, name: nil, hardTimeout: nil, dlDst: nil, installInHW: "true", etherType: "0x800", actions: nil, cookie: nil, dlSrc: nil, nwSrc: nil, nwDst: nil, tpDst: nil, username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default") auth = {username: username, password: password} = { url: url, containerName: containerName, type: type, id: id, name: name, request: { headers: {"Content-Type" => "application/json"}, body: { "tpSrc" => tpSrc, "protocol" => protocol, "vlanId" => vlanId, "node" => { "id" => id, "type" => type }, "vlanPriority" => vlanPriority, "idleTimeout" => idleTimeout, "priority" => priority, "ingressPort" => ingressPort, "tosBits" => tosBits, "name" => name, "hardTimeout" => hardTimeout, "dlDst" => dlDst, "installInHW" => installInHW, "etherType" => etherType, "actions" => [actions], "cookie" => , "dlSrc" => dlSrc, "nwSrc" => nwSrc, "nwDst" => nwDst, "tpDst" => tpDst }.to_json, basic_auth: auth } } end |
.deleteflow(**params) ⇒ Object
30 31 32 33 |
# File 'lib/opendaylight.rb', line 30 def self.deleteflow **params = params HTTParty.delete("#{options[:url]}controller/nb/v2/flowprogrammer/#{options[:containerName]}/node/#{options[:type]}/#{options[:id]}/staticFlow/#{options[:name]}",[:request]) end |
.hostTracker(username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default") ⇒ Object
40 41 42 43 |
# File 'lib/opendaylight.rb', line 40 def self.hostTracker(username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default") auth = {username: username, password: password} HTTParty.get("#{url}controller/nb/v2/hosttracker/#{containerName}/hosts/active", basic_auth: auth) end |
.listFlows(username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default") ⇒ Object
45 46 47 48 |
# File 'lib/opendaylight.rb', line 45 def self.listFlows(username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default") auth = {username: username, password: password} HTTParty.get("#{url}controller/nb/v2/flowprogrammer/#{containerName}", basic_auth: auth) end |
.makeflow(**params) ⇒ Object
25 26 27 28 |
# File 'lib/opendaylight.rb', line 25 def self.makeflow **params = params HTTParty.put("#{options[:url]}controller/nb/v2/flowprogrammer/#{options[:containerName]}/node/#{options[:type]}/#{options[:id]}/staticFlow/#{options[:name]}",[:request]) end |
.statistics(username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default", stats: "flow") ⇒ Object
50 51 52 53 |
# File 'lib/opendaylight.rb', line 50 def self.statistics(username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default", stats: "flow") auth = {username: username, password: password} HTTParty.get("#{url}controller/nb/v2/statistics/#{containerName}/#{stats}", basic_auth: auth) end |
.topology(username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default") ⇒ Object
35 36 37 38 |
# File 'lib/opendaylight.rb', line 35 def self.topology(username: Opendaylight.configuration.username, password: Opendaylight.configuration.password, url: Opendaylight.configuration.url, containerName: "default") auth = {username: username, password: password} HTTParty.get("#{url}controller/nb/v2/topology/#{containerName}", basic_auth: auth) end |