类:Mongo::TopologyVersion Private

继承:
BSON::Document
  • 对象
显示全部
定义于:
构建/ruby-driver-v2.19/lib/ mongo /topology_version.rb

Overview

此类是私有 API 的一部分。 应尽可能避免使用此类,因为它将来可能会被删除或更改。

TopologyVersion 封装了从 hello 响应获取的 topologyVersion 文档,而不是从类似 master 的 OperationFailure 错误获取的。

实例方法摘要折叠

构造函数详情

#初始化(doc) ⇒ TopologyVersion

此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。

返回 TopologyVersion 的新实例。



24
25
26
27
28
29
30
31
32
33
34
35
# File 'build/Ruby-driver-v 2.19 /lib/mongo/topology_version.rb', 第24行

def 初始化(doc)
  if Lint.已启用?
    除非 doc['processId']
      提高 ArgumentError, 创建不带 processId字段的拓扑结构版本
    end
    除非 doc[' counter ']
      提高 ArgumentError, 创建不带计数器字段的拓扑结构版本
    end
  end

  
end

实例方法详细信息

# counter整数

此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。

返回 计数器。

返回:

  • ( Integer )

    计数器。



43
44
45
# File 'build/Ruby-driver-v 2.19 /lib/mongo/topology_version.rb', 第43行

def 计数器
  self[' counter ']
end

# gt? (其他)→ true | false

此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。

返回此拓扑结构版本是否可能比另一个拓扑结构版本更新。

请注意,拓扑结构版本没有总排序 - 给定两个拓扑结构版本,每个版本都可能比另一个版本“可能更新”。

参数:

返回:

  • ( true | false )

    此拓扑结构版本是否可能较新。



57
58
59
60
61
62
63
# File 'build/Ruby-driver-v 2.19 /lib/mongo/topology_version.rb', 第57行

def gt?(其他)
  if process_id != 其他.process_id
    true
  else
    计数器 > 其他.计数器
  end
end

# gte? (其他)→ true | false

此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。

返回此拓扑结构版本是否可能高于或等于另一个拓扑结构版本。

请注意,拓扑结构版本没有总排序 - 给定两个拓扑结构版本,每个版本都可能比另一个版本“可能更新”。

参数:

返回:

  • ( true | false )

    此拓扑结构版本是否可能较新。



75
76
77
78
79
80
81
# File 'build/Ruby-driver-v 2.19 /lib/mongo/topology_version.rb', 第75行

def gte?(其他)
  if process_id != 其他.process_id
    true
  else
    计数器 >= 其他.计数器
  end
end

# process_id =" BSON::ObjectId "

此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。

返回 进程 ID。

返回:

  • ( BSON::ObjectId )

    进程 ID。



38
39
40
# File 'build/Ruby-driver-v 2.19 /lib/mongo/topology_version.rb', 第38行

def process_id
  self['processId']
end

#to_docBSON::Document

此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。

将该对象转换为适合发送到服务器的文档。

返回:

  • ( BSON::Document )

    文档。



88
89
90
# File 'build/Ruby-driver-v 2.19 /lib/mongo/topology_version.rb', 第88行

def to_doc
  BSON::文档.new(self).合并(merge)(计数器: BSON::Int64.new(计数器))
end