클래스: Mongo::Operation::Context Private
- 상속:
-
객체
- 객체
- Mongo::Operation::Context
- 다음에 정의됨:
- 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb
개요
이 클래스는 비공개 API의 일부입니다. 이 클래스는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
작업에 대한 컨텍스트입니다.
작업 실행에 대한 결정을 내리는 데 필요한 다양한 객체를 단일 컨테이너 에 담고, 포함된 객체에 대한 파사드 메서드를 제공합니다.
컨텍스트에는 작업에 대한 매개변수가 포함되어 있으므로 작업이 준비되는 동안에는 컨텍스트에서 아무 것도 변경되지 않아야 합니다. 작업 결과가 처리되는 동안 컨텍스트에서 반환된 데이터가 변경될 수 있지만(예: 트랜잭션이 중단된 경우), 이 시점이 되면 작업은 더 이상 컨텍스트에서 아무 것도 읽지 않아야 합니다. 컨텍스트 데이터는 작업 실행 중에 변경될 수 있으므로 컨텍스트 객체를 여러 작업에 재사용해서는 안 됩니다.
인스턴스 속성 요약 접기
- #클라이언트 ⇒ 객체 읽기 전용 비공개
- #options ⇒ 객체 읽기 전용 비공개
- #세션 ⇒ 객체 읽기 전용 비공개
인스턴스 메서드 요약 접기
- #aborting_transaction? ⇒ 부울 비공개
- #any_retry_writes? ⇒ 부울 비공개
- #committing_transaction? ⇒ 부울 비공개
- #connection_global_id ⇒ 객체 비공개
- # 암호를해독하시겠습니까? ⇒ 부울 비공개
- #암호화? ⇒ 부울 비공개
- #encrypter ⇒ 객체 비공개
- #in_transaction? ⇒ Boolean 비공개
-
#initialize(client: nil, session: nil, connection_global_id: nil, options: nil) ⇒ 컨텍스트
생성자
비공개
Context의 새 인스턴스 입니다.
- #legacy_retry_writes? ⇒ 부울 비공개
- #Modern_retry_writes? ⇒ 부울 비공개
-
#다시 시도하시겠습니까? ⇒ 부울
비공개
작업이 재시도인지(true) 또는 초기 시도인지(false)인지 여부입니다.
- #server_api ⇒ 객체 비공개
- #startup_transaction? ⇒ 부울 비공개
-
#with(**opts) ⇒ 객체
비공개
제공된 인수에 따라 매개변수가 변경된 새 컨텍스트를 반환합니다.
생성자 세부 정보
#initialize(클라이언트: nil, session: nil, connection_global_id: nil, options: nil) ⇒ 컨텍스트
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
Context의 새 인스턴스 를 반환합니다.
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 38 def 초기화(클라이언트: nil, 세션: nil, connection_global_id: nil, 옵션: nil) 만약 만약 고객 올리다 ArgumentError, '클라이언트와 옵션을 모두 지정할 수 없습니다.' end 만약 Session 올리다 ArgumentError, '세션과 옵션을 모두 지정할 수 없습니다.' end end 만약 connection_global_id && Session&.pinned_connection_global_id 올리다 ArgumentError, 세션 이이미 연결에 고정된 상태에서 컨텍스트를 연결에 고정하려고 합니다.' end @client = 고객 @session = Session @connection_global_id = connection_global_id @options = end |
인스턴스 속성 세부 정보
#클라이언트 ⇒ 객체 (읽기 전용)
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
59 60 61 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 59 def 고객 @client end |
#options ⇒ 객체 (읽기 전용)
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
61 62 63 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 61 def @options end |
#세션 ⇒ 객체 (읽기 전용)
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
60 61 62 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 60 def Session @session end |
인스턴스 메서드 세부 정보
#aborting_transaction? ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
79 80 81 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 79 def aborting_transaction? in_transaction? && Session.aborting_transaction? end |
#any_retry_writes? ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
91 92 93 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 91 def any_retry_writes? Modern_retry_writes? || legacy_retry_writes? end |
#committing_transaction? ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
75 76 77 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 75 def committing_transaction? in_transaction? && Session.committing_transaction? end |
#connection_global_id ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
63 64 65 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 63 def connection_global_id @connection_global_id || Session&.pinned_connection_global_id end |
# 암호를해독하시겠습니까? ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
125 126 127 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 125 def 해독? !!고객&.암호화기 end |
#암호화? ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
121 122 123 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 121 def 암호화? 고객&.암호화기&.암호화? || 거짓 end |
#encrypter ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
129 130 131 132 133 134 135 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 129 def 암호화기 만약 고객&.암호화기 고객.암호화기 other 올리다 오류::Internal DriverError, '암호화는 암호화 를 수행할 때만 액세스해야 합니다.' end end |
#in_transaction? ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
67 68 69 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 67 def in_transaction? Session&.in_transaction? || 거짓 end |
#legacy_retry_writes? ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
87 88 89 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 87 def legacy_retry_writes? 고객 && !고객.[:retry_writes] && 고객.max_write_retries > 0 end |
#Modern_retry_writes? ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
83 84 85 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 83 def Modern_retry_writes? 고객 && 고객.[:retry_writes] end |
#다시 시도하시겠습니까? ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
작업이 재시도인지(true) 또는 초기 시도인지(false)인지 여부입니다.
104 105 106 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 104 def 재시도? !!@is_retry end |
#server_api ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
95 96 97 98 99 100 101 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 95 def server_api 만약 고객 고객.[:server_api] elsif [:server_api] end end |
#startup_transaction? ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
71 72 73 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 71 def startup_transaction? Session&.startup_transaction? || 거짓 end |
#with(**opts) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
제공된 인수에 따라 매개변수가 변경된 새 컨텍스트를 반환합니다.
113 114 115 116 117 118 119 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/operation/context.rb', 줄 113 def 와(**opts) dup.탭 do |copy| opts.각 do |k, v| copy.instance_variable_set("@#{k}", v) end end end |