패키지 io.realm

열거형 ImportFlag

    • 열거형 상수 세부 정보

      • CHECK_SAME_ValueS_BEFORE_SET

        public static final ImportFlag CHECK_SAME_VALUES_BEFORE_SET
        이 플래그를 활성화하면 필드에 이미 Realm에 있는 값과 동일한 값이 포함되어 있는 경우 필드가 Realm 파일에 기록되지 않습니다.

        로컬 Realm의 경우 기록되지 않은 필드에 대한 변경 사항을 보고하지 않는 변경 리스너에만 영향을 미칩니다.

        동기화된 Realm의 경우 이는 서버에도 영향을 미치므로 서버 Realm에 업로드하고 병합해야 하는 변경 사항이 줄어들어 성능이 향상됩니다.

        또한 서버가 여러 장치의 변경 사항을 병합하는 방식에도 영향을 미칩니다. Realm은 객체의 개별 필드를 병합할 때 마지막 쓰기 우선 접근 방식을 사용하므로 필드가 기록되지 않으면 수정된 다른 필드보다 '오래된' 것으로 간주됩니다.

        예:

        1. 서버는 (필드 A = 1, 필드 B = 1)로 시작합니다.
        2. 장치 1 쓰기(필드 A = 2, 필드 B = 2).
        3. Device 2는 (필드 A = 3, 필드 B = 1)를 쓰기는 하지만, 이 점에서 Realm 파일의 값이기 때문에 (필드 B = 1)를 무시합니다.
        4. 장치 1은 변경 사항을 서버에 업로드하여 서버를 만듭니다(필드 A = 2, 필드 B = 2). 그런 다음 장치 2가 변경 사항을 업로드합니다. 마지막 쓰기 우선(write-win)으로 인해 이제 서버 버전은 (필드 A = 3, 필드 B = 2)가 됩니다.
        최종 객체가 두 장치의 최신 변경 사항을 병합한 결과이므로 일반적으로 원하는 동작이지만 객체의 모든 필드가 원자 단위로 간주되는 경우 이 플래그를 설정해서는 안 됩니다. 설정되므로 데이터가 서버로 전송될 때 동일한 "연령"을 갖습니다.
        다음도 참조하세요.
        충돌 해결 관련 문서
    • 메서드 세부 정보

      • values

        public static ImportFlag[] values()
        이 열거형 유형의 상수를 포함하는 배열을 선언된 순서대로 반환합니다. 이 메서드는 다음과 같이 상수를 반복하는 데 사용할 수 있습니다:
        for (ImportFlag c : ImportFlag.values())
            System.out.println(c);
        
        반환합니다:
        이 열거형의 상수를 포함하는 배열(선언된 순서대로)
      • valueOf

        public static ImportFlag valueOf​(String name)
        지정된 이름을 가진 이 유형의 열거형 상수를 반환합니다. 문자열은 이 유형에서 열거형 상수를 선언하는 데 사용된 식별자와 정확히 일치해야 합니다. (불필요한 공백 문자는 허용되지 않습니다.)
        매개변수:
        name - 반환되는 열거형 상수의 이름입니다.
        반환합니다:
        지정된 이름을 가진 열거형 상수
        예외 처리:
        IllegalArgumentException - 이 열거형 유형에 지정된 이름의 상수가 없는 경우
        NullPointerException - 인수가 null인 경우