类:Mongo::Grid::File::Info已弃用

继承:
对象
  • 对象
显示全部
定义于:
lib/mongo/grid/file/info.rb

Overview

已弃用。

请改用 FSBucket 上的“流” API 。将在驱动程序版本 3.0 中删除。

封装GridFS文件集合文件文档的行为。

由于:

  • 2.0.0

常量摘要折叠

集合 =

文件集合的名称。

由于:

  • 2.0.0

'的知识'
MAPPINGS =

用户提供的字段到数据库规范的映射。

由于:

  • 2.0.0

{
  chunk_size: :chunkSize,
  content_type: :contentType,
  文件名: :filename,
  _id: :_id,
  md5: :md 5,
  长度: :length,
  metadata: :metadata,
  upload_date: :uploadDate,
  aliases: :aliases
}.冻结
DEFAULT_CONTENT_TYPE =

存储文件的默认内容类型。

由于:

  • 2.0.0

'二进制/八位字节流'

实例属性摘要折叠

实例方法摘要折叠

构造函数详情

#初始化(文档) ⇒信息

创建新的文件信息文档。

例子:

创建新的文件信息文档。

Info.new(:filename => 'test.txt')

参数:

  • 文档 ( BSON::Document )

    要创建的文档。

由于:

  • 2.0.0



137
138
139
140
141
142
143
144
145
146
# File 'lib/ Mongo/grid/ 文件/info.rb', line 137

def 初始化(文档)
  @client_md 5 = 摘要::MD5.new 除非 文档[:disable_md 5] == true
  #文档包含用户选项和添加的密钥的组合
  # 驱动程序在内部执行,如 session。
  # 删除驱动程序添加的密钥,但保留用户选项。
  文档 = 文档.拒绝 do |key, _value|
    key.to_s == 'session'
  end
  @document = default_document.合并(merge)(选项::映射器.转换(Transform)(文档, mappings))
end

实例属性详细信息

# documentBSON::Document (只读)

返回文档文件集合文档。

返回:

  • ( BSON::Document )

    document 文件集合文档。

由于:

  • 2.0.0



53
54
55
# File 'lib/ Mongo/grid/ 文件/info.rb', line 53

def 文档
  @document
end

实例方法详细信息

# == (other) ⇒ true , false

此文件信息文档是否与另一个相同?

例子:

检查文件信息文档相等性。

file_info == other

参数:

  • 其他 ( Object )

    要检查的对象。

返回:

  • ( true , false )

    如果对象相等。

由于:

  • 2.0.0



65
66
67
68
69
# File 'lib/ Mongo/grid/ 文件/info.rb', line 65

def ==(其他)
  return false 除非 其他.is_a?(信息)

  文档 == 其他.文档
end

#bson_typeInteger

获取文件信息文档的 BSON 类型。

例子:

获取 BSON 类型。

file_info.bson_type

返回:

  • ( Integer )

    BSON类型。

由于:

  • 2.0.0



79
80
81
# File 'lib/ Mongo/grid/ 文件/info.rb', line 79

def bson_type
  BSON::哈希::BSON_TYPE
end

# chunk_size整数

获取文件数据块大小。

例子:

获取数据块大小。

file_info.chunk_size

返回:

  • ( Integer )

    数据段大小(以字节为单位)。

由于:

  • 2.0.0



91
92
93
# File 'lib/ Mongo/grid/ 文件/info.rb', line 91

def chunk_size
  文档[:chunkSize]
end

# content_typestring

获取文件信息内容类型。

例子:

获取内容类型。

file_info.content_type

返回:

  • ( string )

    内容类型。

由于:

  • 2.0.0



103
104
105
# File 'lib/ Mongo/grid/ 文件/info.rb', line 103

def content_type
  文档[:contentType]
end

# filenamestring

从文件信息中获取文件名。

例子:

获取文件名。

file_info.filename

返回:

  • ( string )

    文件名。

由于:

  • 2.0.0



113
114
115
# File 'lib/ Mongo/grid/ 文件/info.rb', line 113

