aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/kotlin/com/pitchedapps/frost/contracts/FrostObservables.kt
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/contracts/FrostObservables.kt')
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/contracts/FrostObservables.kt31
1 files changed, 31 insertions, 0 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/contracts/FrostObservables.kt b/app/src/main/kotlin/com/pitchedapps/frost/contracts/FrostObservables.kt
new file mode 100644
index 00000000..882b67a0
--- /dev/null
+++ b/app/src/main/kotlin/com/pitchedapps/frost/contracts/FrostObservables.kt
@@ -0,0 +1,31 @@
+package com.pitchedapps.frost.contracts
+
+import io.reactivex.subjects.BehaviorSubject
+import io.reactivex.subjects.PublishSubject
+
+/**
+ * Created by Allan Wang on 2017-11-07.
+ */
+interface FrostObservables {
+ /**
+ * Observable to get data on whether view is refreshing or not
+ */
+ var refreshObservable: PublishSubject<Boolean>
+
+ /**
+ * Observable to get data on refresh progress, with range [0, 100]
+ */
+ var progressObservable: PublishSubject<Int>
+
+ /**
+ * Observable to get new title data (unique values only)
+ */
+ var titleObservable: BehaviorSubject<String>
+
+ fun passObservablesTo(other: FrostObservables) {
+ other.refreshObservable = refreshObservable
+ other.progressObservable = progressObservable
+ other.titleObservable = titleObservable
+ }
+
+} \ No newline at end of file