make 'markable' attribute persistent
This commit is contained in:
		
							parent
							
								
									7f4f30c849
								
							
						
					
					
						commit
						64dd622d32
					
				| @ -72,6 +72,7 @@ public class Message extends AbstractEntity { | |||||||
| 	public static final String READ = "read"; | 	public static final String READ = "read"; | ||||||
| 	public static final String ERROR_MESSAGE = "errorMsg"; | 	public static final String ERROR_MESSAGE = "errorMsg"; | ||||||
| 	public static final String READ_BY_MARKERS = "readByMarkers"; | 	public static final String READ_BY_MARKERS = "readByMarkers"; | ||||||
|  | 	public static final String MARKABLE = "markable"; | ||||||
| 	public static final String ME_COMMAND = "/me "; | 	public static final String ME_COMMAND = "/me "; | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| @ -98,7 +99,7 @@ public class Message extends AbstractEntity { | |||||||
| 	private Message mPreviousMessage = null; | 	private Message mPreviousMessage = null; | ||||||
| 	private String axolotlFingerprint = null; | 	private String axolotlFingerprint = null; | ||||||
| 	private String errorMessage = null; | 	private String errorMessage = null; | ||||||
| 	protected Set<ReadByMarker> readByMarkers = new HashSet<>(); | 	private Set<ReadByMarker> readByMarkers = new HashSet<>(); | ||||||
| 
 | 
 | ||||||
| 	private Boolean isGeoUri = null; | 	private Boolean isGeoUri = null; | ||||||
| 	private Boolean isEmojisOnly = null; | 	private Boolean isEmojisOnly = null; | ||||||
| @ -133,7 +134,8 @@ public class Message extends AbstractEntity { | |||||||
| 				null, | 				null, | ||||||
| 				false, | 				false, | ||||||
| 				null, | 				null, | ||||||
| 				null); | 				null, | ||||||
|  | 				false); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	private Message(final Conversation conversation, final String uuid, final String conversationUUid, final Jid counterpart, | 	private Message(final Conversation conversation, final String uuid, final String conversationUUid, final Jid counterpart, | ||||||
| @ -141,7 +143,8 @@ public class Message extends AbstractEntity { | |||||||
| 					final int encryption, final int status, final int type, final boolean carbon, | 					final int encryption, final int status, final int type, final boolean carbon, | ||||||
| 					final String remoteMsgId, final String relativeFilePath, | 					final String remoteMsgId, final String relativeFilePath, | ||||||
| 					final String serverMsgId, final String fingerprint, final boolean read, | 					final String serverMsgId, final String fingerprint, final boolean read, | ||||||
| 					final String edited, final boolean oob, final String errorMessage, final Set<ReadByMarker> readByMarkers) { | 					final String edited, final boolean oob, final String errorMessage, final Set<ReadByMarker> readByMarkers, | ||||||
|  | 	                final boolean markable) { | ||||||
| 		this.conversation = conversation; | 		this.conversation = conversation; | ||||||
| 		this.uuid = uuid; | 		this.uuid = uuid; | ||||||
| 		this.conversationUuid = conversationUUid; | 		this.conversationUuid = conversationUUid; | ||||||
| @ -161,7 +164,8 @@ public class Message extends AbstractEntity { | |||||||
| 		this.edited = edited; | 		this.edited = edited; | ||||||
| 		this.oob = oob; | 		this.oob = oob; | ||||||
| 		this.errorMessage = errorMessage; | 		this.errorMessage = errorMessage; | ||||||
| 		this.readByMarkers = new HashSet<>(); | 		this.readByMarkers = readByMarkers == null ? new HashSet<ReadByMarker>() : readByMarkers; | ||||||
|  | 		this.markable = markable; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	public static Message fromCursor(Cursor cursor, Conversation conversation) { | 	public static Message fromCursor(Cursor cursor, Conversation conversation) { | ||||||
| @ -208,7 +212,8 @@ public class Message extends AbstractEntity { | |||||||
| 				cursor.getString(cursor.getColumnIndex(EDITED)), | 				cursor.getString(cursor.getColumnIndex(EDITED)), | ||||||
| 				cursor.getInt(cursor.getColumnIndex(OOB)) > 0, | 				cursor.getInt(cursor.getColumnIndex(OOB)) > 0, | ||||||
| 				cursor.getString(cursor.getColumnIndex(ERROR_MESSAGE)), | 				cursor.getString(cursor.getColumnIndex(ERROR_MESSAGE)), | ||||||
| 				ReadByMarker.fromJsonString(cursor.getString(cursor.getColumnIndex(READ_BY_MARKERS)))); | 				ReadByMarker.fromJsonString(cursor.getString(cursor.getColumnIndex(READ_BY_MARKERS))), | ||||||
|  | 				cursor.getInt(cursor.getColumnIndex(MARKABLE)) > 0); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	public static Message createStatusMessage(Conversation conversation, String body) { | 	public static Message createStatusMessage(Conversation conversation, String body) { | ||||||
| @ -264,6 +269,7 @@ public class Message extends AbstractEntity { | |||||||
| 		values.put(OOB, oob ? 1 : 0); | 		values.put(OOB, oob ? 1 : 0); | ||||||
| 		values.put(ERROR_MESSAGE,errorMessage); | 		values.put(ERROR_MESSAGE,errorMessage); | ||||||
| 		values.put(READ_BY_MARKERS,ReadByMarker.toJson(readByMarkers).toString()); | 		values.put(READ_BY_MARKERS,ReadByMarker.toJson(readByMarkers).toString()); | ||||||
|  | 		values.put(MARKABLE, markable ? 1 : 0); | ||||||
| 		return values; | 		return values; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -60,7 +60,7 @@ public class DatabaseBackend extends SQLiteOpenHelper { | |||||||
| 	private static DatabaseBackend instance = null; | 	private static DatabaseBackend instance = null; | ||||||
| 
 | 
 | ||||||
| 	private static final String DATABASE_NAME = "history"; | 	private static final String DATABASE_NAME = "history"; | ||||||
| 	private static final int DATABASE_VERSION = 37; | 	private static final int DATABASE_VERSION = 38; | ||||||
| 
 | 
 | ||||||
| 	private static String CREATE_CONTATCS_STATEMENT = "create table " | 	private static String CREATE_CONTATCS_STATEMENT = "create table " | ||||||
| 			+ Contact.TABLENAME + "(" + Contact.ACCOUNT + " TEXT, " | 			+ Contact.TABLENAME + "(" + Contact.ACCOUNT + " TEXT, " | ||||||
| @ -198,6 +198,7 @@ public class DatabaseBackend extends SQLiteOpenHelper { | |||||||
| 				+ Message.OOB + " INTEGER, " | 				+ Message.OOB + " INTEGER, " | ||||||
| 				+ Message.ERROR_MESSAGE + " TEXT," | 				+ Message.ERROR_MESSAGE + " TEXT," | ||||||
| 				+ Message.READ_BY_MARKERS + " TEXT," | 				+ Message.READ_BY_MARKERS + " TEXT," | ||||||
|  | 				+ Message.MARKABLE + " NUMBER DEFAULT 0," | ||||||
| 				+ Message.REMOTE_MSG_ID + " TEXT, FOREIGN KEY(" | 				+ Message.REMOTE_MSG_ID + " TEXT, FOREIGN KEY(" | ||||||
| 				+ Message.CONVERSATION + ") REFERENCES " | 				+ Message.CONVERSATION + ") REFERENCES " | ||||||
| 				+ Conversation.TABLENAME + "(" + Conversation.UUID | 				+ Conversation.TABLENAME + "(" + Conversation.UUID | ||||||
| @ -457,7 +458,11 @@ public class DatabaseBackend extends SQLiteOpenHelper { | |||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		if (oldVersion < 37 && newVersion >= 37) { | 		if (oldVersion < 37 && newVersion >= 37) { | ||||||
| 			db.execSQL("ALTER TABLE " + Message.TABLENAME + " ADD COLUMN " + Message.READ_BY_MARKERS + " TEXTs"); | 			db.execSQL("ALTER TABLE " + Message.TABLENAME + " ADD COLUMN " + Message.READ_BY_MARKERS + " TEXT"); | ||||||
|  | 		} | ||||||
|  | 
 | ||||||
|  | 		if (oldVersion < 38 && newVersion >= 38) { | ||||||
|  | 			db.execSQL("ALTER TABLE " + Message.TABLENAME + " ADD COLUMN " + Message.MARKABLE + " NUMBER DEFAULT 0"); | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Daniel Gultsch
						Daniel Gultsch