class Cradlepoint::Router
Attributes
config_status[RW]
data[RW]
description[RW]
ecm_configuration_manager_data[RW]
ecm_configuration_manager_uri[RW]
ecm_configuration_uri[RW]
ecm_firmware_uri[RW]
full_product_name[RW]
group_name[RW]
id[RW]
ip_address[RW]
mac[RW]
name[RW]
stream_usage_in[RW]
stream_usage_out[RW]
stream_usage_period[RW]
Public Class Methods
index()
click to toggle source
# File lib/cradlepoint/router.rb, line 39 def self.index build_array_of_routers_from_response(Cradlepoint.make_request(:get, build_url(rel_url))) end
new(id = nil, options = {})
click to toggle source
# File lib/cradlepoint/router.rb, line 10 def initialize(id = nil, options = {}) self.id = id options.each { |k, v| send("#{ k }=", v) if v } end
rel_url()
click to toggle source
# File lib/cradlepoint/router.rb, line 15 def self.rel_url '/routers' end
rel_url_for_configuration_managers(id)
click to toggle source
# File lib/cradlepoint/router.rb, line 31 def self.rel_url_for_configuration_managers(id) "#{ Cradlepoint::Router.rel_url_with_id(id) }/confguration_managers/" end
rel_url_with_id(id)
click to toggle source
# File lib/cradlepoint/router.rb, line 23 def self.rel_url_with_id(id) "#{ rel_url }/#{ id }/" end
Private Class Methods
build_array_of_routers_from_response(response)
click to toggle source
# File lib/cradlepoint/router.rb, line 131 def self.build_array_of_routers_from_response(response) return false unless successful_response?(response) response.map { |r| create_and_assign_attributes_from_data(r) } end
create_and_assign_attributes_from_data(data)
click to toggle source
# File lib/cradlepoint/router.rb, line 136 def self.create_and_assign_attributes_from_data(data) return unless ecm_object_blob?(data) router = Cradlepoint::Router.new(data[:id], data: data) router.assign_attributes_from_data router end
Public Instance Methods
apply_new_config(config_settings = {})
click to toggle source
# File lib/cradlepoint/router.rb, line 50 def apply_new_config(config_settings = {}) config = Cradlepoint::Config.new(self, config_settings) config.create_editor config.apply_config_to_editor config.remove_editor end
assign_attributes_from_data()
click to toggle source
# File lib/cradlepoint/router.rb, line 115 def assign_attributes_from_data return unless self.data and self.data.any? self.mac = self.data[:mac] self.name = self.data[:name] self.ip_address = self.data[:ip_address] self.config_status = self.data[:config_status] self.description = self.data[:description] self.full_product_name = self.data[:full_product_name] self.stream_usage_in = self.data[:stream_usage_in] self.stream_usage_out = self.data[:stream_usage_out] self.stream_usage_period = self.data[:stream_usage_period] end
configuration_manager_data()
click to toggle source
# File lib/cradlepoint/router.rb, line 57 def configuration_manager_data check_for_id_or_raise_error lazy_load_configuration_manager_data unless self.ecm_configuration_manager_data self.ecm_configuration_manager_data end
configuration_uri()
click to toggle source
# File lib/cradlepoint/router.rb, line 73 def configuration_uri lazy_load_router_data unless self.ecm_configuration_manager_uri lazy_load_configuration_manager_data unless self.ecm_configuration_uri self.ecm_configuration_uri end
firmware_data()
click to toggle source
# File lib/cradlepoint/router.rb, line 63 def firmware_data check_for_id_or_raise_error Cradlepoint.make_request(:get, build_url(firmware_uri.split('/api/v1').last)) if firmware_uri end
firmware_uri()
click to toggle source
# File lib/cradlepoint/router.rb, line 68 def firmware_uri lazy_load_router_data unless self.ecm_firmware_uri self.ecm_firmware_uri end
get()
click to toggle source
# File lib/cradlepoint/router.rb, line 43 def get check_for_id_or_raise_error self.data = Cradlepoint.make_request(:get, build_url(rel_url_with_id)) assign_attributes_from_data self.data end
get_configuration_editor_data()
click to toggle source
# File lib/cradlepoint/router.rb, line 107 def get_configuration_editor_data { account: '/api/v1' + Cradlepoint.account.rel_url_with_id, firmware: firmware_uri, router: '/api/v1' + rel_url_with_id } end
group()
click to toggle source
# File lib/cradlepoint/router.rb, line 79 def group get unless self.data and self.data.any? return nil unless self.data[:group] group_data = Cradlepoint.make_request(:get, build_url(self.data[:group].split('/api/v1').last)) return unless group_data self.group_name = group_data[:name] group_data end
group_list()
click to toggle source
# File lib/cradlepoint/router.rb, line 89 def group_list get unless self.data and self.data.any? return nil unless self.data[:group] Cradlepoint.make_request(:get, build_url(self.data[:group].split('/api/v1').last + '/routers')) end
lazy_load_configuration_manager_data()
click to toggle source
# File lib/cradlepoint/router.rb, line 102 def lazy_load_configuration_manager_data self.ecm_configuration_manager_data = Cradlepoint.make_request(:get, build_url(rel_url_for_configuration_managers)) self.ecm_configuration_uri = self.ecm_configuration_manager_data[:configuration_manager] end
lazy_load_router_data()
click to toggle source
# File lib/cradlepoint/router.rb, line 96 def lazy_load_router_data get # Grab the data from the api. self.ecm_firmware_uri = self.data[:actual_firmware] self.ecm_configuration_manager_uri = self.data[:configuration_manager] end
rel_url()
click to toggle source
# File lib/cradlepoint/router.rb, line 19 def rel_url Cradlepoint::Router.rel_url end
rel_url_for_configuration_managers()
click to toggle source
# File lib/cradlepoint/router.rb, line 35 def rel_url_for_configuration_managers Cradlepoint::Router.rel_url_with_id(id) end
rel_url_with_id()
click to toggle source
# File lib/cradlepoint/router.rb, line 27 def rel_url_with_id Cradlepoint::Router.rel_url_with_id(id) end
Private Instance Methods
check_for_id_or_raise_error()
click to toggle source
# File lib/cradlepoint/router.rb, line 143 def check_for_id_or_raise_error raise 'You must provide an ECM router id' if id.nil? end