Class: Device::Setting
- Inherits:
-
Object
- Object
- Device::Setting
- Defined in:
- lib/device/setting.rb
Constant Summary collapse
- FILE_PATH =
"./main/config.dat"- HOST_PRODUCTION =
"switch.cloudwalk.io"- HOST_STAGING =
"switch-staging.cloudwalk.io"- PORT_TCP =
"31415"- PORT_TCP_SSL =
"31416"- DEFAULT =
{ "host" => HOST_PRODUCTION, "host_port" => PORT_TCP_SSL, "ssl" => "1", #COMM "media_primary" => "", #COMM "user" => "", #GPRS "apn_password" => "", #GPRS "apn" => "", #GPRS "sim_pin" => "", #GPRS "sim_slot" => "0", #GPRS "sim_dual" => "0", #GPRS "wifi_password" => "", #WIFI "authentication" => "", #WIFI "essid" => "", #WIFI "bssid" => "", #WIFI "cipher" => "", #WIFI "mode" => "", #WIFI "channel" => "", #WIFI "media" => "", #COMM "ip" => "", #COMM "gateway" => "", #COMM "dns1" => "", #COMM "dns2" => "", #COMM "subnet" => "", #COMM "phone" => "", #PPOE "modem_speed" => "", #PPOE "logical_number" => "", #SYS "network_configured" => "", #SYS "touchscreen" => "", #SYS "environment" => "", #SYS "attach_gprs_timeout" => "", #COMM "attach_tries" => "", #COMM "notification_socket_timeout" => "", #SYS Period to create fiber "notification_timeout" => "", #SYS Time to wait message to read "notification_interval" => "", #SYS Check interval "notification_stream_timeout" => "", #SYS Time to wait stream message to read "cw_switch_version" => "", #SYS "cw_pos_timezone" => "", #SYS "tcp_recv_timeout" => "14", #COMM "iso8583_recv_tries" => "0", #COMM "iso8583_send_tries" => "0", #COMM "crypto_dukpt_slot" => "", #SYS "ctls" => "", #SYS "locale" => "pt-br", #SYS "heartbeat" => "", #SYS "boot" => "1", #SYS "company_name" => "", #SYS "metadata_timestamp" => "" }
Class Attribute Summary collapse
-
.file ⇒ Object
Returns the value of attribute file.
Class Method Summary collapse
- .attach_gprs_timeout ⇒ Object
- .check_environment! ⇒ Object
- .heartbeat ⇒ Object
- .method_missing(method, *args, &block) ⇒ Object
- .production? ⇒ Boolean
- .setup ⇒ Object
- .staging? ⇒ Boolean
-
.tcp_recv_timeout ⇒ Object
Custom Attributes.
- .to_production! ⇒ Object
- .to_staging! ⇒ Object
- .update_attributes(*args) ⇒ Object
Class Attribute Details
.file ⇒ Object
Returns the value of attribute file.
61 62 63 |
# File 'lib/device/setting.rb', line 61 def file @file end |
Class Method Details
.attach_gprs_timeout ⇒ Object
128 129 130 131 |
# File 'lib/device/setting.rb', line 128 def self.attach_gprs_timeout value = (DaFunk::ParamsDat.file["attach_gprs_timeout"] || method_missing(:attach_gprs_timeout)) value.to_s.empty? ? nil : value.to_s.to_i end |
.check_environment! ⇒ Object
75 76 77 78 79 80 81 |
# File 'lib/device/setting.rb', line 75 def self.check_environment! if self.staging? self.to_staging! else self.to_production! end end |
.heartbeat ⇒ Object
133 134 135 |
# File 'lib/device/setting.rb', line 133 def self.heartbeat DaFunk::ParamsDat.file["heartbeat"] || method_missing(:heartbeat) end |
.method_missing(method, *args, &block) ⇒ Object
111 112 113 114 115 116 117 118 119 120 121 |
# File 'lib/device/setting.rb', line 111 def self.method_missing(method, *args, &block) setup unless @file param = method.to_s if @file[param] @file[param] elsif (param[-1..-1] == "=" && @file[param[0..-2]]) @file[param[0..-2]] = args.first else super end end |
.production? ⇒ Boolean
83 84 85 |
# File 'lib/device/setting.rb', line 83 def self.production? self.environment == "production" end |
.setup ⇒ Object
69 70 71 72 73 |
# File 'lib/device/setting.rb', line 69 def self.setup @file = FileDb.new(FILE_PATH, DEFAULT) self.check_environment! @file end |
.staging? ⇒ Boolean
87 88 89 |
# File 'lib/device/setting.rb', line 87 def self.staging? self.environment == "staging" end |
.tcp_recv_timeout ⇒ Object
Custom Attributes
124 125 126 |
# File 'lib/device/setting.rb', line 124 def self.tcp_recv_timeout DaFunk::ParamsDat.file["tcp_recv_timeout"] || method_missing(:tcp_recv_timeout) end |
.to_production! ⇒ Object
91 92 93 94 95 96 97 |
# File 'lib/device/setting.rb', line 91 def self.to_production! if self.environment != "production" @file.update_attributes("company_name" => "", "environment" => "production", "host" => HOST_PRODUCTION) return true end false end |
.to_staging! ⇒ Object
99 100 101 102 103 104 105 |
# File 'lib/device/setting.rb', line 99 def self.to_staging! if self.environment != "staging" @file.update_attributes("company_name" => "", "environment" => "staging", "host" => HOST_STAGING) return true end false end |
.update_attributes(*args) ⇒ Object
107 108 109 |
# File 'lib/device/setting.rb', line 107 def self.update_attributes(*args) @file.update_attributes(*args) end |