类:Mongo::Server::AppMetadata::Truncator Private

继承:
对象
  • 对象
显示全部
定义于:
build/Ruby-driver-v 2.19 /lib/mongo/server/app_metadata/truncator.rb

Overview

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

实现握手规范中描述的元数据截断逻辑。

由于:

  • 2.0.0

常量摘要折叠

MAX_DOCUMENT_SIZE =

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

应用程序元数据文档的最大字节大小。

由于:

  • 2.0.0

512

实例属性摘要折叠

实例方法摘要折叠

构造函数详情

#初始化(文档) ⇒截断符

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

注意:

就地修改文档;如果希望保持原始文件不变,则必须在将其发送到截断器之前对其进行深度克隆。

创建新的截断器实例,并尝试对给定文档实施最大文档大小。

参数:

  • 文档 ( BSON::Document )

    要(可能)截断的文档。

由于:

  • 2.0.0



40
41
42
43
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server/app_metadata/truncator.rb', 第40行

def 初始化(文档)
  @document = 文档
  try_truncate!
end

实例属性详细信息

# documentBSON::Document (只读)

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

返回被截断的文档。

返回:

  • ( BSON::Document )

    文档被截断。

由于:

  • 2.0.0



26
27
28
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server/app_metadata/truncator.rb', 第26行

def 文档
  @document
end

实例方法详细信息

#可以吗?true | false

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

文档是否符合最大文档大小的要求。

返回:

  • ( true | false )

    文档是否正常。

由于:

  • 2.0.0



56
57
58
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server/app_metadata/truncator.rb', 第56行

def 确定吗?
  size <= MAX_DOCUMENT_SIZE
end

# size =" Integer "(整数)

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

作为序列化 BSON 文档的当前文档大小(以字节为单位)。

返回:

  • ( Integer )

    文档的大小

由于:

  • 2.0.0



49
50
51
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server/app_metadata/truncator.rb', 第49行

def size
  @document.to_bson.to_s.长度
end