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, java.lang.annotation.ElementType.METHOD}) 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 method public abstract Class[] views() default {}; 37 } 38 39 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface DatabaseView { 40 method public abstract String value() default ""; 41 method public abstract String viewName() default ""; 42 } 43 44 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface Delete { 45 } 46 47 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) public @interface Embedded { 48 method public abstract String prefix() default ""; 49 } 50 51 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface Entity { 52 method public abstract androidx.room.ForeignKey[] foreignKeys() default {}; 53 method public abstract String[] ignoredColumns() default {}; 54 method public abstract androidx.room.Index[] indices() default {}; 55 method public abstract boolean inheritSuperIndices() default false; 56 method public abstract String[] primaryKeys() default {}; 57 method public abstract String tableName() default ""; 58 } 59 60 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public @interface ForeignKey { 61 method public abstract String[] childColumns(); 62 method public abstract boolean deferred() default false; 63 method public abstract Class entity(); 64 method @androidx.room.ForeignKey.Action public abstract int onDelete() default androidx.room.ForeignKey.NO_ACTION; 65 method @androidx.room.ForeignKey.Action public abstract int onUpdate() default androidx.room.ForeignKey.NO_ACTION; 66 method public abstract String[] parentColumns(); 67 field public static final int CASCADE = 5; // 0x5 68 field public static final int NO_ACTION = 1; // 0x1 69 field public static final int RESTRICT = 2; // 0x2 70 field public static final int SET_DEFAULT = 4; // 0x4 71 field public static final int SET_NULL = 3; // 0x3 72 } 73 74 @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 { 75 } 76 77 @RequiresApi(16) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface Fts3 { 78 method public abstract String tokenizer() default androidx.room.FtsOptions.TOKENIZER_SIMPLE; 79 method public abstract String[] tokenizerArgs() default {}; 80 } 81 82 @RequiresApi(16) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.TYPE) public @interface Fts4 { 83 method public abstract Class contentEntity() default java.lang.Object.class; 84 method public abstract String languageId() default ""; 85 method public abstract androidx.room.FtsOptions.MatchInfo matchInfo() default androidx.room.FtsOptions.MatchInfo.FTS4; 86 method public abstract String[] notIndexed() default {}; 87 method public abstract androidx.room.FtsOptions.Order order() default androidx.room.FtsOptions.Order.ASC; 88 method public abstract int[] prefix() default {}; 89 method public abstract String tokenizer() default androidx.room.FtsOptions.TOKENIZER_SIMPLE; 90 method public abstract String[] tokenizerArgs() default {}; 91 } 92 93 public class FtsOptions { 94 field public static final String TOKENIZER_ICU = "icu"; 95 field public static final String TOKENIZER_PORTER = "porter"; 96 field public static final String TOKENIZER_SIMPLE = "simple"; 97 field @RequiresApi(21) public static final String TOKENIZER_UNICODE61 = "unicode61"; 98 } 99 100 public enum FtsOptions.MatchInfo { 101 enum_constant public static final androidx.room.FtsOptions.MatchInfo FTS3; 102 enum_constant public static final androidx.room.FtsOptions.MatchInfo FTS4; 103 } 104 105 public enum FtsOptions.Order { 106 enum_constant public static final androidx.room.FtsOptions.Order ASC; 107 enum_constant public static final androidx.room.FtsOptions.Order DESC; 108 } 109 110 @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 { 111 } 112 113 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({}) public @interface Index { 114 method public abstract String name() default ""; 115 method public abstract boolean unique() default false; 116 method public abstract String[] value(); 117 } 118 119 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public @interface Insert { 120 method @androidx.room.OnConflictStrategy public abstract int onConflict() default androidx.room.OnConflictStrategy.ABORT; 121 } 122 123 @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 { 124 field public static final int ABORT = 3; // 0x3 125 field @Deprecated public static final int FAIL = 4; // 0x4 126 field public static final int IGNORE = 5; // 0x5 127 field public static final int REPLACE = 1; // 0x1 128 field @Deprecated public static final int ROLLBACK = 2; // 0x2 129 } 130 131 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) public @interface PrimaryKey { 132 method public abstract boolean autoGenerate() default false; 133 } 134 135 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface Query { 136 method public abstract String value(); 137 } 138 139 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target(java.lang.annotation.ElementType.METHOD) public @interface RawQuery { 140 method public abstract Class[] observedEntities() default {}; 141 } 142 143 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD}) public @interface Relation { 144 method public abstract Class entity() default java.lang.Object.class; 145 method public abstract String entityColumn(); 146 method public abstract String parentColumn(); 147 method public abstract String[] projection() default {}; 148 } 149 150 @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public class RoomMasterTable { 151 method public static String! createInsertQuery(String!); 152 field public static final String CREATE_QUERY = "CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)"; 153 field public static final String DEFAULT_ID = "42"; 154 field public static final String NAME = "room_master_table"; 155 field public static final String READ_QUERY = "SELECT identity_hash FROM room_master_table WHERE id = 42 LIMIT 1"; 156 field public static final String TABLE_NAME = "room_master_table"; 157 } 158 159 public class RoomWarnings { 160 ctor @Deprecated public RoomWarnings(); 161 field public static final String CANNOT_CREATE_VERIFICATION_DATABASE = "ROOM_CANNOT_CREATE_VERIFICATION_DATABASE"; 162 field public static final String CURSOR_MISMATCH = "ROOM_CURSOR_MISMATCH"; 163 field public static final String DEFAULT_CONSTRUCTOR = "ROOM_DEFAULT_CONSTRUCTOR"; 164 field public static final String INDEX_FROM_EMBEDDED_ENTITY_IS_DROPPED = "ROOM_EMBEDDED_ENTITY_INDEX_IS_DROPPED"; 165 field public static final String INDEX_FROM_EMBEDDED_FIELD_IS_DROPPED = "ROOM_EMBEDDED_INDEX_IS_DROPPED"; 166 field public static final String INDEX_FROM_PARENT_FIELD_IS_DROPPED = "ROOM_PARENT_FIELD_INDEX_IS_DROPPED"; 167 field public static final String INDEX_FROM_PARENT_IS_DROPPED = "ROOM_PARENT_INDEX_IS_DROPPED"; 168 field public static final String MISSING_INDEX_ON_FOREIGN_KEY_CHILD = "ROOM_MISSING_FOREIGN_KEY_CHILD_INDEX"; 169 field public static final String MISSING_JAVA_TMP_DIR = "ROOM_MISSING_JAVA_TMP_DIR"; 170 field public static final String MISSING_SCHEMA_LOCATION = "ROOM_MISSING_SCHEMA_LOCATION"; 171 field public static final String PRIMARY_KEY_FROM_EMBEDDED_IS_DROPPED = "ROOM_EMBEDDED_PRIMARY_KEY_IS_DROPPED"; 172 field public static final String RELATION_QUERY_WITHOUT_TRANSACTION = "ROOM_RELATION_QUERY_WITHOUT_TRANSACTION"; 173 field public static final String RELATION_TYPE_MISMATCH = "ROOM_RELATION_TYPE_MISMATCH"; 174 } 175 176 @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 { 177 } 178 179 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public @interface Transaction { 180 } 181 182 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) @java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD}) public @interface TypeConverter { 183 } 184 185 @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 { 186 method public abstract Class<?>[] value(); 187 } 188 189 @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public @interface Update { 190 method @androidx.room.OnConflictStrategy public abstract int onConflict() default androidx.room.OnConflictStrategy.ABORT; 191 } 192 193} 194 195