클래스: Mongo::Protocol::Query
- 다음을 포함합니다.
- Monitoring::Event::Secure
- 다음에 정의됨:
- 빌드/ Ruby-driver-v2.19/lib/mongo/ 프로토콜/ 쿼리.rb
개요
MongoDB Wire 프로토콜 쿼리 메시지입니다.
제공된 쿼리와 일치하는 문서를 검색하기 위해 서버로 전송되는 클라이언트 요청 메시지입니다.
사용자는 프로젝션, 필드 하위 집합 선택, 건너뛸 수 또는 반환된 문서 수 제한과 같은 추가 옵션을 제공할 수도 있습니다.
커서 매개변수 또는 원하는 일관성 및 무결성 결과를 조정하는 데 사용할 수 있는 다양한 플래그가 있습니다.
네임스페이스 아래에 정의됨
클래스: 업컨버터
상수 요약
Monitoring::Event::Secure에 포함된 상수
Monitoring::Event::Secure::REDACTED_COMMANDS
메시지에서 상속된 상수
Message::BATCH_SIZE, Message::COLLECTION, Message::LIMIT, Message::MAX_MESSAGE_SIZE, Message::ORDERED, Message::Q
인스턴스 속성 요약
메시지에서 상속된 속성
인스턴스 메서드 요약 접기
-
#initialize(데이터베이스, 컬렉션, 선택기, options = {}) ⇒ 쿼리
생성자
새 쿼리 메시지를 만듭니다.
-
#may_compress(압축기, zlib_compression_level = nil) ⇒ 메시지
비공개
전송 중인 명령이 압축을 허용하는 경우 메시지를 압축합니다.
-
#payload ⇒ BSON::Document
모니터링 할 이벤트 페이로드를 반환합니다.
-
#회신 가능? ⇒ true
쿼리 메시지에는 데이터베이스 의 응답이 필요합니다.
-
#직렬화(buffer = BSON::ByteBuffer.new, max_bson_size = nil, bson_overhead = nil) ⇒ BSON::ByteBuffer
메시지를 유선으로 전송할 수 있는 바이트로 직렬화합니다.
Monitoring::Event::Secure에 포함된 메서드
#compression_allowed?, #redacted, #sensitivity?
메시지에서 상속된 메서드
#==, 역직렬화, #hash, #maybe_add_server_api, #maybe_decrypt, #maybe_encrypt, #maybe_inflate, #number_returned, #set_request_id
ID에 포함된 메서드
생성자 세부 정보
#initialize(데이터베이스, 컬렉션, 선택기, options = {}) ⇒ 쿼리
새 쿼리 메시지를 만듭니다.
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/ 프로토콜/ 쿼리.rb', 줄 64 def 초기화(database, 컬렉션, 선택기, = {}) @database = database @namespace = "#{database}.#{collection}" 만약 선택기.nil? 올리다 ArgumentError, '선택기는 nil일 수 없습니다.' end @selector = 선택기 @options = 프로젝트 = [: 프로젝트] @limit = 결정_제한 @skip = [:skip] || 0 @flags = [:플래그] || [] @upconverter = 업컨버터.신규( 컬렉션, BSON::문서.신규(선택기), BSON::문서.신규(), flags, ) super end |
인스턴스 메서드 세부 정보
#may_compress(압축기, zlib_compression_level = nil) ⇒ 메시지
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
전송 중인 명령이 압축을 허용하는 경우 메시지를 압축합니다. 그렇지 않으면 자체를 반환합니다.
125 126 127 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/ 프로토콜/ 쿼리.rb', 줄 125 def may_compress(압축기, zlib_compression_level = nil) compress_if_posible(선택기.키.first, 압축기, zlib_compression_level) end |
#payload ⇒ BSON::Document
모니터링 할 이벤트 페이로드를 반환합니다.
93 94 95 96 97 98 99 100 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/ 프로토콜/ 쿼리.rb', 줄 93 def Payload BSON::문서.신규( command_name: 업컨버터.command_name, database_name: @database, 명령: 업컨버터.명령, request_id: request_id ) end |
#회신 가능? ⇒ true
쿼리 메시지에는 데이터베이스 의 응답이 필요합니다.
110 111 112 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/ 프로토콜/ 쿼리.rb', 줄 110 def 회신 가능? true end |
#직렬화(버퍼 = BSON::ByteBuffer.new, max_bson_size = nil, bson_overhead = nil) ⇒ BSON::ByteBuffer
메시지를 유선으로 전송할 수 있는 바이트로 직렬화합니다.
135 136 137 138 139 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/ 프로토콜/ 쿼리.rb', 줄 135 def 직렬화(buffer = BSON::ByteBuffer.신규, max_bson_size = nil, bson_overhead = nil) validate_document_size!(max_bson_size) super end |