클래스: Mongo::Server::ConnectionCommon
- 상속:
-
객체
- 객체
- Mongo::Server::ConnectionCommon
- 다음에 정의됨:
- lib/ Mongo/ 서버/connection_common.rb
개요
참고:
이 모듈의 메서드는 공개 API의 일부이지만 이러한 메서드가 이 모듈에서 정의되고 이 모듈을 포함하는 클래스에서 정의되지 않는다는 사실은 공개 API의 일부가 아닙니다.
모니터링 연결과 비모니터링 연결 모두에서 사용하는 일반적인 방법입니다.
직접 알려진 하위 클래스
인스턴스 속성 요약 접기
-
#압축기 ⇒ string | nil
읽기 전용
압축기가 이 연결을 위해 핸드셰이크 중에 협상했습니다(있는 경우).
-
#PID ⇒ 정수
읽기 전용
비공개
PID 연결이 생성되었을 때의 프로세스 ID 입니다.
인스턴스 메서드 요약 접기
- #연결되었나요? ⇒ 참, 거짓 사용 중단 더 이상 사용되지 않습니다.
-
#handshake_command(handshake_document) ⇒ Protocol::Message
비공개
연결 핸드셰이크에 사용해야 하는 명령을 빌드합니다.
-
#핸드셰이크 _문서 (app_metadata, speculative_auth_doc: nil, load_balancer: false, server_api: nil) ⇒ BSON::Document
비공개
연결 핸드셰이크에 사용해야 하는 문서를 작성합니다.
인스턴스 속성 세부 정보
#압축기 ⇒ string | nil (읽기 전용)
압축기가 이 연결을 위해 핸드셰이크 중에 협상했습니다(있는 경우).
이 속성은 아직 핸드셰이크를 완료하지 않은 연결과 압축을 협상하지 않은 연결의 경우 nil입니다.
37 38 39 |
# 파일 'lib/ Mongo/ 서버/connection_common.rb', 줄 37 def 압축기 @compressor end |
#PID ⇒ 정수 (읽기 전용)
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
연결이 생성되었을 때의 PID 프로세스 ID 를 반환합니다.
53 54 55 |
# 파일 'lib/ Mongo/ 서버/connection_common.rb', 줄 53 def PID @pid end |
인스턴스 메서드 세부 정보
#연결되었나요? ⇒ true, false
더 이상 사용되지 않습니다.
연결이 현재 연결되어 있는지 확인합니다.
47 48 49 |
# 파일 'lib/ Mongo/ 서버/connection_common.rb', 줄 47 def 연결됨? !!소켓 end |
#handshake_command(handshake_document) ⇒ Protocol::Message
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
연결 핸드셰이크에 사용해야 하는 명령을 빌드합니다.
94 95 96 97 98 99 100 101 102 103 104 105 106 107 |
# 파일 'lib/ Mongo/ 서버/connection_common.rb', 줄 94 def 핸드셰이크 명령(핸드셰이크_문서) 만약 핸드셰이크_문서['apiVersion'] || 핸드셰이크_문서['loadBalanced'] protocol::메시지.신규( [], {}, 핸드셰이크_문서.merge({'$db' => Database::ADMIN}) ) other protocol::쿼리.신규( Database::ADMIN, Database::명령, 핸드셰이크_문서, :limit => -1 ) end end |
#핸드셰이크 _문서 (app_metadata, speculative_auth_doc: nil, load_balancer: false, server_api: nil) ⇒ BSON::Document
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
연결 핸드셰이크에 사용해야 하는 문서를 작성합니다.
68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
# 파일 'lib/ Mongo/ 서버/connection_common.rb', 줄 68 def 핸드셰이크_문서(, speculative_auth_doc: nil, load_balancer: 거짓, server_api: nil) serv_api = .server_api || server_api 문서 = 만약 serv_api HELLO_DOC.merge(Utils.transformation_server_api(serv_api)) other LEGACY_HELLO_DOC end 문서.merge(.validated_document).탭 do |doc| 만약 speculative_auth_doc doc.update(speculativeAuthenticate: speculative_auth_doc) end 만약 load_balancer doc.update(loadBalanced: true) end end end |