diff --git a/sandbox/detekt-baseline.xml b/sandbox/detekt-baseline.xml
index b06af7753..2e8d3d284 100644
--- a/sandbox/detekt-baseline.xml
+++ b/sandbox/detekt-baseline.xml
@@ -60,7 +60,7 @@
PackageNaming:DialogExampleTest.kt$package com.badoo.ribs.sandbox.rib.dialog_example
PackageNaming:DialogExampleView.kt$package com.badoo.ribs.sandbox.rib.dialog_example
PackageNaming:Dialogs.kt$package com.badoo.ribs.sandbox.rib.dialog_example.dialog
- PackageNaming:FooBar.kt$package com.badoo.ribs.sandbox.rib.foo_bar
+ PackageNaming:FooBarRib.kt$package com.badoo.ribs.sandbox.rib.foo_bar
PackageNaming:FooBarAnalytics.kt$package com.badoo.ribs.sandbox.rib.foo_bar.analytics
PackageNaming:FooBarBuilder.kt$package com.badoo.ribs.sandbox.rib.foo_bar
PackageNaming:FooBarFeature.kt$package com.badoo.ribs.sandbox.rib.foo_bar.feature
diff --git a/templates/release-0.27/detekt-baseline.xml b/templates/release-0.27/detekt-baseline.xml
index 222d0e204..4f520ca35 100644
--- a/templates/release-0.27/detekt-baseline.xml
+++ b/templates/release-0.27/detekt-baseline.xml
@@ -11,11 +11,11 @@
NotImplementedDeclaration:NewsToOutput.kt$NewsToOutput$TODO("Implement FooBarNewsToOutput mapping")
NotImplementedDeclaration:StateToViewModel.kt$StateToViewModel$TODO("Implement StateToViewModel mapping")
NotImplementedDeclaration:ViewEventToWish.kt$ViewEventToWish$TODO("Implement FooBarViewEventToWish mapping")
- PackageNaming:FooBar.kt$package com.badoo.ribs.template.leaf.foo_bar
- PackageNaming:FooBar.kt$package com.badoo.ribs.template.leaf_view_only.foo_bar
- PackageNaming:FooBar.kt$package com.badoo.ribs.template.node.foo_bar
- PackageNaming:FooBar.kt$package com.badoo.ribs.template.node_dagger.foo_bar
- PackageNaming:FooBar.kt$package com.badoo.ribs.template.node_dagger_build_param.foo_bar
+ PackageNaming:FooBarRib.kt$package com.badoo.ribs.template.leaf.foo_bar
+ PackageNaming:FooBarRib.kt$package com.badoo.ribs.template.leaf_view_only.foo_bar
+ PackageNaming:FooBarRib.kt$package com.badoo.ribs.template.node.foo_bar
+ PackageNaming:FooBarRib.kt$package com.badoo.ribs.template.node_dagger.foo_bar
+ PackageNaming:FooBarRib.kt$package com.badoo.ribs.template.node_dagger_build_param.foo_bar
PackageNaming:FooBarAnalytics.kt$package com.badoo.ribs.template.leaf.foo_bar.analytics
PackageNaming:FooBarAnalytics.kt$package com.badoo.ribs.template.node.foo_bar.analytics
PackageNaming:FooBarAnalytics.kt$package com.badoo.ribs.template.node_dagger.foo_bar.analytics
diff --git a/templates/release-0.27/src/androidTest/java/com/badoo/ribs/template/leaf/foo_bar/FooBarTest.kt b/templates/release-0.27/src/androidTest/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarTest.kt
similarity index 84%
rename from templates/release-0.27/src/androidTest/java/com/badoo/ribs/template/leaf/foo_bar/FooBarTest.kt
rename to templates/release-0.27/src/androidTest/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarTest.kt
index 373026013..4544813b2 100644
--- a/templates/release-0.27/src/androidTest/java/com/badoo/ribs/template/leaf/foo_bar/FooBarTest.kt
+++ b/templates/release-0.27/src/androidTest/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarTest.kt
@@ -1,9 +1,10 @@
-package com.badoo.ribs.template.leaf.foo_bar
+package com.badoo.ribs.template.leaf.foo_bar.v1
import android.os.Bundle
import com.badoo.ribs.test.RibsRule
import com.badoo.ribs.test.RibTestActivity
import com.badoo.ribs.core.modality.BuildContext.Companion.root
+import com.badoo.ribs.template.leaf.foo_bar.common.FooBar
import org.junit.Rule
import org.junit.Test
@@ -13,7 +14,7 @@ class FooBarTest {
val ribsRule = RibsRule { activity, savedInstanceState -> buildRib(activity, savedInstanceState) }
// TODO use rib for interactions based on it implementing Connectable
- lateinit var rib: FooBar
+ lateinit var rib: FooBarRib
private fun buildRib(ribTestActivity: RibTestActivity, savedInstanceState: Bundle?) =
FooBarBuilder(
diff --git a/templates/release-0.27/src/androidTest/java/com/badoo/ribs/template/node/foo_bar/FooBarTest.kt b/templates/release-0.27/src/androidTest/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarTest.kt
similarity index 84%
rename from templates/release-0.27/src/androidTest/java/com/badoo/ribs/template/node/foo_bar/FooBarTest.kt
rename to templates/release-0.27/src/androidTest/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarTest.kt
index 35e759c36..452b61203 100644
--- a/templates/release-0.27/src/androidTest/java/com/badoo/ribs/template/node/foo_bar/FooBarTest.kt
+++ b/templates/release-0.27/src/androidTest/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarTest.kt
@@ -1,9 +1,10 @@
-package com.badoo.ribs.template.node.foo_bar
+package com.badoo.ribs.template.node.foo_bar.v1
import android.os.Bundle
import com.badoo.ribs.test.RibsRule
import com.badoo.ribs.test.RibTestActivity
import com.badoo.ribs.core.modality.BuildContext.Companion.root
+import com.badoo.ribs.template.node.foo_bar.common.FooBar
import org.junit.Rule
import org.junit.Test
@@ -13,7 +14,7 @@ class FooBarTest {
val ribsRule = RibsRule { activity, savedInstanceState -> buildRib(activity, savedInstanceState) }
// TODO use rib for interactions based on it implementing Connectable
- lateinit var rib: FooBar
+ lateinit var rib: FooBarRib
private fun buildRib(ribTestActivity: RibTestActivity, savedInstanceState: Bundle?) =
FooBarBuilder(
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/FooBar.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/FooBar.kt
new file mode 100644
index 000000000..359bd1cb3
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/FooBar.kt
@@ -0,0 +1,11 @@
+package com.badoo.ribs.template.leaf.foo_bar.common
+
+interface FooBar {
+
+ interface Dependency
+
+ sealed class Input
+
+ sealed class Output
+
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/analytics/FooBarAnalytics.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/analytics/FooBarAnalytics.kt
similarity index 59%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/analytics/FooBarAnalytics.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/analytics/FooBarAnalytics.kt
index cfe169f21..19e96914f 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/analytics/FooBarAnalytics.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/analytics/FooBarAnalytics.kt
@@ -1,6 +1,6 @@
-package com.badoo.ribs.template.node.foo_bar.analytics
+package com.badoo.ribs.template.leaf.foo_bar.common.analytics
-import com.badoo.ribs.template.node.foo_bar.FooBarView
+import com.badoo.ribs.template.leaf.foo_bar.common.view.FooBarView
import io.reactivex.functions.Consumer
internal object FooBarAnalytics : Consumer {
@@ -9,7 +9,7 @@ internal object FooBarAnalytics : Consumer {
data class ViewEvent(val event: FooBarView.Event) : Event()
}
- override fun accept(event: FooBarAnalytics.Event) {
+ override fun accept(event: Event) {
// TODO Implement tracking
}
}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/feature/FooBarFeature.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/feature/FooBarFeature.kt
similarity index 77%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/feature/FooBarFeature.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/feature/FooBarFeature.kt
index 76e7878dd..ac94f0889 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/feature/FooBarFeature.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/feature/FooBarFeature.kt
@@ -1,14 +1,14 @@
-package com.badoo.ribs.template.leaf.foo_bar.feature
+package com.badoo.ribs.template.leaf.foo_bar.common.feature
import com.badoo.mvicore.element.Actor
import com.badoo.mvicore.element.Bootstrapper
import com.badoo.mvicore.element.NewsPublisher
import com.badoo.mvicore.element.Reducer
import com.badoo.mvicore.feature.ActorReducerFeature
-import com.badoo.ribs.template.leaf.foo_bar.feature.FooBarFeature.Effect
-import com.badoo.ribs.template.leaf.foo_bar.feature.FooBarFeature.News
-import com.badoo.ribs.template.leaf.foo_bar.feature.FooBarFeature.State
-import com.badoo.ribs.template.leaf.foo_bar.feature.FooBarFeature.Wish
+import com.badoo.ribs.template.leaf.foo_bar.common.feature.FooBarFeature.Effect
+import com.badoo.ribs.template.leaf.foo_bar.common.feature.FooBarFeature.News
+import com.badoo.ribs.template.leaf.foo_bar.common.feature.FooBarFeature.State
+import com.badoo.ribs.template.leaf.foo_bar.common.feature.FooBarFeature.Wish
import io.reactivex.Observable
import io.reactivex.Observable.empty
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/InputToWish.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/InputToWish.kt
new file mode 100644
index 000000000..18df29d4a
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/InputToWish.kt
@@ -0,0 +1,10 @@
+package com.badoo.ribs.template.leaf.foo_bar.common.mapper
+
+import com.badoo.ribs.template.leaf.foo_bar.common.FooBar.Input
+import com.badoo.ribs.template.leaf.foo_bar.common.feature.FooBarFeature.Wish
+
+internal object InputToWish : (Input) -> Wish? {
+
+ override fun invoke(event: Input): Wish? =
+ TODO("Implement FooBarInputToWish mapping")
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/NewsToOutput.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/NewsToOutput.kt
new file mode 100644
index 000000000..1861e666d
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/NewsToOutput.kt
@@ -0,0 +1,10 @@
+package com.badoo.ribs.template.leaf.foo_bar.common.mapper
+
+import com.badoo.ribs.template.leaf.foo_bar.common.FooBar.Output
+import com.badoo.ribs.template.leaf.foo_bar.common.feature.FooBarFeature.News
+
+internal object NewsToOutput : (News) -> Output? {
+
+ override fun invoke(news: News): Output? =
+ TODO("Implement FooBarNewsToOutput mapping")
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/StateToViewModel.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/StateToViewModel.kt
new file mode 100644
index 000000000..811dc756e
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/StateToViewModel.kt
@@ -0,0 +1,10 @@
+package com.badoo.ribs.template.leaf.foo_bar.common.mapper
+
+import com.badoo.ribs.template.leaf.foo_bar.common.view.FooBarView.ViewModel
+import com.badoo.ribs.template.leaf.foo_bar.common.feature.FooBarFeature.State
+
+internal object StateToViewModel : (State) -> ViewModel {
+
+ override fun invoke(state: State): ViewModel =
+ TODO("Implement StateToViewModel mapping")
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/ViewEventToAnalyticsEvent.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/ViewEventToAnalyticsEvent.kt
new file mode 100644
index 000000000..222468417
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/ViewEventToAnalyticsEvent.kt
@@ -0,0 +1,11 @@
+package com.badoo.ribs.template.leaf.foo_bar.common.mapper
+
+import com.badoo.ribs.template.leaf.foo_bar.common.view.FooBarView.Event
+import com.badoo.ribs.template.leaf.foo_bar.common.analytics.FooBarAnalytics
+import com.badoo.ribs.template.leaf.foo_bar.common.analytics.FooBarAnalytics.Event.ViewEvent
+
+internal object ViewEventToAnalyticsEvent : (Event) -> FooBarAnalytics.Event? {
+
+ override fun invoke(event: Event): FooBarAnalytics.Event? =
+ ViewEvent(event)
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/ViewEventToWish.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/ViewEventToWish.kt
new file mode 100644
index 000000000..932047ed5
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/mapper/ViewEventToWish.kt
@@ -0,0 +1,10 @@
+package com.badoo.ribs.template.leaf.foo_bar.common.mapper
+
+import com.badoo.ribs.template.leaf.foo_bar.common.view.FooBarView.Event
+import com.badoo.ribs.template.leaf.foo_bar.common.feature.FooBarFeature.Wish
+
+internal object ViewEventToWish : (Event) -> Wish? {
+
+ override fun invoke(event: Event): Wish? =
+ TODO("Implement FooBarViewEventToWish mapping")
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/view/FooBarView.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/view/FooBarView.kt
new file mode 100644
index 000000000..77243cabc
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/common/view/FooBarView.kt
@@ -0,0 +1,19 @@
+package com.badoo.ribs.template.leaf.foo_bar.common.view
+
+import com.badoo.ribs.core.view.RibView
+import com.badoo.ribs.template.leaf.foo_bar.common.view.FooBarView.Event
+import com.badoo.ribs.template.leaf.foo_bar.common.view.FooBarView.ViewModel
+import io.reactivex.ObservableSource
+import io.reactivex.functions.Consumer
+
+
+interface FooBarView : RibView,
+ ObservableSource,
+ Consumer {
+
+ sealed class Event
+
+ data class ViewModel(
+ val i: Int = 0
+ )
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/InputToWish.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/InputToWish.kt
deleted file mode 100644
index 09724a05e..000000000
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/InputToWish.kt
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.badoo.ribs.template.leaf.foo_bar.mapper
-
-import com.badoo.ribs.template.leaf.foo_bar.FooBar.Input
-import com.badoo.ribs.template.leaf.foo_bar.feature.FooBarFeature.Wish
-
-internal object InputToWish : (Input) -> Wish? {
-
- override fun invoke(event: Input): Wish? =
- TODO("Implement FooBarInputToWish mapping")
-}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/NewsToOutput.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/NewsToOutput.kt
deleted file mode 100644
index 329ebfde8..000000000
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/NewsToOutput.kt
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.badoo.ribs.template.leaf.foo_bar.mapper
-
-import com.badoo.ribs.template.leaf.foo_bar.FooBar.Output
-import com.badoo.ribs.template.leaf.foo_bar.feature.FooBarFeature.News
-
-internal object NewsToOutput : (News) -> Output? {
-
- override fun invoke(news: News): Output? =
- TODO("Implement FooBarNewsToOutput mapping")
-}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/StateToViewModel.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/StateToViewModel.kt
deleted file mode 100644
index 0bc7b6f9d..000000000
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/StateToViewModel.kt
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.badoo.ribs.template.leaf.foo_bar.mapper
-
-import com.badoo.ribs.template.leaf.foo_bar.FooBarView.ViewModel
-import com.badoo.ribs.template.leaf.foo_bar.feature.FooBarFeature.State
-
-internal object StateToViewModel : (State) -> ViewModel {
-
- override fun invoke(state: State): ViewModel =
- TODO("Implement StateToViewModel mapping")
-}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/ViewEventToAnalyticsEvent.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/ViewEventToAnalyticsEvent.kt
deleted file mode 100644
index 1337166bf..000000000
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/ViewEventToAnalyticsEvent.kt
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.badoo.ribs.template.leaf.foo_bar.mapper
-
-import com.badoo.ribs.template.leaf.foo_bar.FooBarView.Event
-import com.badoo.ribs.template.leaf.foo_bar.analytics.FooBarAnalytics
-import com.badoo.ribs.template.leaf.foo_bar.analytics.FooBarAnalytics.Event.ViewEvent
-
-internal object ViewEventToAnalyticsEvent : (Event) -> FooBarAnalytics.Event? {
-
- override fun invoke(event: Event): FooBarAnalytics.Event? =
- ViewEvent(event)
-}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/ViewEventToWish.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/ViewEventToWish.kt
deleted file mode 100644
index 585c81ca6..000000000
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/mapper/ViewEventToWish.kt
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.badoo.ribs.template.leaf.foo_bar.mapper
-
-import com.badoo.ribs.template.leaf.foo_bar.FooBarView.Event
-import com.badoo.ribs.template.leaf.foo_bar.feature.FooBarFeature.Wish
-
-internal object ViewEventToWish : (Event) -> Wish? {
-
- override fun invoke(event: Event): Wish? =
- TODO("Implement FooBarViewEventToWish mapping")
-}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBarBuilder.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarBuilder.kt
similarity index 74%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBarBuilder.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarBuilder.kt
index 65f54e243..ad5a25e88 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBarBuilder.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarBuilder.kt
@@ -1,16 +1,17 @@
-package com.badoo.ribs.template.leaf.foo_bar
+package com.badoo.ribs.template.leaf.foo_bar.v1
import com.badoo.ribs.builder.SimpleBuilder
import com.badoo.ribs.core.modality.BuildParams
import com.badoo.ribs.rx2.disposables
-import com.badoo.ribs.template.leaf.foo_bar.feature.FooBarFeature
+import com.badoo.ribs.template.leaf.foo_bar.common.FooBar
+import com.badoo.ribs.template.leaf.foo_bar.common.feature.FooBarFeature
class FooBarBuilder(
private val dependency: FooBar.Dependency
-) : SimpleBuilder() {
+) : SimpleBuilder() {
- override fun build(buildParams: BuildParams): FooBar {
- val customisation = buildParams.getOrDefault(FooBar.Customisation())
+ override fun build(buildParams: BuildParams): FooBarRib {
+ val customisation = buildParams.getOrDefault(FooBarRib.Customisation())
val feature = feature()
val interactor = interactor(buildParams, feature)
@@ -30,7 +31,7 @@ class FooBarBuilder(
private fun node(
buildParams: BuildParams,
- customisation: FooBar.Customisation,
+ customisation: FooBarRib.Customisation,
feature: FooBarFeature,
interactor: FooBarInteractor
) = FooBarNode(
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBarInteractor.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarInteractor.kt
similarity index 58%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBarInteractor.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarInteractor.kt
index 51affdda3..0f2f41804 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBarInteractor.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarInteractor.kt
@@ -1,4 +1,4 @@
-package com.badoo.ribs.template.leaf.foo_bar
+package com.badoo.ribs.template.leaf.foo_bar.v1
import androidx.lifecycle.Lifecycle
import com.badoo.mvicore.android.lifecycle.createDestroy
@@ -6,18 +6,19 @@ import com.badoo.mvicore.android.lifecycle.startStop
import com.badoo.binder.using
import com.badoo.ribs.clienthelper.interactor.Interactor
import com.badoo.ribs.core.modality.BuildParams
-import com.badoo.ribs.template.leaf.foo_bar.analytics.FooBarAnalytics
-import com.badoo.ribs.template.leaf.foo_bar.feature.FooBarFeature
-import com.badoo.ribs.template.leaf.foo_bar.mapper.InputToWish
-import com.badoo.ribs.template.leaf.foo_bar.mapper.NewsToOutput
-import com.badoo.ribs.template.leaf.foo_bar.mapper.StateToViewModel
-import com.badoo.ribs.template.leaf.foo_bar.mapper.ViewEventToAnalyticsEvent
-import com.badoo.ribs.template.leaf.foo_bar.mapper.ViewEventToWish
+import com.badoo.ribs.template.leaf.foo_bar.common.analytics.FooBarAnalytics
+import com.badoo.ribs.template.leaf.foo_bar.common.feature.FooBarFeature
+import com.badoo.ribs.template.leaf.foo_bar.common.mapper.InputToWish
+import com.badoo.ribs.template.leaf.foo_bar.common.mapper.NewsToOutput
+import com.badoo.ribs.template.leaf.foo_bar.common.mapper.StateToViewModel
+import com.badoo.ribs.template.leaf.foo_bar.common.mapper.ViewEventToAnalyticsEvent
+import com.badoo.ribs.template.leaf.foo_bar.common.mapper.ViewEventToWish
+import com.badoo.ribs.template.leaf.foo_bar.common.view.FooBarView
internal class FooBarInteractor(
buildParams: BuildParams<*>,
private val feature: FooBarFeature
-) : Interactor(
+) : Interactor(
buildParams = buildParams
) {
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBarNode.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarNode.kt
similarity index 73%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBarNode.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarNode.kt
index 1de5f60f3..3f4487866 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBarNode.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarNode.kt
@@ -1,12 +1,12 @@
-package com.badoo.ribs.template.leaf.foo_bar
+package com.badoo.ribs.template.leaf.foo_bar.v1
import com.badoo.ribs.rx2.clienthelper.connector.Connectable
import com.badoo.ribs.rx2.clienthelper.connector.NodeConnector
import com.badoo.ribs.core.modality.BuildParams
import com.badoo.ribs.core.plugin.Plugin
import com.badoo.ribs.core.view.ViewFactory
-import com.badoo.ribs.template.leaf.foo_bar.FooBar.Input
-import com.badoo.ribs.template.leaf.foo_bar.FooBar.Output
+import com.badoo.ribs.template.leaf.foo_bar.common.FooBar.Input
+import com.badoo.ribs.template.leaf.foo_bar.common.FooBar.Output
import com.badoo.ribs.rx2.workflows.RxWorkflowNode
import io.reactivex.Single
@@ -19,9 +19,9 @@ class FooBarNode internal constructor(
buildParams = buildParams,
viewFactory = viewFactory,
plugins = plugins
-), FooBar, Connectable by connector {
+), FooBarRib, Connectable by connector {
- override fun businessLogicOperation(): Single =
+ override fun businessLogicOperation(): Single =
executeWorkflow {
// todo e.g. push wish to feature / trigger input / output
// feature.accept()
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBar.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarRib.kt
similarity index 62%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBar.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarRib.kt
index be0a2ada1..7bfefc987 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBar.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarRib.kt
@@ -1,19 +1,13 @@
-package com.badoo.ribs.template.leaf.foo_bar
+package com.badoo.ribs.template.leaf.foo_bar.v1
import com.badoo.ribs.rx2.clienthelper.connector.Connectable
import com.badoo.ribs.core.Rib
import com.badoo.ribs.core.customisation.RibCustomisation
-import com.badoo.ribs.template.leaf.foo_bar.FooBar.Input
-import com.badoo.ribs.template.leaf.foo_bar.FooBar.Output
+import com.badoo.ribs.template.leaf.foo_bar.common.FooBar.Input
+import com.badoo.ribs.template.leaf.foo_bar.common.FooBar.Output
import io.reactivex.Single
-interface FooBar : Rib, Connectable {
-
- interface Dependency
-
- sealed class Input
-
- sealed class Output
+interface FooBarRib : Rib, Connectable {
class Customisation(
val viewFactory: FooBarView.Factory = FooBarViewImpl.Factory()
@@ -22,7 +16,7 @@ interface FooBar : Rib, Connectable {
// Workflow
// todo: rename rather than delete, and add more
// todo: expose all meaningful operations
- fun businessLogicOperation(): Single
+ fun businessLogicOperation(): Single
// todo: expose all possible children (even permanent parts), or remove if there's none
// fun attachChild1(): Single
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBarView.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarView.kt
similarity index 76%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBarView.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarView.kt
index 4ba5c054f..b473dcc36 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/FooBarView.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarView.kt
@@ -1,4 +1,4 @@
-package com.badoo.ribs.template.leaf.foo_bar
+package com.badoo.ribs.template.leaf.foo_bar.v1
import android.view.ViewGroup
import androidx.annotation.LayoutRes
@@ -8,21 +8,15 @@ import com.badoo.ribs.core.customisation.inflate
import com.badoo.ribs.core.view.AndroidRibView
import com.badoo.ribs.core.view.ViewFactory
import com.badoo.ribs.template.R
-import com.badoo.ribs.template.leaf.foo_bar.FooBarView.Event
-import com.badoo.ribs.template.leaf.foo_bar.FooBarView.ViewModel
+import com.badoo.ribs.template.leaf.foo_bar.common.view.FooBarView as FooBarViewCommon
+import com.badoo.ribs.template.leaf.foo_bar.common.view.FooBarView.Event
+import com.badoo.ribs.template.leaf.foo_bar.common.view.FooBarView.ViewModel
import com.jakewharton.rxrelay2.PublishRelay
import io.reactivex.ObservableSource
import io.reactivex.functions.Consumer
interface FooBarView : RibView,
- ObservableSource,
- Consumer {
-
- sealed class Event
-
- data class ViewModel(
- val i: Int = 0
- )
+ FooBarViewCommon {
fun interface Factory : ViewFactoryBuilder
}
@@ -47,6 +41,6 @@ class FooBarViewImpl private constructor(
}
}
- override fun accept(vm: FooBarView.ViewModel) {
+ override fun accept(vm: ViewModel) {
}
}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/FooBar.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/FooBar.kt
deleted file mode 100644
index 871a02693..000000000
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/FooBar.kt
+++ /dev/null
@@ -1,20 +0,0 @@
-package com.badoo.ribs.template.leaf_view_only.foo_bar
-
-import com.badoo.ribs.rx2.clienthelper.connector.Connectable
-import com.badoo.ribs.core.Rib
-import com.badoo.ribs.core.customisation.RibCustomisation
-import com.badoo.ribs.template.leaf_view_only.foo_bar.FooBar.Input
-import com.badoo.ribs.template.leaf_view_only.foo_bar.FooBar.Output
-
-interface FooBar : Rib, Connectable {
-
- interface Dependency
-
- sealed class Input
-
- sealed class Output
-
- class Customisation(
- val viewFactory: FooBarView.Factory = FooBarViewImpl.Factory()
- ) : RibCustomisation
-}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/common/FooBar.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/common/FooBar.kt
new file mode 100644
index 000000000..56649f652
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/common/FooBar.kt
@@ -0,0 +1,12 @@
+package com.badoo.ribs.template.leaf_view_only.foo_bar.common
+
+
+interface FooBar {
+
+ interface Dependency
+
+ sealed class Input
+
+ sealed class Output
+
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/common/FooBarView.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/common/FooBarView.kt
new file mode 100644
index 000000000..43f5ad894
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/common/FooBarView.kt
@@ -0,0 +1,16 @@
+package com.badoo.ribs.template.leaf_view_only.foo_bar.common
+
+import com.badoo.ribs.template.leaf_view_only.foo_bar.common.FooBarView.Event
+import com.badoo.ribs.template.leaf_view_only.foo_bar.common.FooBarView.ViewModel
+import io.reactivex.ObservableSource
+import io.reactivex.functions.Consumer
+
+interface FooBarView : ObservableSource,
+ Consumer {
+
+ sealed class Event
+
+ data class ViewModel(
+ val i: Int = 0
+ )
+}
\ No newline at end of file
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/FooBarBuilder.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/v1/FooBarBuilder.kt
similarity index 63%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/FooBarBuilder.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/v1/FooBarBuilder.kt
index 46636f4e1..8432c321c 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/FooBarBuilder.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/v1/FooBarBuilder.kt
@@ -1,22 +1,23 @@
-package com.badoo.ribs.template.leaf_view_only.foo_bar
+package com.badoo.ribs.template.leaf_view_only.foo_bar.v1
import com.badoo.ribs.builder.SimpleBuilder
import com.badoo.ribs.core.modality.BuildParams
+import com.badoo.ribs.template.leaf_view_only.foo_bar.common.FooBar
class FooBarBuilder(
private val dependency: FooBar.Dependency
-) : SimpleBuilder() {
+) : SimpleBuilder() {
- override fun build(buildParams: BuildParams): FooBar {
- val customisation = buildParams.getOrDefault(FooBar.Customisation())
+ override fun build(buildParams: BuildParams): FooBarRib {
+ val customisation = buildParams.getOrDefault(FooBarRib.Customisation())
return node(buildParams, customisation)
}
private fun node(
buildParams: BuildParams,
- customisation: FooBar.Customisation
+ customisation: FooBarRib.Customisation
) = FooBarNode(
buildParams = buildParams,
viewFactory = customisation.viewFactory(null),
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/FooBarNode.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/v1/FooBarNode.kt
similarity index 71%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/FooBarNode.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/v1/FooBarNode.kt
index fcbf109b2..abd42d2bd 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/FooBarNode.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/v1/FooBarNode.kt
@@ -1,12 +1,12 @@
-package com.badoo.ribs.template.leaf_view_only.foo_bar
+package com.badoo.ribs.template.leaf_view_only.foo_bar.v1
import com.badoo.ribs.rx2.clienthelper.connector.Connectable
import com.badoo.ribs.rx2.clienthelper.connector.NodeConnector
import com.badoo.ribs.core.modality.BuildParams
import com.badoo.ribs.core.plugin.Plugin
import com.badoo.ribs.core.view.ViewFactory
-import com.badoo.ribs.template.leaf_view_only.foo_bar.FooBar.Input
-import com.badoo.ribs.template.leaf_view_only.foo_bar.FooBar.Output
+import com.badoo.ribs.template.leaf_view_only.foo_bar.common.FooBar.Input
+import com.badoo.ribs.template.leaf_view_only.foo_bar.common.FooBar.Output
import com.badoo.ribs.rx2.workflows.RxWorkflowNode
class FooBarNode internal constructor(
@@ -18,6 +18,6 @@ class FooBarNode internal constructor(
buildParams = buildParams,
viewFactory = viewFactory,
plugins = plugins
-), FooBar, Connectable by connector {
+), FooBarRib, Connectable by connector {
}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/v1/FooBarRib.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/v1/FooBarRib.kt
new file mode 100644
index 000000000..84eca1515
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/v1/FooBarRib.kt
@@ -0,0 +1,15 @@
+package com.badoo.ribs.template.leaf_view_only.foo_bar.v1
+
+import com.badoo.ribs.rx2.clienthelper.connector.Connectable
+import com.badoo.ribs.core.Rib
+import com.badoo.ribs.core.customisation.RibCustomisation
+import com.badoo.ribs.template.leaf_view_only.foo_bar.common.FooBar
+import com.badoo.ribs.template.leaf_view_only.foo_bar.common.FooBar.Input
+import com.badoo.ribs.template.leaf_view_only.foo_bar.common.FooBar.Output
+
+interface FooBarRib : Rib, Connectable, FooBar {
+
+ class Customisation(
+ val viewFactory: FooBarView.Factory = FooBarViewImpl.Factory()
+ ) : RibCustomisation
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/FooBarView.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/v1/FooBarView.kt
similarity index 74%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/FooBarView.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/v1/FooBarView.kt
index f8fd37afb..c40dac33b 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/FooBarView.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf_view_only/foo_bar/v1/FooBarView.kt
@@ -1,4 +1,4 @@
-package com.badoo.ribs.template.leaf_view_only.foo_bar
+package com.badoo.ribs.template.leaf_view_only.foo_bar.v1
import android.view.ViewGroup
import androidx.annotation.LayoutRes
@@ -8,21 +8,15 @@ import com.badoo.ribs.core.view.RibView
import com.badoo.ribs.core.view.ViewFactory
import com.badoo.ribs.core.view.ViewFactoryBuilder
import com.badoo.ribs.template.R
-import com.badoo.ribs.template.leaf_view_only.foo_bar.FooBarView.Event
-import com.badoo.ribs.template.leaf_view_only.foo_bar.FooBarView.ViewModel
+import com.badoo.ribs.template.leaf_view_only.foo_bar.common.FooBarView as FooBarViewCommon
+import com.badoo.ribs.template.leaf_view_only.foo_bar.common.FooBarView.Event
+import com.badoo.ribs.template.leaf_view_only.foo_bar.common.FooBarView.ViewModel
import com.jakewharton.rxrelay2.PublishRelay
import io.reactivex.ObservableSource
import io.reactivex.functions.Consumer
interface FooBarView : RibView,
- ObservableSource,
- Consumer {
-
- sealed class Event
-
- data class ViewModel(
- val i: Int = 0
- )
+ FooBarViewCommon {
fun interface Factory : ViewFactoryBuilder
}
@@ -47,6 +41,6 @@ class FooBarViewImpl private constructor(
}
}
- override fun accept(vm: FooBarView.ViewModel) {
+ override fun accept(vm: ViewModel) {
}
}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/FooBar.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/FooBar.kt
new file mode 100644
index 000000000..ed806129e
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/FooBar.kt
@@ -0,0 +1,20 @@
+package com.badoo.ribs.template.node.foo_bar.common
+
+import io.reactivex.Single
+
+interface FooBar {
+
+ interface Dependency
+
+ sealed class Input
+
+ sealed class Output
+
+ // Workflow
+ // todo: rename rather than delete, and add more
+ // todo: expose all meaningful operations
+ fun businessLogicOperation(): Single
+
+ // todo: expose all possible children (even permanent parts), or remove if there's none
+ // fun attachChild1(): Single
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/analytics/FooBarAnalytics.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/analytics/FooBarAnalytics.kt
similarity index 59%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/analytics/FooBarAnalytics.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/analytics/FooBarAnalytics.kt
index 3e253e4cd..f2c6ceb88 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/leaf/foo_bar/analytics/FooBarAnalytics.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/analytics/FooBarAnalytics.kt
@@ -1,6 +1,6 @@
-package com.badoo.ribs.template.leaf.foo_bar.analytics
+package com.badoo.ribs.template.node.foo_bar.common.analytics
-import com.badoo.ribs.template.leaf.foo_bar.FooBarView
+import com.badoo.ribs.template.node.foo_bar.common.view.FooBarView
import io.reactivex.functions.Consumer
internal object FooBarAnalytics : Consumer {
@@ -9,7 +9,7 @@ internal object FooBarAnalytics : Consumer {
data class ViewEvent(val event: FooBarView.Event) : Event()
}
- override fun accept(event: FooBarAnalytics.Event) {
+ override fun accept(event: Event) {
// TODO Implement tracking
}
}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/feature/FooBarFeature.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/feature/FooBarFeature.kt
similarity index 77%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/feature/FooBarFeature.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/feature/FooBarFeature.kt
index 7a734cdf8..d8af822ad 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/feature/FooBarFeature.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/feature/FooBarFeature.kt
@@ -1,14 +1,14 @@
-package com.badoo.ribs.template.node.foo_bar.feature
+package com.badoo.ribs.template.node.foo_bar.common.feature
import com.badoo.mvicore.element.Actor
import com.badoo.mvicore.element.Bootstrapper
import com.badoo.mvicore.element.NewsPublisher
import com.badoo.mvicore.element.Reducer
import com.badoo.mvicore.feature.ActorReducerFeature
-import com.badoo.ribs.template.node.foo_bar.feature.FooBarFeature.Effect
-import com.badoo.ribs.template.node.foo_bar.feature.FooBarFeature.News
-import com.badoo.ribs.template.node.foo_bar.feature.FooBarFeature.State
-import com.badoo.ribs.template.node.foo_bar.feature.FooBarFeature.Wish
+import com.badoo.ribs.template.node.foo_bar.common.feature.FooBarFeature.Effect
+import com.badoo.ribs.template.node.foo_bar.common.feature.FooBarFeature.News
+import com.badoo.ribs.template.node.foo_bar.common.feature.FooBarFeature.State
+import com.badoo.ribs.template.node.foo_bar.common.feature.FooBarFeature.Wish
import io.reactivex.Observable
import io.reactivex.Observable.empty
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/InputToWish.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/InputToWish.kt
new file mode 100644
index 000000000..baad65044
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/InputToWish.kt
@@ -0,0 +1,10 @@
+package com.badoo.ribs.template.node.foo_bar.common.mapper
+
+import com.badoo.ribs.template.node.foo_bar.common.FooBar.Input
+import com.badoo.ribs.template.node.foo_bar.common.feature.FooBarFeature.Wish
+
+internal object InputToWish : (Input) -> Wish? {
+
+ override fun invoke(event: Input): Wish? =
+ TODO("Implement FooBarInputToWish mapping")
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/NewsToOutput.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/NewsToOutput.kt
new file mode 100644
index 000000000..9ead1cb94
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/NewsToOutput.kt
@@ -0,0 +1,10 @@
+package com.badoo.ribs.template.node.foo_bar.common.mapper
+
+import com.badoo.ribs.template.node.foo_bar.common.FooBar.Output
+import com.badoo.ribs.template.node.foo_bar.common.feature.FooBarFeature.News
+
+internal object NewsToOutput : (News) -> Output? {
+
+ override fun invoke(news: News): Output? =
+ TODO("Implement FooBarNewsToOutput mapping")
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/StateToViewModel.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/StateToViewModel.kt
new file mode 100644
index 000000000..181f558a7
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/StateToViewModel.kt
@@ -0,0 +1,10 @@
+package com.badoo.ribs.template.node.foo_bar.common.mapper
+
+import com.badoo.ribs.template.node.foo_bar.common.view.FooBarView.ViewModel
+import com.badoo.ribs.template.node.foo_bar.common.feature.FooBarFeature.State
+
+internal object StateToViewModel : (State) -> ViewModel {
+
+ override fun invoke(state: State): ViewModel =
+ TODO("Implement StateToViewModel mapping")
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/ViewEventToAnalyticsEvent.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/ViewEventToAnalyticsEvent.kt
new file mode 100644
index 000000000..76bb14a25
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/ViewEventToAnalyticsEvent.kt
@@ -0,0 +1,11 @@
+package com.badoo.ribs.template.node.foo_bar.common.mapper
+
+import com.badoo.ribs.template.node.foo_bar.common.view.FooBarView.Event
+import com.badoo.ribs.template.node.foo_bar.common.analytics.FooBarAnalytics
+import com.badoo.ribs.template.node.foo_bar.common.analytics.FooBarAnalytics.Event.ViewEvent
+
+internal object ViewEventToAnalyticsEvent : (Event) -> FooBarAnalytics.Event? {
+
+ override fun invoke(event: Event): FooBarAnalytics.Event? =
+ ViewEvent(event)
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/ViewEventToWish.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/ViewEventToWish.kt
new file mode 100644
index 000000000..834a4d16f
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/mapper/ViewEventToWish.kt
@@ -0,0 +1,10 @@
+package com.badoo.ribs.template.node.foo_bar.common.mapper
+
+import com.badoo.ribs.template.node.foo_bar.common.view.FooBarView.Event
+import com.badoo.ribs.template.node.foo_bar.common.feature.FooBarFeature.Wish
+
+internal object ViewEventToWish : (Event) -> Wish? {
+
+ override fun invoke(event: Event): Wish? =
+ TODO("Implement FooBarViewEventToWish mapping")
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/view/FooBarView.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/view/FooBarView.kt
new file mode 100644
index 000000000..c7af47b4b
--- /dev/null
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/common/view/FooBarView.kt
@@ -0,0 +1,16 @@
+package com.badoo.ribs.template.node.foo_bar.common.view
+
+import com.badoo.ribs.template.node.foo_bar.common.view.FooBarView.Event
+import com.badoo.ribs.template.node.foo_bar.common.view.FooBarView.ViewModel
+import io.reactivex.ObservableSource
+import io.reactivex.functions.Consumer
+
+interface FooBarView : ObservableSource,
+ Consumer {
+
+ sealed class Event
+
+ data class ViewModel(
+ val i: Int = 0
+ )
+}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/InputToWish.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/InputToWish.kt
deleted file mode 100644
index 6ef3307bb..000000000
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/InputToWish.kt
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.badoo.ribs.template.node.foo_bar.mapper
-
-import com.badoo.ribs.template.node.foo_bar.FooBar.Input
-import com.badoo.ribs.template.node.foo_bar.feature.FooBarFeature.Wish
-
-internal object InputToWish : (Input) -> Wish? {
-
- override fun invoke(event: Input): Wish? =
- TODO("Implement FooBarInputToWish mapping")
-}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/NewsToOutput.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/NewsToOutput.kt
deleted file mode 100644
index 0421d90f8..000000000
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/NewsToOutput.kt
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.badoo.ribs.template.node.foo_bar.mapper
-
-import com.badoo.ribs.template.node.foo_bar.FooBar.Output
-import com.badoo.ribs.template.node.foo_bar.feature.FooBarFeature.News
-
-internal object NewsToOutput : (News) -> Output? {
-
- override fun invoke(news: News): Output? =
- TODO("Implement FooBarNewsToOutput mapping")
-}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/StateToViewModel.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/StateToViewModel.kt
deleted file mode 100644
index cd95a4865..000000000
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/StateToViewModel.kt
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.badoo.ribs.template.node.foo_bar.mapper
-
-import com.badoo.ribs.template.node.foo_bar.FooBarView.ViewModel
-import com.badoo.ribs.template.node.foo_bar.feature.FooBarFeature.State
-
-internal object StateToViewModel : (State) -> ViewModel {
-
- override fun invoke(state: State): ViewModel =
- TODO("Implement StateToViewModel mapping")
-}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/ViewEventToAnalyticsEvent.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/ViewEventToAnalyticsEvent.kt
deleted file mode 100644
index 7e3fd2c29..000000000
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/ViewEventToAnalyticsEvent.kt
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.badoo.ribs.template.node.foo_bar.mapper
-
-import com.badoo.ribs.template.node.foo_bar.FooBarView.Event
-import com.badoo.ribs.template.node.foo_bar.analytics.FooBarAnalytics
-import com.badoo.ribs.template.node.foo_bar.analytics.FooBarAnalytics.Event.ViewEvent
-
-internal object ViewEventToAnalyticsEvent : (Event) -> FooBarAnalytics.Event? {
-
- override fun invoke(event: Event): FooBarAnalytics.Event? =
- ViewEvent(event)
-}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/ViewEventToWish.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/ViewEventToWish.kt
deleted file mode 100644
index a94ad9cbc..000000000
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/mapper/ViewEventToWish.kt
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.badoo.ribs.template.node.foo_bar.mapper
-
-import com.badoo.ribs.template.node.foo_bar.FooBarView.Event
-import com.badoo.ribs.template.node.foo_bar.feature.FooBarFeature.Wish
-
-internal object ViewEventToWish : (Event) -> Wish? {
-
- override fun invoke(event: Event): Wish? =
- TODO("Implement FooBarViewEventToWish mapping")
-}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBarBuilder.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarBuilder.kt
similarity index 76%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBarBuilder.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarBuilder.kt
index 17ffe5d8a..8bbb8da3c 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBarBuilder.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarBuilder.kt
@@ -1,24 +1,25 @@
@file:SuppressWarnings("LongParameterList")
-package com.badoo.ribs.template.node.foo_bar
+package com.badoo.ribs.template.node.foo_bar.v1
import com.badoo.ribs.builder.SimpleBuilder
import com.badoo.ribs.core.modality.BuildParams
import com.badoo.ribs.routing.source.RoutingSource
import com.badoo.ribs.routing.source.backstack.BackStack
import com.badoo.ribs.rx2.disposables
-import com.badoo.ribs.template.node.foo_bar.feature.FooBarFeature
-import com.badoo.ribs.template.node.foo_bar.routing.FooBarChildBuilders
-import com.badoo.ribs.template.node.foo_bar.routing.FooBarRouter
-import com.badoo.ribs.template.node.foo_bar.routing.FooBarRouter.Configuration
+import com.badoo.ribs.template.node.foo_bar.common.FooBar
+import com.badoo.ribs.template.node.foo_bar.common.feature.FooBarFeature
+import com.badoo.ribs.template.node.foo_bar.v1.routing.FooBarChildBuilders
+import com.badoo.ribs.template.node.foo_bar.v1.routing.FooBarRouter
+import com.badoo.ribs.template.node.foo_bar.v1.routing.FooBarRouter.Configuration
class FooBarBuilder(
private val dependency: FooBar.Dependency
-) : SimpleBuilder() {
+) : SimpleBuilder() {
- override fun build(buildParams: BuildParams): FooBar {
+ override fun build(buildParams: BuildParams): FooBarRib {
val connections = FooBarChildBuilders(dependency)
- val customisation = buildParams.getOrDefault(FooBar.Customisation())
+ val customisation = buildParams.getOrDefault(FooBarRib.Customisation())
val backStack = backStack(buildParams)
val feature = feature()
val interactor = interactor(buildParams, backStack, feature)
@@ -50,7 +51,7 @@ class FooBarBuilder(
buildParams: BuildParams<*>,
routingSource: RoutingSource,
builders: FooBarChildBuilders,
- customisation: FooBar.Customisation
+ customisation: FooBarRib.Customisation
) = FooBarRouter(
buildParams = buildParams,
builders = builders,
@@ -60,7 +61,7 @@ class FooBarBuilder(
private fun node(
buildParams: BuildParams<*>,
- customisation: FooBar.Customisation,
+ customisation: FooBarRib.Customisation,
feature: FooBarFeature,
interactor: FooBarInteractor,
router: FooBarRouter
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBarInteractor.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarInteractor.kt
similarity index 65%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBarInteractor.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarInteractor.kt
index 98623c59e..98ba76e2f 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBarInteractor.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarInteractor.kt
@@ -1,28 +1,26 @@
-package com.badoo.ribs.template.node.foo_bar
+package com.badoo.ribs.template.node.foo_bar.v1
import androidx.lifecycle.Lifecycle
import com.badoo.mvicore.android.lifecycle.createDestroy
import com.badoo.mvicore.android.lifecycle.startStop
import com.badoo.binder.using
import com.badoo.ribs.clienthelper.interactor.Interactor
-import com.badoo.ribs.clienthelper.childaware.childAware
import com.badoo.ribs.core.modality.BuildParams
-import com.badoo.ribs.mvicore.createDestroy
import com.badoo.ribs.routing.source.backstack.BackStack
-import com.badoo.ribs.template.node.foo_bar.analytics.FooBarAnalytics
-import com.badoo.ribs.template.node.foo_bar.feature.FooBarFeature
-import com.badoo.ribs.template.node.foo_bar.mapper.InputToWish
-import com.badoo.ribs.template.node.foo_bar.mapper.NewsToOutput
-import com.badoo.ribs.template.node.foo_bar.mapper.StateToViewModel
-import com.badoo.ribs.template.node.foo_bar.mapper.ViewEventToAnalyticsEvent
-import com.badoo.ribs.template.node.foo_bar.mapper.ViewEventToWish
-import com.badoo.ribs.template.node.foo_bar.routing.FooBarRouter.Configuration
+import com.badoo.ribs.template.node.foo_bar.common.analytics.FooBarAnalytics
+import com.badoo.ribs.template.node.foo_bar.common.feature.FooBarFeature
+import com.badoo.ribs.template.node.foo_bar.common.mapper.InputToWish
+import com.badoo.ribs.template.node.foo_bar.common.mapper.NewsToOutput
+import com.badoo.ribs.template.node.foo_bar.common.mapper.StateToViewModel
+import com.badoo.ribs.template.node.foo_bar.common.mapper.ViewEventToAnalyticsEvent
+import com.badoo.ribs.template.node.foo_bar.common.mapper.ViewEventToWish
+import com.badoo.ribs.template.node.foo_bar.v1.routing.FooBarRouter.Configuration
internal class FooBarInteractor(
buildParams: BuildParams<*>,
private val backStack: BackStack,
private val feature: FooBarFeature
-) : Interactor(
+) : Interactor(
buildParams = buildParams
) {
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBarNode.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarNode.kt
similarity index 78%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBarNode.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarNode.kt
index cc52f7b14..d72b54826 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBarNode.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarNode.kt
@@ -1,4 +1,4 @@
-package com.badoo.ribs.template.node.foo_bar
+package com.badoo.ribs.template.node.foo_bar.v1
import com.badoo.ribs.core.modality.BuildParams
import com.badoo.ribs.core.plugin.Plugin
@@ -6,8 +6,8 @@ import com.badoo.ribs.core.view.ViewFactory
import com.badoo.ribs.rx2.clienthelper.connector.Connectable
import com.badoo.ribs.rx2.clienthelper.connector.NodeConnector
import com.badoo.ribs.rx2.workflows.RxWorkflowNode
-import com.badoo.ribs.template.node.foo_bar.FooBar.Input
-import com.badoo.ribs.template.node.foo_bar.FooBar.Output
+import com.badoo.ribs.template.node.foo_bar.common.FooBar.Input
+import com.badoo.ribs.template.node.foo_bar.common.FooBar.Output
import io.reactivex.Single
class FooBarNode internal constructor(
@@ -19,9 +19,9 @@ class FooBarNode internal constructor(
buildParams = buildParams,
viewFactory = viewFactory,
plugins = plugins
-), FooBar, Connectable by connector {
+), FooBarRib, Connectable by connector {
- override fun businessLogicOperation(): Single =
+ override fun businessLogicOperation(): Single =
executeWorkflow {
// todo e.g. push wish to feature / trigger input / output
// feature.accept()
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBar.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarRib.kt
similarity index 62%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBar.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarRib.kt
index 1fbd1f909..10aaaec71 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBar.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarRib.kt
@@ -1,21 +1,16 @@
-package com.badoo.ribs.template.node.foo_bar
+package com.badoo.ribs.template.node.foo_bar.v1
import com.badoo.ribs.rx2.clienthelper.connector.Connectable
import com.badoo.ribs.core.Rib
import com.badoo.ribs.routing.transition.handler.TransitionHandler
import com.badoo.ribs.core.customisation.RibCustomisation
-import com.badoo.ribs.template.node.foo_bar.FooBar.Input
-import com.badoo.ribs.template.node.foo_bar.FooBar.Output
-import com.badoo.ribs.template.node.foo_bar.routing.FooBarRouter
+import com.badoo.ribs.template.leaf_view_only.foo_bar.common.FooBar
+import com.badoo.ribs.template.node.foo_bar.common.FooBar.Input
+import com.badoo.ribs.template.node.foo_bar.common.FooBar.Output
+import com.badoo.ribs.template.node.foo_bar.v1.routing.FooBarRouter
import io.reactivex.Single
-interface FooBar : Rib, Connectable {
-
- interface Dependency
-
- sealed class Input
-
- sealed class Output
+interface FooBarRib : FooBar, Rib, Connectable {
class Customisation(
val viewFactory: FooBarView.Factory = FooBarViewImpl.Factory(),
@@ -25,7 +20,7 @@ interface FooBar : Rib, Connectable {
// Workflow
// todo: rename rather than delete, and add more
// todo: expose all meaningful operations
- fun businessLogicOperation(): Single
+ fun businessLogicOperation(): Single
// todo: expose all possible children (even permanent parts), or remove if there's none
// fun attachChild1(): Single
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBarView.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarView.kt
similarity index 75%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBarView.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarView.kt
index 03e75dfff..b584e85b7 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/FooBarView.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarView.kt
@@ -1,28 +1,22 @@
-package com.badoo.ribs.template.node.foo_bar
+package com.badoo.ribs.template.node.foo_bar.v1
import android.view.ViewGroup
import androidx.annotation.LayoutRes
-import com.badoo.ribs.core.view.RibView
-import com.badoo.ribs.core.view.ViewFactoryBuilder
import com.badoo.ribs.core.customisation.inflate
import com.badoo.ribs.core.view.AndroidRibView
+import com.badoo.ribs.core.view.RibView
import com.badoo.ribs.core.view.ViewFactory
+import com.badoo.ribs.core.view.ViewFactoryBuilder
import com.badoo.ribs.template.R
-import com.badoo.ribs.template.node.foo_bar.FooBarView.Event
-import com.badoo.ribs.template.node.foo_bar.FooBarView.ViewModel
+import com.badoo.ribs.template.node.foo_bar.common.view.FooBarView as FooBarViewCommon
+import com.badoo.ribs.template.node.foo_bar.common.view.FooBarView.Event
+import com.badoo.ribs.template.node.foo_bar.common.view.FooBarView.ViewModel
import com.jakewharton.rxrelay2.PublishRelay
import io.reactivex.ObservableSource
import io.reactivex.functions.Consumer
interface FooBarView : RibView,
- ObservableSource,
- Consumer {
-
- sealed class Event
-
- data class ViewModel(
- val i: Int = 0
- )
+ FooBarViewCommon {
fun interface Factory : ViewFactoryBuilder
}
@@ -30,14 +24,14 @@ interface FooBarView : RibView,
class FooBarViewImpl private constructor(
override val androidView: ViewGroup,
- private val events: PublishRelay = PublishRelay.create()
+ private val events: PublishRelay = PublishRelay.create(),
) : AndroidRibView(),
FooBarView,
ObservableSource by events,
Consumer {
class Factory(
- @LayoutRes private val layoutRes: Int = R.layout.rib_foo_bar
+ @LayoutRes private val layoutRes: Int = R.layout.rib_foo_bar,
) : FooBarView.Factory {
override fun invoke(deps: Nothing?): ViewFactory =
ViewFactory {
@@ -47,6 +41,6 @@ class FooBarViewImpl private constructor(
}
}
- override fun accept(vm: FooBarView.ViewModel) {
+ override fun accept(vm: ViewModel) {
}
}
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/routing/FooBarChildBuilders.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/routing/FooBarChildBuilders.kt
similarity index 81%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/routing/FooBarChildBuilders.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/routing/FooBarChildBuilders.kt
index 9d4829abf..f209ae97f 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/routing/FooBarChildBuilders.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/routing/FooBarChildBuilders.kt
@@ -1,6 +1,6 @@
-package com.badoo.ribs.template.node.foo_bar.routing
+package com.badoo.ribs.template.node.foo_bar.v1.routing
-import com.badoo.ribs.template.node.foo_bar.FooBar
+import com.badoo.ribs.template.node.foo_bar.common.FooBar
internal class FooBarChildBuilders(
dependency: FooBar.Dependency
diff --git a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/routing/FooBarRouter.kt b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/routing/FooBarRouter.kt
similarity index 86%
rename from templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/routing/FooBarRouter.kt
rename to templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/routing/FooBarRouter.kt
index d57b8d042..cc463faf6 100644
--- a/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/routing/FooBarRouter.kt
+++ b/templates/release-0.27/src/main/java/com/badoo/ribs/template/node/foo_bar/v1/routing/FooBarRouter.kt
@@ -1,4 +1,4 @@
-package com.badoo.ribs.template.node.foo_bar.routing
+package com.badoo.ribs.template.node.foo_bar.v1.routing
import android.os.Parcelable
import com.badoo.ribs.core.modality.BuildParams
@@ -8,8 +8,8 @@ import com.badoo.ribs.routing.resolution.Resolution.Companion.noop
import com.badoo.ribs.routing.router.Router
import com.badoo.ribs.routing.source.RoutingSource
import com.badoo.ribs.routing.transition.handler.TransitionHandler
-import com.badoo.ribs.template.node.foo_bar.routing.FooBarRouter.Configuration
-import com.badoo.ribs.template.node.foo_bar.routing.FooBarRouter.Configuration.Content
+import com.badoo.ribs.template.node.foo_bar.v1.routing.FooBarRouter.Configuration
+import com.badoo.ribs.template.node.foo_bar.v1.routing.FooBarRouter.Configuration.Content
import kotlinx.parcelize.Parcelize
class FooBarRouter internal constructor(
diff --git a/templates/release-0.27/src/test/java/com/badoo/ribs/template/leaf/foo_bar/FooBarInteractorTest.kt b/templates/release-0.27/src/test/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarInteractorTest.kt
similarity index 78%
rename from templates/release-0.27/src/test/java/com/badoo/ribs/template/leaf/foo_bar/FooBarInteractorTest.kt
rename to templates/release-0.27/src/test/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarInteractorTest.kt
index 0ed68dccd..f6bd390ba 100644
--- a/templates/release-0.27/src/test/java/com/badoo/ribs/template/leaf/foo_bar/FooBarInteractorTest.kt
+++ b/templates/release-0.27/src/test/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarInteractorTest.kt
@@ -1,6 +1,7 @@
-package com.badoo.ribs.template.leaf.foo_bar
+package com.badoo.ribs.template.leaf.foo_bar.v1
-import com.badoo.ribs.template.leaf.foo_bar.feature.FooBarFeature
+import com.badoo.ribs.template.leaf.foo_bar.common.feature.FooBarFeature
+import com.badoo.ribs.template.leaf.foo_bar.v1.FooBarInteractor
import com.badoo.ribs.test.emptyBuildParams
import org.mockito.kotlin.mock
import org.junit.After
diff --git a/templates/release-0.27/src/test/java/com/badoo/ribs/template/leaf/foo_bar/FooBarWorkflowTest.kt b/templates/release-0.27/src/test/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarWorkflowTest.kt
similarity index 81%
rename from templates/release-0.27/src/test/java/com/badoo/ribs/template/leaf/foo_bar/FooBarWorkflowTest.kt
rename to templates/release-0.27/src/test/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarWorkflowTest.kt
index 6157622b3..d211db8a9 100644
--- a/templates/release-0.27/src/test/java/com/badoo/ribs/template/leaf/foo_bar/FooBarWorkflowTest.kt
+++ b/templates/release-0.27/src/test/java/com/badoo/ribs/template/leaf/foo_bar/v1/FooBarWorkflowTest.kt
@@ -1,13 +1,14 @@
-package com.badoo.ribs.template.leaf.foo_bar
+package com.badoo.ribs.template.leaf.foo_bar.v1
import com.badoo.ribs.core.modality.BuildContext
+import com.badoo.ribs.template.leaf.foo_bar.common.FooBar
import org.junit.After
import org.junit.Before
import org.junit.Test
class FooBarWorkflowTest {
- private lateinit var workflow: FooBar
+ private lateinit var workflow: FooBarRib
@Before
fun setup() {
diff --git a/templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/FooBarInteractorTest.kt b/templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarInteractorTest.kt
similarity index 75%
rename from templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/FooBarInteractorTest.kt
rename to templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarInteractorTest.kt
index 2279ddbcd..282ab4450 100644
--- a/templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/FooBarInteractorTest.kt
+++ b/templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarInteractorTest.kt
@@ -1,8 +1,9 @@
-package com.badoo.ribs.template.node.foo_bar
+package com.badoo.ribs.template.node.foo_bar.v1
import com.badoo.ribs.routing.source.backstack.BackStack
-import com.badoo.ribs.template.node.foo_bar.feature.FooBarFeature
-import com.badoo.ribs.template.node.foo_bar.routing.FooBarRouter.Configuration
+import com.badoo.ribs.template.node.foo_bar.common.feature.FooBarFeature
+import com.badoo.ribs.template.node.foo_bar.v1.FooBarInteractor
+import com.badoo.ribs.template.node.foo_bar.v1.routing.FooBarRouter.Configuration
import com.badoo.ribs.test.emptyBuildParams
import org.mockito.kotlin.mock
import org.junit.After
diff --git a/templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/FooBarRouterTest.kt b/templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarRouterTest.kt
similarity index 88%
rename from templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/FooBarRouterTest.kt
rename to templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarRouterTest.kt
index d844029fc..072c355fe 100644
--- a/templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/FooBarRouterTest.kt
+++ b/templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarRouterTest.kt
@@ -1,7 +1,7 @@
-package com.badoo.ribs.template.node.foo_bar
+package com.badoo.ribs.template.node.foo_bar.v1
import com.badoo.ribs.routing.source.impl.Empty
-import com.badoo.ribs.template.node.foo_bar.routing.FooBarRouter
+import com.badoo.ribs.template.node.foo_bar.v1.routing.FooBarRouter
import com.badoo.ribs.test.emptyBuildParams
import org.mockito.kotlin.mock
import org.junit.After
diff --git a/templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/FooBarWorkflowTest.kt b/templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarWorkflowTest.kt
similarity index 88%
rename from templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/FooBarWorkflowTest.kt
rename to templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarWorkflowTest.kt
index 2b9189b9c..7b25a4b47 100644
--- a/templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/FooBarWorkflowTest.kt
+++ b/templates/release-0.27/src/test/java/com/badoo/ribs/template/node/foo_bar/v1/FooBarWorkflowTest.kt
@@ -1,13 +1,14 @@
-package com.badoo.ribs.template.node.foo_bar
+package com.badoo.ribs.template.node.foo_bar.v1
import com.badoo.ribs.core.modality.BuildContext
+import com.badoo.ribs.template.node.foo_bar.common.FooBar
import org.junit.After
import org.junit.Before
import org.junit.Test
class FooBarWorkflowTest {
- private lateinit var workflow: FooBar
+ private lateinit var workflow: FooBarRib
@Before
fun setup() {
diff --git a/templates/snapshot/detekt-baseline.xml b/templates/snapshot/detekt-baseline.xml
index 222d0e204..4f520ca35 100644
--- a/templates/snapshot/detekt-baseline.xml
+++ b/templates/snapshot/detekt-baseline.xml
@@ -11,11 +11,11 @@
NotImplementedDeclaration:NewsToOutput.kt$NewsToOutput$TODO("Implement FooBarNewsToOutput mapping")
NotImplementedDeclaration:StateToViewModel.kt$StateToViewModel$TODO("Implement StateToViewModel mapping")
NotImplementedDeclaration:ViewEventToWish.kt$ViewEventToWish$TODO("Implement FooBarViewEventToWish mapping")
- PackageNaming:FooBar.kt$package com.badoo.ribs.template.leaf.foo_bar
- PackageNaming:FooBar.kt$package com.badoo.ribs.template.leaf_view_only.foo_bar
- PackageNaming:FooBar.kt$package com.badoo.ribs.template.node.foo_bar
- PackageNaming:FooBar.kt$package com.badoo.ribs.template.node_dagger.foo_bar
- PackageNaming:FooBar.kt$package com.badoo.ribs.template.node_dagger_build_param.foo_bar
+ PackageNaming:FooBarRib.kt$package com.badoo.ribs.template.leaf.foo_bar
+ PackageNaming:FooBarRib.kt$package com.badoo.ribs.template.leaf_view_only.foo_bar
+ PackageNaming:FooBarRib.kt$package com.badoo.ribs.template.node.foo_bar
+ PackageNaming:FooBarRib.kt$package com.badoo.ribs.template.node_dagger.foo_bar
+ PackageNaming:FooBarRib.kt$package com.badoo.ribs.template.node_dagger_build_param.foo_bar
PackageNaming:FooBarAnalytics.kt$package com.badoo.ribs.template.leaf.foo_bar.analytics
PackageNaming:FooBarAnalytics.kt$package com.badoo.ribs.template.node.foo_bar.analytics
PackageNaming:FooBarAnalytics.kt$package com.badoo.ribs.template.node_dagger.foo_bar.analytics