모듈: Mongo::Lint Private

다음에 정의됨:
빌드/ Ruby-driver-v2.19/lib/mongo/lint.rb

이 모듈은 비공개 API의 일부입니다. 이 모듈은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

클래스 메서드 요약 접기

클래스 메서드 세부 정보

.assert_type(obj, cls) ⇒ 객체

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

obj 이(가) cls 유형이 아닌 경우 LintError 가 발생합니다.



10
11
12
13
14
15
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/lint.rb', 줄 10

def assert_type(obj, cls)
  반환 하지 않는 한 활성화?
  하지 않는 한 obj.is_a?(cls)
    올리다 오류::LintError, "#{obj}#{cls} 가 될 것으로예상됩니다. "
  end
end

.활성화?부울

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

반환합니다:

  • (부울)


100
101
102
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/lint.rb', 줄 100

def 활성화?
  ENV['MONGO_RUBY_DRIVER_LINT'] && %w(1  true on).포함?(ENV['MONGO_RUBY_DRIVER_LINT'].downcase)
end

.validate_camel_case_read_preference(read_pref) ⇒ 객체

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.



38
39
40
41
42
43
44
45
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/lint.rb', 줄 38

def validate_camel_case_read_preference(read_pref)
  반환 하지 않는 한 활성화?
  반환 만약 read_pref.nil?
  하지 않는 한 read_pref.is_a?(해시)
    올리다 오류::LintError, "읽기 설정은 해시가 아닙니다: #{read_pref}"
  end
  validate_camel_case_read_preference_mode(read_pref[:mode] || read_pref['mode'])
end

.validate_camel_case_read_preference_mode(모드) ⇒ 객체

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.



48
49
50
51
52
53
54
55
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/lint.rb', 줄 48

def validate_camel_case_read_preference_mode(모드)
  반환 하지 않는 한 활성화?
  만약 모드
    하지 않는 한 %w(기본 PrimaryPreferred 보조 secondaryPreferred 가장 가까운).포함?(모드.to_s)
      올리다 오류::LintError, "잘못된 읽기 설정 (read preference) 모드: #{모드}"
    end
  end
end

.validate_read_concern_option(read_concern) ⇒ 객체

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

읽기/ 쓰기 고려 (write concern) 고려 사양(github.com/mongodb/specations/lob/master/source/read-write-concern/read-write-concern.rst#read-concern)에 따라 제공된 해시를 읽기 고려 (read concern) 고려 객체 로 검증합니다. .

이 메서드는 편의상 nil도 입력으로 받습니다.

서버 로 전송되는 읽기 고려 (read concern) 고려 문서 에는 추가 필드( 예시: afterClusterTime)가 포함될 수 있습니다. 이러한 필드는 운전자 에 의해 내부적으로 생성되며 사용자가 지정할 수 없으므로(사용자가 지정한 경우 잘못된 동작이 발생할 수 있음) 이 메서드에서는 이를 금지합니다.

매개변수:

  • read_concern (해시)

    다음과 같은 선택적 키가 있는 읽기 고려 (read concern) 옵션 해시입니다.

    • :level - 읽기 설정 (read preference) 레벨을 기호로 표시합니다. 유효한 값

      are *:local*, *:majority*, and *:snapshot*
      

다음을 발생시킵니다.



76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/lint.rb', 줄 76

def validate_read_concern_option(read_concern)
  반환 하지 않는 한 활성화?
  반환 만약 read_concern.nil?
  하지 않는 한 read_concern.is_a?(해시)
    올리다 오류::LintError, "읽기 고려는 해시가 아닙니다: #{read_concern}"
  end
  반환 만약 read_concern.비어 있나요?
   = read_concern.
  만약 read_concern.is_a?(BSON::문서)
    # 무관심한 액세스 허용
    허용된 키 = ['level']
  other
    # 무관심한 액세스 를 허용하지 않습니다.
    허용된 키 = [:level]
  end
  만약  != 허용된 키
    올리다 오류::LintError, "읽기 고려에 잘못된 키가 있습니다: #{.검사}"
  end
  레벨 = read_concern[:level]
  반환 만약 [:local, :available, :majority, :linearizable, : 스냅샷].포함?(레벨)
  올리다 오류::LintError, "읽기 고려 수준이 잘못되었습니다: 값은 기호로 사용해야 합니다: #{수준.검사}"
end

.validate_underscore_read_preference(read_pref) ⇒ 객체

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.



18
19
20
21
22
23
24
25
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/lint.rb', 줄 18

def validate_underscore_read_preference(read_pref)
  반환 하지 않는 한 활성화?
  반환 만약 read_pref.nil?
  하지 않는 한 read_pref.is_a?(해시)
    올리다 오류::LintError, "읽기 설정은 해시가 아닙니다: #{read_pref}"
  end
  validate_underscore_read_preference_mode(read_pref[:mode] || read_pref['mode'])
end

.validate_underscore_read_preference_mode(mode) ⇒ Object

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.



28
29
30
31
32
33
34
35
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/lint.rb', 줄 28

def validate_underscore_read_preference_mode(모드)
  반환 하지 않는 한 활성화?
  만약 모드
    하지 않는 한 %w(기본 primary_preferred 보조 secondary_preferred 가장 가까운).포함?(모드.to_s)
      올리다 오류::LintError, "잘못된 읽기 설정 (read preference) 모드: #{모드}"
    end
  end
end