def 文件名
  文档[:filename]
end

# IDBSON::ObjectId

从文件信息中获取文件 ID。

例子:

获取文件ID。

file_info.id

返回:

  • ( BSON::ObjectId )

    文件 ID。

由于:

  • 2.0.0



125
126
127
# File 'lib/ Mongo/grid/ 文件/info.rb', line 125

def id
  文档[:_id]
end

#检查string

获取对象的可读检查。

例子:

检查文件信息。

file_info.inspect

返回:

  • ( string )

    很好的检查。

由于:

  • 2.0.0



156
157
158
159
# File 'lib/ Mongo/grid/ 文件/info.rb', line 156

def 检查
  " #<Mongo::Grid::File::Info: 0 x #{ object_id } chunk_size= #{ chunk_size } " +
    "filename=#{filename} content_type=#{content_type} id=#{id} md5=#{md5}>"
end

# lengthInteger也称为:大小

获取文档的长度(以字节为单位)。

例子:

从文件信息文档中获取文件长度。

file_info.length

返回:

  • ( Integer )

    文件长度。

由于:

  • 2.0.0



169
170
171
# File 'lib/ Mongo/grid/ 文件/info.rb', line 169

def 长度
  文档[:length]
end

# md5string

已弃用。

自2.6.0开始

获取 md 5哈希值。

例子:

获取 md 5哈希值。

file_info.md5

返回:

  • ( string )

    string形式的 md5 哈希值。

由于:

  • 2.0.0



196
197
198
# File 'lib/ Mongo/grid/ 文件/info.rb', line 196

def MD5
  文档[:md 5] || @client_md 5
end

#metadataString

从文件信息文档中获取其他元数据。

例子:

获取其他元数据。

file_info.

返回:

  • ( string )

    文件信息文档中的附加元数据。

由于:

  • 2.0.0



182
183
184
# File 'lib/ Mongo/grid/ 文件/info.rb', line 182

def 
  文档[:metadata]
end

# to_bson (buffer = BSON::ByteBuffer.new,_validating_keys = nil) ⇒ string

注意:

如果文件信息文档中不存在 md 5 (它是从服务器加载的,并且不是新文件),则我们会消化 md 5并设立它。

将文件信息文档转换为BSON进行存储。

例子:

将文件信息文档转换为BSON。

file_info.to_bson

参数:

  • 缓冲 ( BSON::ByteBuffer ) (默认为: BSON::ByteBuffer.new

    要附加到的已编码BSON缓冲区。

  • validating_keys ( true , false )

    序列化时是否应验证密钥。 此选项已弃用,不会使用。 它将在3.0版本中删除。

返回:

  • ( string )

    原始 BSON 数据。

由于:

  • 2.0.0



234
235
236
237
# File 'lib/ Mongo/grid/ 文件/info.rb', line 234

def to_bson(缓冲 = BSON::ByteBuffer.new, _validating_keys = nil)
  文档[:md 5] = @client_md 5.hexdigest if @client_md 5 && !文档[:md 5]
  文档.to_bson(缓冲)
end

#update_md5(bytes) ⇒ Digest::MD5

已弃用。

自2.6.0开始

注意:

此方法是过渡性的,旨在实现向后兼容。

更新 md 5哈希值(如果有)。

当 md 5支持被完全弃用时,它将被删除。

例子:

更新 md 5哈希值。

file_info.update_md5(bytes)

参数:

  • 字节 ( string )

    用于更新摘要的字节。

返回:

  • ( Digest::MD 5 )

    md 5哈希对象。

由于:

  • 2.6.0



215
216
217
# File 'lib/ Mongo/grid/ 文件/info.rb', line 215

def update_md5(字节)
  MD5.update(字节) if MD5
end

#upload_date时间

获取上传日期。

例子:

获取上传日期。

file_info.upload_date

返回:

  • 时间

    上传日期。

由于:

  • 2.0.0



247
248
249
# File 'lib/ Mongo/grid/ 文件/info.rb', line 247

def upload_date
  文档[:uploadDate]
end