パッケージ io.realm

クラス RealmSchema


  • public abstract class RealmSchema
    extends Object
    Realm スキーマを操作するためのクラス。 これにより、Realm 内のクラスの検査、追加、削除、変更が可能になります。

    Realm.getSchema()は検査目的でのみ使用できる不変のRealmSchemaを返します。 可変スキーマを取得するには、 DynamicRealm.getSchema()を使用します。

    すべての変更は、特定の Realm の書込みトランザクション (write transaction) 内で行われる必要があります。

    以下も参照してください。
    RealmMigration
    • メソッドの詳細

      • 得る

        @Nullable
        public abstract RealmObjectSchema get​(String className)
        指定されたクラスのRealmObjectSchemaを返します。 このRealmSchemaが不変の場合、不変のRealmObjectSchemaが返されます。 それ以外の場合は、可変RealmObjectSchemaが返されます。
        パラメーター:
        className - クラスの名前
        次の値を返します。
        そのクラスのスキーマ オブジェクト、またはクラスが存在しない場合はnull
      • getAll

        public abstract Set<RealmObjectSchema> getAll()
        この Realm に保存できるすべての RealmObject クラスのRealmObjectSchemaを返します。 このRealmSchemaが不変の場合、不変のRealmObjectSchemaセットが返されます。 それ以外の場合は、可変のRealmObjectSchemaセットが返されます。
        次の値を返します。
        この Realm 内のすべてのクラスのセット、または Realm に保存できる RealmObject クラスはありません。
      • create

        public abstract RealmObjectSchema create​(String className)
        Realm に新しいクラスを追加します。
        パラメーター:
        className - クラスの名前。
        次の値を返します。
        そのクラスの Realm スキーマ オブジェクト。
        次の例外がスローされます。
        UnsupportedOperationException - このRealmSchemaが不変の場合。
      • createWithPrimaryKeyField

        public abstract RealmObjectSchema createWithPrimaryKeyField​(String className,
                                                                    String primaryKeyFieldName,
                                                                    Class<?> fieldType,
                                                                    FieldAttribute... attributes)
        プライマリキー フィールドが定義された新しいクラスを Realm に追加します。
        パラメーター:
        className - クラスの名前。
        primaryKeyFieldName - プライマリキー フィールドの名前。
        fieldType - 追加するフィールドのタイプ。 byteshortintlongおよびそれらのボックス型またはStringのみがサポートされています。
        attributes - このフィールドの属性のセット。 このメソッドは、フィールドにFieldAttribute.PRIMARY_KEYFieldAttribute.INDEXED属性を暗黙的に追加します。
        次の値を返します。
        そのクラスの Realm スキーマ オブジェクト。
        次の例外がスローされます。
        UnsupportedOperationException - このRealmSchemaが不変の場合。
      • delete

        public abstract void remove​(String className)
        Realm からクラスを削除します。 すべてのデータが削除されます。 他のクラスがクラスを指しているときにクラスを削除すると、 IllegalStateExceptionがスローされます。 これらのクラスまたはフィールドは最初に削除されます。
        パラメーター:
        className - 削除するクラスの名前。
        次の例外がスローされます。
        UnsupportedOperationException - このRealmSchemaが不変であるか、同期された Realm である場合。
      • rename

        public abstract RealmObjectSchema rename​(String oldClassName,
                                                 String newClassName)
        Realm 内のすでに存在するクラスの名前を変更します。
        パラメーター:
        oldClassName - 古いクラス名。
        newClassName - 新しいクラス名。
        次の値を返します。
        名前が変更されたクラスのスキーマ オブジェクト。
        次の例外がスローされます。
        UnsupportedOperationException - このRealmSchemaが不変であるか、同期された Realm である場合。
      • に含まれる

        公開ブール値には が含まれます( string clusterName)
        指定されたクラスがすでにスキーマに存在するかどうかを確認します。
        パラメーター:
        className - 確認するクラス名。
        次の値を返します。
        true クラスがすでに存在する場合。 それ以外の場合は、 false
      • createKeyPathMapping

        public void createKeyPathMapping()
        基礎となるキーパス マッピングを作成します。 型の Realm によってのみ呼び出す必要があります。