클래스: Mongo::Database::View
- 상속:
-
객체
- 객체
- Mongo::Database::View
- 확장자:
- 전달 가능
- 다음을 포함합니다.
- 열거 가능, Cursor::NonTailable,CursorHost, 재시도 가능
- 다음에 정의됨:
- lib/mongo/database/view.rb
개요
데이터베이스의 뷰를 나타내는 클래스입니다.
인스턴스 속성 요약 접기
-
#batch_size ⇒ 정수
읽기 전용
Batch_size listCollections 명령을 보낼 때 결과 배치의 크기입니다.
-
#컬렉션 ⇒ collection
읽기 전용
컬렉션 명령 컬렉션입니다.
- #데이터베이스 ⇒ 객체 읽기 전용 비공개
-
#limit ⇒ 정수
읽기 전용
명령 전송 시 제한을 제한합니다.
-
#operation_timeout_ms ⇒ 정수 | nil | 뷰에 옵션으로 전달된 timeout_ms 값입니다.
읽기 전용
비공개
정수 | nil | 뷰에 옵션으로 전달된 timeout_ms 값입니다.
CursorHost에포함된 속성
인스턴스 메서드 요약 접기
-
#aggregate(pipeline, options = {}) ⇒ Collection::View::Aggregation
비공개
데이터베이스 뷰에서 애그리게이션을 실행합니다.
-
#collection_names(options = {}) ⇒ Array<String>
데이터베이스 에 있는 비시스템 컬렉션의 모든 이름을 가져옵니다.
-
#initialize(database, options = {}) ⇒ View
생성자
새 데이터베이스 뷰를 만듭니다.
-
#list_collections(options = {}) ⇒ Array<Hash>
데이터베이스의 모든 컬렉션에 대한 정보를 가져옵니다.
-
#operation_timeouts(opts = {}) ⇒ 해시
비공개
작업 수준에 설정하다 Timeout_ms 값(있는 경우)입니다.
-
#timeout_ms ⇒ Integer | nil
이 작업에 사용할 timeout_ms 값입니다. 뷰의 옵션으로 지정되거나 데이터베이스 에서 상속됩니다.
Cursor::NonTailable에 포함된 메서드
CursorHost에포함된 메서드
Retryable에 포함된 메서드
#read_Worker, #select_server, #write_Worker
생성자 세부 정보
#initialize(database, options = {}) ⇒ View
새 데이터베이스 뷰를 만듭니다.
149 150 151 152 153 154 155 156 157 158 |
# 파일 'lib/ Mongo/ 데이터베이스/view.rb', 줄 149 def 초기화(database, = {}) @database = database @operation_timeout_ms = .삭제(:timeout_ms) validate_timeout_mode!() @batch_size = nil @limit = nil @collection = @database[Database::명령] end |
인스턴스 속성 세부 정보
#batch_size ⇒ 정수 (읽기 전용)
반환값 batch_size listCollections 명령을 보낼 때 결과 배치의 크기입니다.
40 41 42 |
# 파일 'lib/ Mongo/ 데이터베이스/view.rb', 줄 40 def batch_size @batch_size end |
#collection ⇒ collection (읽기 전용)
반환값 collection 명령 collection입니다.
46 47 48 |
# 파일 'lib/ Mongo/ 데이터베이스/view.rb', 줄 46 def 컬렉션 @collection end |
#데이터베이스 ⇒ 객체 (읽기 전용)
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
161 162 163 |
# 파일 'lib/ Mongo/ 데이터베이스/view.rb', 줄 161 def database @database end |
#limit ⇒ 정수 (읽기 전용)
명령을 보낼 때 제한을 반환합니다.
43 44 45 |
# 파일 'lib/ Mongo/ 데이터베이스/view.rb', 줄 43 def limit @limit end |
#operation_timeout_ms ⇒ 정수 | nil | 뷰에 옵션으로 전달된 timeout_ms 값입니다. (읽기 전용)
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
반환값 정수 | nil | 뷰에 옵션으로 전달된 timeout_ms 값입니다.
167 168 169 |
# 파일 'lib/ Mongo/ 데이터베이스/view.rb', 줄 167 def operation_timeout_ms @operation_timeout_ms end |
인스턴스 메서드 세부 정보
#aggregate(pipeline, options = {}) ⇒ Collection::View::Aggregation
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
데이터베이스 뷰에서 애그리게이션을 실행합니다.
183 184 185 |
# 파일 'lib/ Mongo/ 데이터베이스/view.rb', 줄 183 def 집계(파이프라인, = {}) 컬렉션::보기::집계.신규(self, 파이프라인, ) end |
#collection_names(options = {}) ⇒ Array<String>
반환되는 컬렉션 이름 집합은 요청을 처리하는 MongoDB 서버의 버전에 따라 달라집니다.
데이터베이스 에 있는 비시스템 컬렉션의 모든 이름을 가져옵니다.
See https://mongodb.com/ko-kr/docs/manual/reference/command/listCollections/
for more information and usage.
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
# 파일 'lib/ Mongo/ 데이터베이스/view.rb', 줄 75 def collection_names( = {}) @batch_size = [:batch_size] Session = 고객.get_session() 컨텍스트 = 작업::Context.신규( 클라이언트: 고객, 세션: Session, operation_timeout: operation_timeout() ) cursor = read_with_retry_cursor(Session, ServerSelector.기본, self, 컨텍스트: 컨텍스트) do |서버| send_initial_query(서버, Session, 컨텍스트, .merge(name_only: true)) end cursor.map do |정보| 만약 cursor.initial_result.connection_description.기능.list_collections_enabled? 정보['name'] other (정보['name'] && 정보['name'].sub("#{@database.name}.", '')) end end.거부 do |이름| 이름.start_with?('시스템.') || 이름.포함?('$') end end |
#list_collections(options = {}) ⇒ Array<Hash>
반환되는 컬렉션 집합과 컬렉션당 정보 해시의 스키마는 요청을 처리하는 MongoDB 서버 버전에 따라 다릅니다.
데이터베이스의 모든 컬렉션에 대한 정보를 가져옵니다.
127 128 129 130 |
# 파일 'lib/ Mongo/ 데이터베이스/view.rb', 줄 127 def list_collections( = {}) Session = 고객.get_session() collections_info(Session, ServerSelector.기본, ) end |
#operation_timeouts(opts = {}) ⇒ 해시
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
작업 수준에 설정하다 timeout_ms 값(있는 경우)을 반환합니다.
198 199 200 201 202 203 204 205 206 |
# 파일 'lib/ Mongo/ 데이터베이스/view.rb', 줄 198 def operation_timeout(opts = {}) {}.탭 do |결과| 만약 opts[:timeout_ms] || operation_timeout_ms 결과[:operation_timeout_ms] = opts.삭제(:timeout_ms) || operation_timeout_ms other 결과[:inherited_timeout_ms] = database.timeout_ms end end end |
#timeout_ms ⇒ Integer | nil
이 작업에 사용할 timeout_ms 값입니다. 뷰의 옵션으로 지정되거나 데이터베이스 에서 상속됩니다.
191 192 193 |
# 파일 'lib/ Mongo/ 데이터베이스/view.rb', 줄 191 def timeout_ms operation_timeout_ms || database.timeout_ms end |