1// Signature format: 4.0 2package androidx.room { 3 4 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.FIELD) public @interface ColumnInfo { 5 method @androidx.room.ColumnInfo.Collate public abstract int collate() default androidx.room.ColumnInfo.UNSPECIFIED; 6 method public abstract boolean index() default false; 7 method public abstract String name() default androidx.room.ColumnInfo.INHERIT_FIELD_NAME; 8 method @androidx.room.ColumnInfo.SQLiteTypeAffinity public abstract int typeAffinity() default androidx.room.ColumnInfo.UNDEFINED; 9 field public static final int BINARY = 2; // 0x2 10 field public static final int BLOB = 5; // 0x5 11 field public static final String INHERIT_FIELD_NAME = "[field-name]"; 12 field public static final int INTEGER = 3; // 0x3 13 field @RequiresApi(21) public static final int LOCALIZED = 5; // 0x5 14 field public static final int NOCASE = 3; // 0x3 15 field public static final int REAL = 4; // 0x4 16 field public static final int RTRIM = 4; // 0x4 17 field public static final int TEXT = 2; // 0x2 18 field public static final int UNDEFINED = 1; // 0x1 19 field @RequiresApi(21) public static final int UNICODE = 6; // 0x6 20 field public static final int UNSPECIFIED = 1; // 0x1 21 } 22 23 @IntDef({androidx.room.ColumnInfo.UNSPECIFIED, androidx.room.ColumnInfo.BINARY, androidx.room.ColumnInfo.NOCASE, androidx.room.ColumnInfo.RTRIM, androidx.room.ColumnInfo.LOCALIZED, androidx.room.ColumnInfo.UNICODE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public static @interface ColumnInfo.Collate { 24 } 25 26 @IntDef({androidx.room.ColumnInfo.UNDEFINED, androidx.room.ColumnInfo.TEXT, androidx.room.ColumnInfo.INTEGER, androidx.room.ColumnInfo.REAL, androidx.room.ColumnInfo.BLOB}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public static @interface ColumnInfo.SQLiteTypeAffinity { 27 } 28 29 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface Dao { 30 } 31 32 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface Database { 33 method public abstract Class[] entities(); 34 method public abstract boolean exportSchema() default true; 35 method public abstract int version(); 36 } 37 38 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface Delete { 39 } 40 41 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.FIELD) public @interface Embedded { 42 method public abstract String prefix() default ""; 43 } 44 45 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface Entity { 46 method public abstract androidx.room.ForeignKey[] foreignKeys() default {}; 47 method public abstract androidx.room.Index[] indices() default {}; 48 method public abstract boolean inheritSuperIndices() default false; 49 method public abstract String[] primaryKeys() default {}; 50 method public abstract String tableName() default ""; 51 } 52 53 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public @interface ForeignKey { 54 method public abstract String[] childColumns(); 55 method public abstract boolean deferred() default false; 56 method public abstract Class entity(); 57 method @androidx.room.ForeignKey.Action public abstract int onDelete() default androidx.room.ForeignKey.NO_ACTION; 58 method @androidx.room.ForeignKey.Action public abstract int onUpdate() default androidx.room.ForeignKey.NO_ACTION; 59 method public abstract String[] parentColumns(); 60 field public static final int CASCADE = 5; // 0x5 61 field public static final int NO_ACTION = 1; // 0x1 62 field public static final int RESTRICT = 2; // 0x2 63 field public static final int SET_DEFAULT = 4; // 0x4 64 field public static final int SET_NULL = 3; // 0x3 65 } 66 67 @IntDef({androidx.room.ForeignKey.NO_ACTION, androidx.room.ForeignKey.RESTRICT, androidx.room.ForeignKey.SET_NULL, androidx.room.ForeignKey.SET_DEFAULT, androidx.room.ForeignKey.CASCADE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface ForeignKey.Action { 68 } 69 70 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.CONSTRUCTOR}) public @interface Ignore { 71 } 72 73 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({}) public @interface Index { 74 method public abstract String name() default ""; 75 method public abstract boolean unique() default false; 76 method public abstract String[] value(); 77 } 78 79 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public @interface Insert { 80 method @androidx.room.OnConflictStrategy public abstract int onConflict() default androidx.room.OnConflictStrategy.ABORT; 81 } 82 83 @IntDef({androidx.room.OnConflictStrategy.REPLACE, androidx.room.OnConflictStrategy.ROLLBACK, androidx.room.OnConflictStrategy.ABORT, androidx.room.OnConflictStrategy.FAIL, androidx.room.OnConflictStrategy.IGNORE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public @interface OnConflictStrategy { 84 field public static final int ABORT = 3; // 0x3 85 field public static final int FAIL = 4; // 0x4 86 field public static final int IGNORE = 5; // 0x5 87 field public static final int REPLACE = 1; // 0x1 88 field public static final int ROLLBACK = 2; // 0x2 89 } 90 91 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.FIELD) public @interface PrimaryKey { 92 method public abstract boolean autoGenerate() default false; 93 } 94 95 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface Query { 96 method public abstract String value(); 97 } 98 99 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface RawQuery { 100 method public abstract Class[] observedEntities() default {}; 101 } 102 103 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.FIELD) public @interface Relation { 104 method public abstract Class entity() default java.lang.Object.class; 105 method public abstract String entityColumn(); 106 method public abstract String parentColumn(); 107 method public abstract String[] projection() default {}; 108 } 109 110 public class RoomWarnings { 111 ctor @Deprecated public RoomWarnings(); 112 field public static final String CANNOT_CREATE_VERIFICATION_DATABASE = "ROOM_CANNOT_CREATE_VERIFICATION_DATABASE"; 113 field public static final String CURSOR_MISMATCH = "ROOM_CURSOR_MISMATCH"; 114 field public static final String DEFAULT_CONSTRUCTOR = "ROOM_DEFAULT_CONSTRUCTOR"; 115 field public static final String INDEX_FROM_EMBEDDED_ENTITY_IS_DROPPED = "ROOM_EMBEDDED_ENTITY_INDEX_IS_DROPPED"; 116 field public static final String INDEX_FROM_EMBEDDED_FIELD_IS_DROPPED = "ROOM_EMBEDDED_INDEX_IS_DROPPED"; 117 field public static final String INDEX_FROM_PARENT_FIELD_IS_DROPPED = "ROOM_PARENT_FIELD_INDEX_IS_DROPPED"; 118 field public static final String INDEX_FROM_PARENT_IS_DROPPED = "ROOM_PARENT_INDEX_IS_DROPPED"; 119 field public static final String MISSING_INDEX_ON_FOREIGN_KEY_CHILD = "ROOM_MISSING_FOREIGN_KEY_CHILD_INDEX"; 120 field public static final String MISSING_JAVA_TMP_DIR = "ROOM_MISSING_JAVA_TMP_DIR"; 121 field public static final String MISSING_SCHEMA_LOCATION = "ROOM_MISSING_SCHEMA_LOCATION"; 122 field public static final String PRIMARY_KEY_FROM_EMBEDDED_IS_DROPPED = "ROOM_EMBEDDED_PRIMARY_KEY_IS_DROPPED"; 123 field public static final String RELATION_QUERY_WITHOUT_TRANSACTION = "ROOM_RELATION_QUERY_WITHOUT_TRANSACTION"; 124 field public static final String RELATION_TYPE_MISMATCH = "ROOM_RELATION_TYPE_MISMATCH"; 125 } 126 127 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.TYPE}) public @interface SkipQueryVerification { 128 } 129 130 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public @interface Transaction { 131 } 132 133 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public @interface TypeConverter { 134 } 135 136 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.PARAMETER, java.lang.annotation.ElementType.TYPE, java.lang.annotation.ElementType.FIELD}) public @interface TypeConverters { 137 method public abstract Class<?>[] value(); 138 } 139 140 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public @interface Update { 141 method @androidx.room.OnConflictStrategy public abstract int onConflict() default androidx.room.OnConflictStrategy.ABORT; 142 } 143 144} 145 146