MCPcopy Create free account
hub / github.com/M66B/FairEmail / insert

Method insert

app/src/main/java/eu/faircode/email/Fts4DbHelper.java:102–134  ·  view source on GitHub ↗
(SQLiteDatabase db, EntityMessage message, List<EntityAttachment> attachments, String text)

Source from the content-addressed store, hash-verified

100 }
101
102 static void insert(SQLiteDatabase db, EntityMessage message, List<EntityAttachment> attachments, String text) {
103 Log.i("FTS insert id=" + message.id);
104 List<Address> address = new ArrayList<>();
105 if (message.from != null)
106 address.addAll(Arrays.asList(message.from));
107 if (message.to != null)
108 address.addAll(Arrays.asList(message.to));
109 if (message.cc != null)
110 address.addAll(Arrays.asList(message.cc));
111 if (message.bcc != null)
112 address.addAll(Arrays.asList(message.bcc));
113
114 List<String> filenames = new ArrayList<>();
115 if (attachments != null)
116 for (EntityAttachment attachment : attachments)
117 if (!TextUtils.isEmpty(attachment.name))
118 filenames.add(attachment.name);
119
120 delete(db, message.id);
121
122 ContentValues cv = new ContentValues();
123 cv.put("rowid", message.id);
124 cv.put("account", message.account);
125 cv.put("folder", message.folder);
126 cv.put("time", message.received);
127 cv.put("address", processBreakText(MessageHelper.formatAddresses(address.toArray(new Address[0]), true, false)));
128 cv.put("subject", processBreakText(message.subject));
129 cv.put("keyword", TextUtils.join(" ", message.keywords));
130 cv.put("text", processBreakText(text));
131 cv.put("notes", processBreakText(message.notes));
132 cv.put("filenames", processBreakText(TextUtils.join(" ", filenames)));
133 db.insertWithOnConflict("message", null, cv, SQLiteDatabase.CONFLICT_FAIL);
134 }
135
136 static void delete(SQLiteDatabase db) {
137 db.delete("message", null, null);

Callers 1

doWorkMethod · 0.95

Calls 10

iMethod · 0.95
deleteMethod · 0.95
processBreakTextMethod · 0.95
formatAddressesMethod · 0.95
addAllMethod · 0.80
toArrayMethod · 0.80
joinMethod · 0.80
isEmptyMethod · 0.45
addMethod · 0.45
putMethod · 0.45

Tested by

no test coverage detected