Skip to content

Commit 838f50e

Browse files
committed
Created exportNotes function in NotesHelper
1 parent 2fd8dcf commit 838f50e

File tree

1 file changed

+16
-0
lines changed
  • app/src/main/kotlin/com/simplemobiletools/notes/pro/helpers

1 file changed

+16
-0
lines changed

app/src/main/kotlin/com/simplemobiletools/notes/pro/helpers/NotesHelper.kt

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,18 @@ import android.content.Context
44
import android.os.Handler
55
import android.os.Looper
66
import com.simplemobiletools.commons.activities.BaseSimpleActivity
7+
import com.simplemobiletools.commons.helpers.ExportResult
78
import com.simplemobiletools.commons.helpers.PROTECTION_NONE
89
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
910
import com.simplemobiletools.notes.pro.R
1011
import com.simplemobiletools.notes.pro.extensions.config
1112
import com.simplemobiletools.notes.pro.extensions.notesDB
1213
import com.simplemobiletools.notes.pro.models.Note
1314
import com.simplemobiletools.notes.pro.models.NoteType
15+
import kotlinx.serialization.encodeToString
16+
import kotlinx.serialization.json.Json
1417
import java.io.File
18+
import java.io.OutputStream
1519

1620
class NotesHelper(val context: Context) {
1721
fun getNotes(callback: (notes: List<Note>) -> Unit) {
@@ -124,6 +128,18 @@ class NotesHelper(val context: Context) {
124128
}
125129
}
126130

131+
fun exportNotes(notesToBackup: List<Note>, outputStream: OutputStream): ExportResult {
132+
return try {
133+
val jsonString = Json.encodeToString(notesToBackup)
134+
outputStream.use {
135+
it.write(jsonString.toByteArray())
136+
}
137+
ExportResult.EXPORT_OK
138+
} catch (_: Error) {
139+
ExportResult.EXPORT_FAIL
140+
}
141+
}
142+
127143
enum class ImportResult {
128144
IMPORT_FAIL, IMPORT_OK, IMPORT_PARTIAL, IMPORT_NOTHING_NEW
129145
}

0 commit comments

Comments
 (0)