Class: K3cloud::Configuration
- Inherits:
-
Object
- Object
- K3cloud::Configuration
- Defined in:
- lib/k3cloud/configuration.rb
Constant Summary collapse
- DEFAULT_LCID =
2052- DEFAULT_CONNECT_TIMEOUT =
30- DEFAULT_REQUEST_TIMEOUT =
60- DEFAULT_LOG_FORMAT =
:text- DEFAULT_RETRY_MAX =
3- DEFAULT_RETRY_INTERVAL =
1- DEFAULT_RETRY_BACKOFF =
2- REQUIRED_FIELDS =
%i[acct_id user_name app_id app_secret].freeze
Instance Attribute Summary collapse
-
#acct_id ⇒ Object
账套ID(即数据中心id).
-
#app_id ⇒ Object
第三方系统登录授权的应用ID.
-
#app_secret ⇒ Object
第三方系统登录授权的应用密钥.
-
#connect_timeout ⇒ Object
连接/请求超时(秒)。 verify_ssl 仅对 https 生效(http URL 自动跳过 SSL 校验); 私有云 https 自签证书时可设为 false 关闭校验,默认 true。.
-
#lcid ⇒ Object
账套语系,默认2052 2052: 简体中文 1033: 英文 3076: 繁体中文.
-
#log_format ⇒ Object
日志输出格式::text(默认,常规 Logger 格式)或 :json(每行一个 JSON).
-
#org_num ⇒ Object
组织编码,启用多组织时配置对应的组织编码才有效.
-
#password ⇒ Object
集成用户登录密码.
-
#request_timeout ⇒ Object
连接/请求超时(秒)。 verify_ssl 仅对 https 生效(http URL 自动跳过 SSL 校验); 私有云 https 自签证书时可设为 false 关闭校验,默认 true。.
-
#retry_backoff ⇒ Object
请求重试:对超时与 5xx 进行重试。retry_max=0 表示不重试.
-
#retry_interval ⇒ Object
请求重试:对超时与 5xx 进行重试。retry_max=0 表示不重试.
-
#retry_max ⇒ Object
请求重试:对超时与 5xx 进行重试。retry_max=0 表示不重试.
-
#server_url ⇒ Object
服务Url地址(私有云必须配置金蝶云星空产品地址,K3Cloud/结尾。若为公有云则必须置空).
-
#user_name ⇒ Object
第三方系统登录授权的集成用户名称.
-
#verify_ssl ⇒ Object
连接/请求超时(秒)。 verify_ssl 仅对 https 生效(http URL 自动跳过 SSL 校验); 私有云 https 自签证书时可设为 false 关闭校验,默认 true。.
Class Method Summary collapse
- .default ⇒ Object
-
.reset_default! ⇒ Object
测试或重新配置时重置默认配置.
Instance Method Summary collapse
-
#initialize(options = {}) {|_self| ... } ⇒ Configuration
constructor
A new instance of Configuration.
-
#validate! ⇒ Object
校验必填字段。nil 视为未配置,空串视为兼容历史不阻断。.
Constructor Details
#initialize(options = {}) {|_self| ... } ⇒ Configuration
Returns a new instance of Configuration.
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/k3cloud/configuration.rb', line 55 def initialize( = {}) @acct_id = [:acct_id] @user_name = [:user_name] @password = [:password] @app_id = [:app_id] @app_secret = [:app_secret] @server_url = [:server_url] @org_num = [:org_num] @lcid = .fetch(:lcid, DEFAULT_LCID) @connect_timeout = .fetch(:connect_timeout, DEFAULT_CONNECT_TIMEOUT) @request_timeout = .fetch(:request_timeout, DEFAULT_REQUEST_TIMEOUT) @verify_ssl = .fetch(:verify_ssl, true) @log_format = .fetch(:log_format, DEFAULT_LOG_FORMAT) @retry_max = .fetch(:retry_max, DEFAULT_RETRY_MAX) @retry_interval = .fetch(:retry_interval, DEFAULT_RETRY_INTERVAL) @retry_backoff = .fetch(:retry_backoff, DEFAULT_RETRY_BACKOFF) yield(self) if block_given? end |
Instance Attribute Details
#acct_id ⇒ Object
账套ID(即数据中心id)
11 12 13 |
# File 'lib/k3cloud/configuration.rb', line 11 def acct_id @acct_id end |
#app_id ⇒ Object
第三方系统登录授权的应用ID
26 27 28 |
# File 'lib/k3cloud/configuration.rb', line 26 def app_id @app_id end |
#app_secret ⇒ Object
第三方系统登录授权的应用密钥
29 30 31 |
# File 'lib/k3cloud/configuration.rb', line 29 def app_secret @app_secret end |
#connect_timeout ⇒ Object
连接/请求超时(秒)。 verify_ssl 仅对 https 生效(http URL 自动跳过 SSL 校验); 私有云 https 自签证书时可设为 false 关闭校验,默认 true。
37 38 39 |
# File 'lib/k3cloud/configuration.rb', line 37 def connect_timeout @connect_timeout end |
#lcid ⇒ Object
账套语系,默认2052 2052: 简体中文 1033: 英文 3076: 繁体中文
17 18 19 |
# File 'lib/k3cloud/configuration.rb', line 17 def lcid @lcid end |
#log_format ⇒ Object
日志输出格式::text(默认,常规 Logger 格式)或 :json(每行一个 JSON)
40 41 42 |
# File 'lib/k3cloud/configuration.rb', line 40 def log_format @log_format end |
#org_num ⇒ Object
组织编码,启用多组织时配置对应的组织编码才有效
32 33 34 |
# File 'lib/k3cloud/configuration.rb', line 32 def org_num @org_num end |
#password ⇒ Object
集成用户登录密码
23 24 25 |
# File 'lib/k3cloud/configuration.rb', line 23 def password @password end |
#request_timeout ⇒ Object
连接/请求超时(秒)。 verify_ssl 仅对 https 生效(http URL 自动跳过 SSL 校验); 私有云 https 自签证书时可设为 false 关闭校验,默认 true。
37 38 39 |
# File 'lib/k3cloud/configuration.rb', line 37 def request_timeout @request_timeout end |
#retry_backoff ⇒ Object
请求重试:对超时与 5xx 进行重试。retry_max=0 表示不重试
43 44 45 |
# File 'lib/k3cloud/configuration.rb', line 43 def retry_backoff @retry_backoff end |
#retry_interval ⇒ Object
请求重试:对超时与 5xx 进行重试。retry_max=0 表示不重试
43 44 45 |
# File 'lib/k3cloud/configuration.rb', line 43 def retry_interval @retry_interval end |
#retry_max ⇒ Object
请求重试:对超时与 5xx 进行重试。retry_max=0 表示不重试
43 44 45 |
# File 'lib/k3cloud/configuration.rb', line 43 def retry_max @retry_max end |
#server_url ⇒ Object
服务Url地址(私有云必须配置金蝶云星空产品地址,K3Cloud/结尾。若为公有云则必须置空)
8 9 10 |
# File 'lib/k3cloud/configuration.rb', line 8 def server_url @server_url end |
#user_name ⇒ Object
第三方系统登录授权的集成用户名称
20 21 22 |
# File 'lib/k3cloud/configuration.rb', line 20 def user_name @user_name end |
#verify_ssl ⇒ Object
连接/请求超时(秒)。 verify_ssl 仅对 https 生效(http URL 自动跳过 SSL 校验); 私有云 https 自签证书时可设为 false 关闭校验,默认 true。
37 38 39 |
# File 'lib/k3cloud/configuration.rb', line 37 def verify_ssl @verify_ssl end |
Class Method Details
.default ⇒ Object
85 86 87 |
# File 'lib/k3cloud/configuration.rb', line 85 def default @default ||= Configuration.new end |
.reset_default! ⇒ Object
测试或重新配置时重置默认配置
90 91 92 |
# File 'lib/k3cloud/configuration.rb', line 90 def reset_default! @default = nil end |
Instance Method Details
#validate! ⇒ Object
校验必填字段。nil 视为未配置,空串视为兼容历史不阻断。
76 77 78 79 80 81 82 |
# File 'lib/k3cloud/configuration.rb', line 76 def validate! missing = REQUIRED_FIELDS.select { |f| public_send(f).nil? } return if missing.empty? raise K3cloud::ConfigurationError, "K3cloud configuration missing: #{missing.join(", ")}. Please set them in K3cloud.configure." end |