모듈: Mongo::Protocol::Serializers::Document Private
- 다음에 정의됨:
- lib/ Mongo/ 프로토콜/serializers.rb
개요
이 모듈은 비공개 API의 일부입니다. 이 모듈은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
BSON 문서에 대한 MongoDB 유선 프로토콜 직렬화 전략입니다.
단일 문서를 직렬화 및 역직렬화합니다.
클래스 메서드 요약 접기
-
.역직렬화(버퍼, 옵션 = {}) ⇒ 해시
비공개
IO 스트림 에서 문서 를 역직렬화합니다.
-
.직렬화(버퍼, 값, max_bson_size = nil, validation_keys = nil) ⇒ string
비공개
문서 를 버퍼에 직렬화합니다.
-
.size_limited? ⇒ true
비공개
직렬화 후 이 유형에 크기 제한이 있을 수 있는지 여부입니다.
클래스 메서드 세부 정보
.역직렬화(버퍼, 옵션 = {}) ⇒ 해시
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
IO 스트림 에서 문서 를 역직렬화합니다.
384 385 386 387 |
# 파일 'lib/ Mongo/ 프로토콜/serializers.rb', 줄 384 def self.역직렬화(buffer, = {}) 모드 = [:deserialize_as_bson] ? :bson : nil BSON::문서.from_bson(buffer, **{ 모드: 모드 }) end |
.직렬화(버퍼, 값, max_bson_size = nil, validation_keys = nil) ⇒ string
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
문서를 버퍼에 직렬화합니다.
364 365 366 367 368 369 370 371 372 |
# 파일 'lib/ Mongo/ 프로토콜/serializers.rb', 줄 364 def self.직렬화(buffer, value, max_bson_size = nil, validation_keys = nil) start_size = buffer.분량 value.to_bson(buffer) serialized_size = buffer.분량 - start_size 만약 max_bson_size && serialized_size > max_bson_size 올리다 오류::MaxBSONSize, "문서 가 직렬화 후 허용된 최대 BSON 객체 크기를 초과했습니다. 직렬화된 크기: #{직렬화된_크기} 바이트, 최대 허용 크기: #{최대_bson_크기} 바이트" end end |
.size_limited? ⇒ true
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
직렬화 후 이 유형에 크기 제한이 있을 수 있는지 여부입니다.
394 395 396 |
# 파일 'lib/ Mongo/ 프로토콜/serializers.rb', 줄 394 def self.size_limited? true end |