summaryrefslogtreecommitdiff
path: root/app/src/main/java/org/the_jk/cleversync/io/TreeFactory.kt
blob: 47d56db63759926dfdb7b7e039fd051ccacecedc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package org.the_jk.cleversync.io

import android.content.ContentResolver
import android.net.Uri
import org.the_jk.cleversync.documents.DocumentTreeFactory
import org.the_jk.cleversync.io.samba.SambaCredentials
import org.the_jk.cleversync.local.LocalTreeFactory
import org.the_jk.cleversync.samba.SambaTreeFactory
import java.nio.file.Path

object TreeFactory {
    fun localModifiableTree(root: Path): ModifiableTree {
        return LocalTreeFactory.modifiableTree(root)
    }

    fun localTree(root: Path): Tree {
        return LocalTreeFactory.tree(root)
    }

    fun sambaModifiableTree(uri: String, credentials: SambaCredentials): Result<ModifiableTree> {
        return SambaTreeFactory.modifiableTree(uri, credentials)
    }

    fun sambaTree(uri: String, credentials: SambaCredentials): Result<Tree> {
        return SambaTreeFactory.tree(uri, credentials)
    }

    fun documentTree(contentResolver: ContentResolver, treeUri: Uri): Tree {
        return DocumentTreeFactory.tree(contentResolver, treeUri)
    }

    fun documentModifiableTree(contentResolver: ContentResolver, treeUri: Uri): ModifiableTree {
        return DocumentTreeFactory.modifiableTree(contentResolver, treeUri)
    }
}