Class: Mongo::Protocol::Query::Upconverter
- 继承:
-
对象
- 对象
- Mongo::Protocol::Query::Upconverter
- 定义于:
- lib/ Mongo/ 协议/ 查询
Overview
将旧版查询消息转换为相应的 OP_COMMAND 样式消息。
常量摘要折叠
- OPTION_MAPPINGS =
这些选项到 find 命令选项的映射。
{ 项目: ' 投影 ', skip: 'skip', limit: 'limit', batch_size: ' batchSize ' }.冻结
- SPECIAL_FIELD_MAPPINGS =
{ :$readPreference => ' $readPreference ', :$orderby => 'sort', :$hint => ' hint ', :$comment => 'comment', :$returnKey => 'returnKey', :$ 快照 => ' 快照 ', :$maxScan => ' maxScan ', :$max => 'max', :$min => 'min', :$maxTimeMS => 'maxTimeMS', :$showDiskLoc => ' showRecordId ', :$explain => ' explain ' }.冻结
- FLAG_MAPPINGS =
将标志映射到 find 命令选项。
{ tailable_cursor: ' tailable ', oplog_replay: ' oplogReplay ', no_cursor_timeout: ' noCursorTimeout ', await_data: 'awaitData', 部分: ' allowPartialResults ' }.冻结
实例属性摘要折叠
-
#集合⇒ string
只读
集合集合的名称。
-
#过滤=" BSON::Document, Hash
只读
筛选器 查询筛选器或命令。
-
# flags ⇒ Array<Symbol>
只读
标志 标志。
-
#options ⇒ BSON::Document, Hash
只读
选项 选项。
实例方法摘要折叠
-
#命令⇒ BSON::Document
获取上转换命令。
-
# command_name ⇒ string
获取命令的名称。
-
#initialize (collection, filter, options, flags) ⇒ 上转换器
构造函数
实例化上转换器。
构造函数详情
#initialize (集合, 过滤, options, flags) ⇒ Upconverter
实例化上转换器。
279 280 281 282 283 284 285 286 287 288 289 290 |
# File 'lib/ Mongo/ 协议/ 查询', line 279 def 初始化(集合, 筛选器, , flags) # 虽然文档字符串声明哈希和BSON::Documents # 是可以接受的,此类期望筛选器和选项为 # 包含符号键,这不是操作层生成的。 提高 ArgumentError, '筛选器必须提供无关紧要的访问权限' 除非 筛选器.is_a?(BSON::文档) 提高 ArgumentError, '选项必须提供无关紧要的访问' 除非 .is_a?(BSON::文档) @collection = 集合 @filter = 筛选器 @options = @flags = flags end |
实例属性详细信息
#集合⇒ string (只读)
返回 collection 集合的名称。
257 258 259 |
# File 'lib/ Mongo/ 协议/ 查询', line 257 def 集合 @collection end |
# filter ⇒ BSON::Document , Hash (readonly)
返回过滤查询过滤或命令。
260 261 262 |
# File 'lib/ Mongo/ 协议/ 查询', line 260 def 筛选器 @filter end |
# flags ⇒ Array< Symbol > (只读)
返回 flags 标志。
266 267 268 |
# File 'lib/ Mongo/ 协议/ 查询', line 266 def flags @flags end |
# options ⇒ BSON::Document , Hash (readonly)
返回 options 选项。
263 264 265 |
# File 'lib/ Mongo/ 协议/ 查询', line 263 def @options end |
实例方法详细信息
#command ⇒ BSON::Document
获取上转换命令。
300 301 302 |
# File 'lib/ Mongo/ 协议/ 查询', line 300 def 命令 命令? ? op_command : find_command end |
# command_name ⇒ string
获取命令的名称。如果集合为$cmd ,则为过滤器中的第一个键,否则为 find 。
313 314 315 |
# File 'lib/ Mongo/ 协议/ 查询', line 313 def command_name ((筛选器[:$query] || !命令?) ? :find : 筛选器.密钥.first).to_s end |