ariane/app/src/main/java/oppen/ariane/io/gemini/Datasource.kt

19 lines
594 B
Kotlin
Raw Normal View History

package oppen.ariane.io.gemini
2020-08-21 15:12:00 +00:00
import android.content.Context
import oppen.ariane.io.GemState
import oppen.ariane.io.database.history.ArianeHistory
2020-08-21 15:12:00 +00:00
import java.net.URI
interface Datasource {
2020-11-13 15:38:57 +00:00
fun request(uri: URI, forceDownload: Boolean, onUpdate: (state: GemState) -> Unit)
fun request(uri: URI, onUpdate: (state: GemState) -> Unit)
2020-11-13 18:48:32 +00:00
fun canGoBack(): Boolean
fun goBack(onUpdate: (state: GemState) -> Unit)
2020-08-21 15:12:00 +00:00
companion object{
fun factory(context: Context, history: ArianeHistory): Datasource {
return GeminiDatasource(context, history)
2020-08-21 15:12:00 +00:00
}
}
}