类:Mongo::TopologyVersion Private

继承:
BSON::Document
  • 对象
显示全部
定义于:
lib/ Mongo/topology_version.rb

Overview

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

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

实例方法摘要折叠

构造函数详情

#初始化(doc) ⇒ TopologyVersion

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

返回 TopologyVersion 的新实例。



23
24
25
26
27
28
29
30
# File 'lib/ Mongo/topology_version.rb', line 23

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

  
end

实例方法详细信息

# counter整数

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

返回 计数器。

返回:

  • ( Integer )

    计数器。



38
39
40
# File 'lib/ Mongo/topology_version.rb', line 38

def 计数器
  self[' counter ']
end

# gt? (其他)→ true | false

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

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

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

参数:

返回:

  • ( true | false )

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



52
53
54
55
56
57
58
# File 'lib/ Mongo/topology_version.rb', line 52

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

# gte? (其他)→ true | false

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

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

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

参数:

返回:

  • ( true | false )

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



70
71
72
73
74
75
76
# File 'lib/ Mongo/topology_version.rb', line 70

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

# process_id =" BSON::ObjectId "

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

返回 进程 ID。

返回:

  • ( BSON::ObjectId )

    进程 ID。



33
34
35
# File 'lib/ Mongo/topology_version.rb', line 33

def process_id
  self['processId']
end

#to_docBSON::Document

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

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

返回:

  • ( BSON::Document )

    文档。



83
84
85
# File 'lib/ Mongo/topology_version.rb', line 83

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