类:Mongo::Server::AppMetadata Private
- 继承:
-
对象
- 对象
- Mongo::Server::AppMetadata
- 扩展方式:
- 可转发
- 定义于:
- 构建/ruby-driver-v2.19/lib/ mongo / 服务器/app_metadata.rb ,
构建/ruby-driver-v2.19/lib/ mongo / 服务器/app_metadata/platform.rb,
构建/ruby-driver-v2.19/lib/ mongo / 服务器/app_metadata/truncator.rb,
构建/ruby-driver-v2.19/lib/ mongo / 服务器/app_metadata/environment.rb
Overview
此类是私有 API 的一部分。 应尽可能避免使用此类,因为它将来可能会被删除或更改。
在握手期间发送到服务器的应用程序元数据,
when a new connection is established.
直接已知子类
在命名空间下定义
常量摘要折叠
- MAX_APP_NAME_SIZE =
此常量是私有 API 的一部分。 应尽可能避免使用此常量,因为它将来可能会被删除或更改。
应用程序名称的最大字节大小。
128
- DRIVER_NAME =
此常量是私有 API 的一部分。 应尽可能避免使用此常量,因为它将来可能会被删除或更改。
驱动程序名称。
'mongo-Ruby-driver'
- AUTH_OPTION_KEYS =
此常量是私有 API 的一部分。 应尽可能避免使用此常量,因为它将来可能会被删除或更改。
影响身份验证机制协商的选项键。
%i[ user auth_source auth_mech].冻结
- 用途 =
此常量是私有 API 的一部分。 应尽可能避免使用此常量,因为它将来可能会被删除或更改。
可能的连接目的。
%i[ 应用程序 监控 push_monitor ].冻结
实例属性摘要折叠
-
#平台⇒ string
只读
private
实例化对象时给出的平台信息。
-
# Purpose ⇒ 符号
只读
private
创建此应用元数据的连接目的。
-
#server_api ⇒ Hash | nil
只读
private
请求的服务器API版本。
-
#wrapping_libraries ⇒ Array<Hash> | nil
只读
private
有关包装驱动程序的库的信息。
实例方法摘要折叠
-
#client_document ⇒ BSON::Document
private
获取BSON ::Document,用作握手文档中“客户端”密钥的值。
-
#initialize (options = {}) ⇒ AppMetadata
构造函数
private
实例化新的 AppMetadata对象。
-
#validated_document ⇒ BSON::Document
private
获取 BSON::Document 形式的元数据,作为握手过程的一部分发送到该元数据。
构造函数详情
#initialize (options = {}) ⇒ AppMetadata
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
实例化新的 AppMetadata对象。
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 服务器/app_metadata.rb', 第74行 def 初始化( = {}) @app_name = [:app_name].to_s if [:app_name] @platform = [:platform] @ Purpose = check_ Purpose!([:目的]) @compressors = [:compressors] || [] @wrapping_libraries = [:wrapping_libraries] @server_api = [:server_api] return 除非 [: user] && ![:auth_mech] auth_db = [:auth_source] || ' admin ' @request_auth_mech = " #{ auth_db } . #{ [ :user ] } " end |
实例属性详细信息
#平台⇒ string (只读)
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
返回 实例化对象时给出的平台信息。
96 97 98 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 服务器/app_metadata.rb', 第96行 def 平台 @platform end |
# Purpose ⇒符号(只读)
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
返回 创建此应用元数据的连接用途。
92 93 94 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 服务器/app_metadata.rb', 第92行 def 用途 @ Purpose end |
# server_api ⇒哈希 | nil (只读)
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
返回 请求的服务器API版本。
哈希可以包含以下项目:
-
:version – string
-
:strict – 布尔值
-
:deprecation_errors – 布尔值。
104 105 106 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 服务器/app_metadata.rb', 第104行 def server_api @server_api end |
#wrapping_libraries ⇒ Array<Hash> | nil (只读)
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
返回有关包装驾驶员的库的信息。
108 109 110 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 服务器/app_metadata.rb', 第108行 def wrapping_libraries @wrapping_libraries end |
实例方法详细信息
#client_document ⇒ BSON::Document
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
获取BSON ::Document,用作握手文档中“客户端”密钥的值。
128 129 130 131 132 133 134 135 136 137 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 服务器/app_metadata.rb', 第128行 def client_document @client_document ||= BSON::文档.new.点击 do |doc| doc[:应用程序] = { 名称: @app_name } if @app_name doc[:driver] = driver_doc doc[:os] = os_doc doc[:platform] = platform_string env_doc.点击 { |env| doc[:env] = env if env } end end |
#validated_document ⇒ BSON::Document
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
获取BSON ::Document 形式的元数据,作为握手的一部分发送到该元数据。 该文档应附加适当的握手命令。
此方法可确保元数据有效。
119 120 121 122 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo / 服务器/app_metadata.rb', 第119行 def valid_document validate! 文档 end |