useless generics removed
This commit is contained in:
parent
2c29306b18
commit
8641050754
|
|
@ -25,14 +25,12 @@ import android.support.annotation.Nullable;
|
|||
|
||||
import java.io.Serializable;
|
||||
|
||||
import ru.touchin.roboswag.components.utils.Logic;
|
||||
|
||||
/**
|
||||
* Created by Gavriil Sitnikov on 07/03/2016.
|
||||
* TODO: fill description
|
||||
*/
|
||||
public class SimpleViewControllerFragment<TState extends Serializable, TLogic extends Logic, TActivity extends ViewControllerActivity<TLogic>>
|
||||
extends ViewControllerFragment<TState, TLogic, TActivity> {
|
||||
public class SimpleViewControllerFragment<TState extends Serializable, TActivity extends ViewControllerActivity<?>>
|
||||
extends ViewControllerFragment<TState, TActivity> {
|
||||
|
||||
private static final String VIEW_CONTROLLER_CLASS_EXTRA = "VIEW_CONTROLLER_CLASS_EXTRA";
|
||||
|
||||
|
|
@ -51,13 +49,13 @@ public class SimpleViewControllerFragment<TState extends Serializable, TLogic ex
|
|||
return result;
|
||||
}
|
||||
|
||||
private Class<? extends ViewController<TLogic, TActivity,
|
||||
? extends ViewControllerFragment<TState, TLogic, TActivity>>> viewControllerClass;
|
||||
private Class<? extends ViewController<TActivity,
|
||||
? extends ViewControllerFragment<TState, TActivity>>> viewControllerClass;
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public Class<? extends ViewController<TLogic, TActivity,
|
||||
? extends ViewControllerFragment<TState, TLogic, TActivity>>> getViewControllerClass() {
|
||||
public Class<? extends ViewController<TActivity,
|
||||
? extends ViewControllerFragment<TState, TActivity>>> getViewControllerClass() {
|
||||
return viewControllerClass;
|
||||
}
|
||||
|
||||
|
|
@ -65,8 +63,8 @@ public class SimpleViewControllerFragment<TState extends Serializable, TLogic ex
|
|||
@Override
|
||||
public void onCreate(@Nullable final Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
viewControllerClass = (Class<? extends ViewController<TLogic, TActivity,
|
||||
? extends ViewControllerFragment<TState, TLogic, TActivity>>>) getArguments().getSerializable(VIEW_CONTROLLER_CLASS_EXTRA);
|
||||
viewControllerClass = (Class<? extends ViewController<TActivity,
|
||||
? extends ViewControllerFragment<TState, TActivity>>>) getArguments().getSerializable(VIEW_CONTROLLER_CLASS_EXTRA);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,12 +21,10 @@ package ru.touchin.roboswag.components.navigation;
|
|||
|
||||
import java.io.Serializable;
|
||||
|
||||
import ru.touchin.roboswag.components.utils.Logic;
|
||||
|
||||
/**
|
||||
* Created by Gavriil Sitnikov on 12/03/2016.
|
||||
* TODO: fill description
|
||||
*/
|
||||
public class StatelessViewControllerFragment<TLogic extends Logic, TActivity extends ViewControllerActivity<TLogic>>
|
||||
extends SimpleViewControllerFragment<Serializable, TLogic, TActivity> {
|
||||
public class StatelessViewControllerFragment<TActivity extends ViewControllerActivity<?>>
|
||||
extends SimpleViewControllerFragment<Serializable, TActivity> {
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,7 +28,6 @@ import android.view.MenuInflater;
|
|||
import android.view.MenuItem;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import ru.touchin.roboswag.components.utils.Logic;
|
||||
import rx.Observable;
|
||||
import rx.android.schedulers.AndroidSchedulers;
|
||||
import rx.subjects.BehaviorSubject;
|
||||
|
|
@ -37,9 +36,8 @@ import rx.subjects.BehaviorSubject;
|
|||
* Created by Gavriil Sitnikov on 21/10/2015.
|
||||
* Class to control view of specific fragment, activity and application by logic bridge.
|
||||
*/
|
||||
public class ViewController<TLogic extends Logic,
|
||||
TActivity extends ViewControllerActivity<TLogic>,
|
||||
TFragment extends ViewControllerFragment<?, TLogic, TActivity>> {
|
||||
public class ViewController<TActivity extends ViewControllerActivity<?>,
|
||||
TFragment extends ViewControllerFragment<?, TActivity>> {
|
||||
|
||||
@NonNull
|
||||
private final TActivity activity;
|
||||
|
|
@ -54,7 +52,7 @@ public class ViewController<TLogic extends Logic,
|
|||
|
||||
@SuppressWarnings("PMD.UnusedFormalParameter")
|
||||
//UnusedFormalParameter: savedInstanceState could be used by children
|
||||
public ViewController(@NonNull final CreationContext<TLogic, TActivity, TFragment> creationContext,
|
||||
public ViewController(@NonNull final CreationContext<TActivity, TFragment> creationContext,
|
||||
@Nullable final Bundle savedInstanceState) {
|
||||
this.activity = creationContext.activity;
|
||||
this.fragment = creationContext.fragment;
|
||||
|
|
@ -65,16 +63,6 @@ public class ViewController<TLogic extends Logic,
|
|||
return isDestroyedSubject.getValue();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns application's logic.
|
||||
*
|
||||
* @return Returns logic;
|
||||
*/
|
||||
@NonNull
|
||||
public TLogic getLogic() {
|
||||
return getActivity().getLogic();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns view's activity.
|
||||
*
|
||||
|
|
@ -152,9 +140,8 @@ public class ViewController<TLogic extends Logic,
|
|||
/**
|
||||
* Class to simplify constructor override.
|
||||
*/
|
||||
public static class CreationContext<TLogic extends Logic,
|
||||
TActivity extends ViewControllerActivity<TLogic>,
|
||||
TFragment extends ViewControllerFragment<?, TLogic, TActivity>> {
|
||||
public static class CreationContext<TActivity extends ViewControllerActivity<?>,
|
||||
TFragment extends ViewControllerFragment<?, TActivity>> {
|
||||
|
||||
@NonNull
|
||||
private final TActivity activity;
|
||||
|
|
@ -171,21 +158,6 @@ public class ViewController<TLogic extends Logic,
|
|||
this.container = container;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public TActivity getActivity() {
|
||||
return activity;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public TFragment getFragment() {
|
||||
return fragment;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public ViewGroup getContainer() {
|
||||
return container;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
package ru.touchin.roboswag.components.navigation;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import android.view.Menu;
|
||||
|
||||
import ru.touchin.roboswag.components.utils.Logic;
|
||||
|
||||
|
|
@ -27,4 +28,19 @@ public abstract class ViewControllerActivity<TLogic extends Logic> extends BaseA
|
|||
return Logic.getInstance(this, getLogicClass());
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onCreateOptionsMenu(final Menu menu) {
|
||||
onConfigureNavigation(menu);
|
||||
return super.onCreateOptionsMenu(menu);
|
||||
}
|
||||
|
||||
/**
|
||||
* Calls when activity configuring ActionBar, Toolbar, Sidebar etc. Before internal ViewControllers.
|
||||
*
|
||||
* @param menu The options menu in which you place your items;
|
||||
*/
|
||||
public void onConfigureNavigation(@NonNull final Menu menu) {
|
||||
// do nothing
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,7 +35,6 @@ import android.widget.FrameLayout;
|
|||
import java.io.Serializable;
|
||||
import java.lang.reflect.Constructor;
|
||||
|
||||
import ru.touchin.roboswag.components.utils.Logic;
|
||||
import ru.touchin.roboswag.core.log.Lc;
|
||||
import ru.touchin.roboswag.core.utils.ShouldNotHappenException;
|
||||
import rx.Observable;
|
||||
|
|
@ -47,7 +46,7 @@ import rx.subjects.BehaviorSubject;
|
|||
* Created by Gavriil Sitnikov on 21/10/2015.
|
||||
* Fragment instantiated in specific activity of {@link TActivity} type that is holding {@link ViewController} inside.
|
||||
*/
|
||||
public abstract class ViewControllerFragment<TState extends Serializable, TLogic extends Logic, TActivity extends ViewControllerActivity<TLogic>>
|
||||
public abstract class ViewControllerFragment<TState extends Serializable, TActivity extends ViewControllerActivity<?>>
|
||||
extends ViewFragment<TActivity> {
|
||||
|
||||
private static final String VIEW_CONTROLLER_STATE_EXTRA = "VIEW_CONTROLLER_STATE_EXTRA";
|
||||
|
|
@ -88,8 +87,8 @@ public abstract class ViewControllerFragment<TState extends Serializable, TLogic
|
|||
* @return Returns class of specific ViewController.
|
||||
*/
|
||||
@NonNull
|
||||
public abstract Class<? extends ViewController<TLogic, TActivity,
|
||||
? extends ViewControllerFragment<TState, TLogic, TActivity>>> getViewControllerClass();
|
||||
public abstract Class<? extends ViewController<TActivity,
|
||||
? extends ViewControllerFragment<TState, TActivity>>> getViewControllerClass();
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
|
|
@ -117,8 +116,8 @@ public abstract class ViewControllerFragment<TState extends Serializable, TLogic
|
|||
throw OnErrorThrowable.from(new ShouldNotHappenException("There should be single constructor for " + getViewControllerClass()));
|
||||
}
|
||||
final Constructor<?> constructor = getViewControllerClass().getConstructors()[0];
|
||||
final ViewController.CreationContext<TLogic, TActivity,
|
||||
? extends ViewControllerFragment<TState, TLogic, TActivity>> creationContext
|
||||
final ViewController.CreationContext<TActivity,
|
||||
? extends ViewControllerFragment<TState, TActivity>> creationContext
|
||||
= new ViewController.CreationContext<>(activity, this, viewInfo.first);
|
||||
try {
|
||||
switch (constructor.getParameterTypes().length) {
|
||||
|
|
|
|||
|
|
@ -9,186 +9,187 @@ import android.support.v4.app.FragmentTransaction;
|
|||
|
||||
import java.io.Serializable;
|
||||
|
||||
import ru.touchin.roboswag.components.utils.Logic;
|
||||
import rx.functions.Func1;
|
||||
|
||||
/**
|
||||
* Created by Gavriil Sitnikov on 07/03/2016.
|
||||
* TODO: fill description
|
||||
*/
|
||||
public class ViewControllerNavigation<TLogic extends Logic> extends FragmentNavigation {
|
||||
public class ViewControllerNavigation<TActivity extends ViewControllerActivity<?>> extends FragmentNavigation {
|
||||
|
||||
@SuppressWarnings("CPD-START")
|
||||
public ViewControllerNavigation(@NonNull final ViewControllerActivity<TLogic> context,
|
||||
public ViewControllerNavigation(@NonNull final TActivity context,
|
||||
@NonNull final FragmentManager fragmentManager,
|
||||
@IdRes final int containerViewId) {
|
||||
super(context, fragmentManager, containerViewId);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void push(@NonNull final Class<? extends ViewControllerFragment<TState, TLogic,
|
||||
? extends ViewControllerActivity<TLogic>>> fragmentClass,
|
||||
public <TState extends Serializable> void push(@NonNull final Class<? extends ViewControllerFragment<TState, TActivity>> fragmentClass,
|
||||
@NonNull final TState state) {
|
||||
addToStack(fragmentClass, null, ViewControllerFragment.createState(state), null, null);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void push(@NonNull final Class<? extends ViewControllerFragment<TState, TLogic,
|
||||
? extends ViewControllerActivity<TLogic>>> fragmentClass,
|
||||
public <TState extends Serializable> void push(@NonNull final Class<? extends ViewControllerFragment<TState, TActivity>> fragmentClass,
|
||||
@Nullable final TState state,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
addToStack(fragmentClass, null, ViewControllerFragment.createState(state), null, transactionSetup);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void pushForResult(@NonNull final Class<? extends ViewControllerFragment<TState, TLogic,
|
||||
? extends ViewControllerActivity<TLogic>>> fragmentClass,
|
||||
public <TState extends Serializable> void pushForResult(@NonNull final Class<? extends ViewControllerFragment<TState, TActivity>> fragmentClass,
|
||||
@NonNull final Fragment targetFragment,
|
||||
@NonNull final TState state) {
|
||||
addToStack(fragmentClass, targetFragment, ViewControllerFragment.createState(state), fragmentClass.getName() + ';'
|
||||
+ WITH_TARGET_FRAGMENT_TAG_MARK, null);
|
||||
addToStack(fragmentClass, targetFragment, ViewControllerFragment.createState(state),
|
||||
fragmentClass.getName() + ';' + WITH_TARGET_FRAGMENT_TAG_MARK, null);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void pushForResult(@NonNull final Class<? extends ViewControllerFragment<TState, TLogic,
|
||||
? extends ViewControllerActivity<TLogic>>> fragmentClass,
|
||||
public <TState extends Serializable> void pushForResult(@NonNull final Class<? extends ViewControllerFragment<TState, TActivity>> fragmentClass,
|
||||
@NonNull final Fragment targetFragment,
|
||||
@Nullable final TState state,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
addToStack(fragmentClass, targetFragment, ViewControllerFragment.createState(state), fragmentClass.getName() + ';'
|
||||
+ WITH_TARGET_FRAGMENT_TAG_MARK, transactionSetup);
|
||||
addToStack(fragmentClass, targetFragment, ViewControllerFragment.createState(state),
|
||||
fragmentClass.getName() + ';' + WITH_TARGET_FRAGMENT_TAG_MARK, transactionSetup);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void setAsTop(@NonNull final Class<? extends ViewControllerFragment<TState, TLogic,
|
||||
? extends ViewControllerActivity<TLogic>>> fragmentClass,
|
||||
public <TState extends Serializable> void setAsTop(@NonNull final Class<? extends ViewControllerFragment<TState, TActivity>> fragmentClass,
|
||||
@NonNull final TState state) {
|
||||
setAsTop(fragmentClass, ViewControllerFragment.createState(state), null);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void setAsTop(@NonNull final Class<? extends ViewControllerFragment<TState, TLogic,
|
||||
? extends ViewControllerActivity<TLogic>>> fragmentClass,
|
||||
public <TState extends Serializable> void setAsTop(@NonNull final Class<? extends ViewControllerFragment<TState, TActivity>> fragmentClass,
|
||||
@Nullable final TState state,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
setAsTop(fragmentClass, ViewControllerFragment.createState(state), transactionSetup);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void setInitial(@NonNull final Class<? extends ViewControllerFragment<TState, TLogic,
|
||||
? extends ViewControllerActivity<TLogic>>> fragmentClass,
|
||||
public <TState extends Serializable> void setInitial(@NonNull final Class<? extends ViewControllerFragment<TState, TActivity>> fragmentClass,
|
||||
@NonNull final TState state) {
|
||||
setInitial(fragmentClass, ViewControllerFragment.createState(state), null);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void setInitial(@NonNull final Class<? extends ViewControllerFragment<TState, TLogic,
|
||||
? extends ViewControllerActivity<TLogic>>> fragmentClass,
|
||||
public <TState extends Serializable> void setInitial(@NonNull final Class<? extends ViewControllerFragment<TState, TActivity>> fragmentClass,
|
||||
@Nullable final TState state,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
setInitial(fragmentClass, ViewControllerFragment.createState(state), transactionSetup);
|
||||
}
|
||||
|
||||
public void pushViewController(@NonNull final Class<? extends ViewController<TLogic,
|
||||
? extends ViewControllerActivity<TLogic>,
|
||||
? extends StatelessViewControllerFragment<TLogic, ? extends ViewControllerActivity<TLogic>>>> viewControllerClass) {
|
||||
public void pushViewController(@NonNull final Class<? extends ViewController<TActivity,
|
||||
StatelessViewControllerFragment<TActivity>>> viewControllerClass) {
|
||||
addStatelessViewControllerToStack(viewControllerClass, null, null, null);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void pushViewController(@NonNull final Class<? extends ViewController<TLogic,
|
||||
? extends ViewControllerActivity<TLogic>,
|
||||
? extends SimpleViewControllerFragment<TState, TLogic, ? extends ViewControllerActivity<TLogic>>>> viewControllerClass,
|
||||
public <TState extends Serializable> void pushViewController(@NonNull final Class<? extends ViewController<TActivity,
|
||||
SimpleViewControllerFragment<TState, TActivity>>> viewControllerClass,
|
||||
@NonNull final TState state) {
|
||||
addViewControllerToStack(viewControllerClass, null, state, null, null);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void pushViewController(@NonNull final Class<? extends ViewController<TLogic,
|
||||
? extends ViewControllerActivity<TLogic>,
|
||||
? extends SimpleViewControllerFragment<TState, TLogic, ? extends ViewControllerActivity<TLogic>>>> viewControllerClass,
|
||||
@Nullable final TState state,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
public <TState extends Serializable> void pushViewController(
|
||||
@NonNull final Class<? extends ViewController<TActivity, SimpleViewControllerFragment<TState, TActivity>>> viewControllerClass,
|
||||
@NonNull final TState state,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
addViewControllerToStack(viewControllerClass, null, state, null, transactionSetup);
|
||||
}
|
||||
|
||||
public void pushViewControllerForResult(@NonNull final Class<? extends ViewController<TLogic,
|
||||
? extends ViewControllerActivity<TLogic>,
|
||||
? extends StatelessViewControllerFragment<TLogic, ? extends ViewControllerActivity<TLogic>>>> viewControllerClass,
|
||||
@NonNull final Fragment targetFragment) {
|
||||
public void pushViewController(
|
||||
@NonNull final Class<? extends ViewController<TActivity, StatelessViewControllerFragment<TActivity>>> viewControllerClass,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
addStatelessViewControllerToStack(viewControllerClass, null, null, transactionSetup);
|
||||
}
|
||||
|
||||
public void pushViewControllerForResult(
|
||||
@NonNull final Class<? extends ViewController<TActivity, StatelessViewControllerFragment<TActivity>>> viewControllerClass,
|
||||
@NonNull final Fragment targetFragment) {
|
||||
addStatelessViewControllerToStack(viewControllerClass, targetFragment,
|
||||
viewControllerClass.getName() + ';' + WITH_TARGET_FRAGMENT_TAG_MARK, null);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void pushViewControllerForResult(@NonNull final Class<? extends ViewController<TLogic,
|
||||
? extends ViewControllerActivity<TLogic>,
|
||||
? extends SimpleViewControllerFragment<TState, TLogic, ? extends ViewControllerActivity<TLogic>>>> viewControllerClass,
|
||||
@NonNull final Fragment targetFragment,
|
||||
@NonNull final TState state) {
|
||||
addViewControllerToStack(viewControllerClass, targetFragment, state, viewControllerClass.getName() + ';'
|
||||
+ WITH_TARGET_FRAGMENT_TAG_MARK, null);
|
||||
public <TState extends Serializable> void pushViewControllerForResult(
|
||||
@NonNull final Class<? extends ViewController<TActivity, SimpleViewControllerFragment<TState, TActivity>>> viewControllerClass,
|
||||
@NonNull final Fragment targetFragment,
|
||||
@NonNull final TState state) {
|
||||
addViewControllerToStack(viewControllerClass, targetFragment, state,
|
||||
viewControllerClass.getName() + ';' + WITH_TARGET_FRAGMENT_TAG_MARK, null);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void pushViewControllerForResult(@NonNull final Class<? extends ViewController<TLogic,
|
||||
? extends ViewControllerActivity<TLogic>,
|
||||
? extends SimpleViewControllerFragment<TState, TLogic, ? extends ViewControllerActivity<TLogic>>>> viewControllerClass,
|
||||
@NonNull final Fragment targetFragment,
|
||||
@Nullable final TState state,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction>
|
||||
transactionSetup) {
|
||||
addViewControllerToStack(viewControllerClass, targetFragment, state, viewControllerClass.getName() + ';'
|
||||
+ WITH_TARGET_FRAGMENT_TAG_MARK, transactionSetup);
|
||||
public <TState extends Serializable> void pushViewControllerForResult(
|
||||
@NonNull final Class<? extends ViewController<TActivity, SimpleViewControllerFragment<TState, TActivity>>> viewControllerClass,
|
||||
@NonNull final Fragment targetFragment,
|
||||
@NonNull final TState state,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
addViewControllerToStack(viewControllerClass, targetFragment, state,
|
||||
viewControllerClass.getName() + ';' + WITH_TARGET_FRAGMENT_TAG_MARK, transactionSetup);
|
||||
}
|
||||
|
||||
public void setViewControllerAsTop(@NonNull final Class<? extends ViewController<TLogic,
|
||||
? extends ViewControllerActivity<TLogic>,
|
||||
? extends StatelessViewControllerFragment<TLogic, ? extends ViewControllerActivity<TLogic>>>> viewControllerClass) {
|
||||
public void pushViewControllerForResult(
|
||||
@NonNull final Class<? extends ViewController<TActivity, StatelessViewControllerFragment<TActivity>>> viewControllerClass,
|
||||
@NonNull final Fragment targetFragment,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
addStatelessViewControllerToStack(viewControllerClass, targetFragment,
|
||||
viewControllerClass.getName() + ';' + WITH_TARGET_FRAGMENT_TAG_MARK, transactionSetup);
|
||||
}
|
||||
|
||||
public void setViewControllerAsTop(
|
||||
@NonNull final Class<? extends ViewController<TActivity, StatelessViewControllerFragment<TActivity>>> viewControllerClass) {
|
||||
addStatelessViewControllerToStack(viewControllerClass, null, viewControllerClass.getName() + ' ' + TOP_FRAGMENT_TAG_MARK, null);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void setViewControllerAsTop(@NonNull final Class<? extends ViewController<TLogic,
|
||||
? extends ViewControllerActivity<TLogic>,
|
||||
? extends SimpleViewControllerFragment<TState, TLogic, ? extends ViewControllerActivity<TLogic>>>> viewControllerClass,
|
||||
@NonNull final TState state) {
|
||||
public <TState extends Serializable> void setViewControllerAsTop(
|
||||
@NonNull final Class<? extends ViewController<TActivity, SimpleViewControllerFragment<TState, TActivity>>> viewControllerClass,
|
||||
@NonNull final TState state) {
|
||||
addViewControllerToStack(viewControllerClass, null, state, viewControllerClass.getName() + ' ' + TOP_FRAGMENT_TAG_MARK, null);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void setViewControllerAsTop(@NonNull final Class<? extends ViewController<TLogic,
|
||||
? extends ViewControllerActivity<TLogic>,
|
||||
? extends SimpleViewControllerFragment<TState, TLogic, ? extends ViewControllerActivity<TLogic>>>> viewControllerClass,
|
||||
@Nullable final TState state,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction>
|
||||
transactionSetup) {
|
||||
public <TState extends Serializable> void setViewControllerAsTop(
|
||||
@NonNull final Class<? extends ViewController<TActivity, SimpleViewControllerFragment<TState, TActivity>>> viewControllerClass,
|
||||
@NonNull final TState state,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
addViewControllerToStack(viewControllerClass, null, state, viewControllerClass.getName() + ' ' + TOP_FRAGMENT_TAG_MARK, transactionSetup);
|
||||
}
|
||||
|
||||
public void setInitialViewController(@NonNull final Class<? extends ViewController<TLogic,
|
||||
? extends ViewControllerActivity<TLogic>,
|
||||
? extends StatelessViewControllerFragment<TLogic, ? extends ViewControllerActivity<TLogic>>>> viewControllerClass) {
|
||||
public void setViewControllerAsTop(
|
||||
@NonNull final Class<? extends ViewController<TActivity, StatelessViewControllerFragment<TActivity>>> viewControllerClass,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
addStatelessViewControllerToStack(viewControllerClass, null, viewControllerClass.getName() + ' ' + TOP_FRAGMENT_TAG_MARK, transactionSetup);
|
||||
}
|
||||
|
||||
public void setInitialViewController(
|
||||
@NonNull final Class<? extends ViewController<TActivity, StatelessViewControllerFragment<TActivity>>> viewControllerClass) {
|
||||
beforeSetInitialActions();
|
||||
setViewControllerAsTop(viewControllerClass);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void setInitialViewController(@NonNull final Class<? extends ViewController<TLogic,
|
||||
? extends ViewControllerActivity<TLogic>,
|
||||
? extends SimpleViewControllerFragment<TState, TLogic, ? extends ViewControllerActivity<TLogic>>>> viewControllerClass,
|
||||
@NonNull final TState state) {
|
||||
public <TState extends Serializable> void setInitialViewController(
|
||||
@NonNull final Class<? extends ViewController<TActivity, SimpleViewControllerFragment<TState, TActivity>>> viewControllerClass,
|
||||
@NonNull final TState state) {
|
||||
setInitialViewController(viewControllerClass, state, null);
|
||||
}
|
||||
|
||||
public <TState extends Serializable> void setInitialViewController(@NonNull final Class<? extends ViewController<TLogic,
|
||||
? extends ViewControllerActivity<TLogic>,
|
||||
? extends SimpleViewControllerFragment<TState, TLogic, ? extends ViewControllerActivity<TLogic>>>> viewControllerClass,
|
||||
@Nullable final TState state,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction>
|
||||
transactionSetup) {
|
||||
public <TState extends Serializable> void setInitialViewController(
|
||||
@NonNull final Class<? extends ViewController<TActivity, SimpleViewControllerFragment<TState, TActivity>>> viewControllerClass,
|
||||
@NonNull final TState state,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
beforeSetInitialActions();
|
||||
setViewControllerAsTop(viewControllerClass, state, transactionSetup);
|
||||
}
|
||||
|
||||
public void setInitialViewController(
|
||||
@NonNull final Class<? extends ViewController<TActivity, StatelessViewControllerFragment<TActivity>>> viewControllerClass,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
beforeSetInitialActions();
|
||||
setViewControllerAsTop(viewControllerClass, transactionSetup);
|
||||
}
|
||||
|
||||
protected <TState extends Serializable> void addViewControllerToStack(
|
||||
@NonNull final Class<? extends ViewController<TLogic, ? extends ViewControllerActivity<TLogic>, ?>> viewControllerClass,
|
||||
@NonNull final Class<? extends ViewController<TActivity, ? extends ViewControllerFragment<TState, TActivity>>> viewControllerClass,
|
||||
@Nullable final Fragment targetFragment,
|
||||
@Nullable final TState state,
|
||||
@NonNull final TState state,
|
||||
@Nullable final String backStackTag,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
addToStack(SimpleViewControllerFragment.class, targetFragment,
|
||||
SimpleViewControllerFragment.createState(viewControllerClass, state), backStackTag, transactionSetup);
|
||||
}
|
||||
|
||||
@SuppressWarnings("CPD-END")
|
||||
protected <TState extends Serializable> void addStatelessViewControllerToStack(
|
||||
@NonNull final Class<? extends ViewController<TLogic, ? extends ViewControllerActivity<TLogic>, ?>> viewControllerClass,
|
||||
protected void addStatelessViewControllerToStack(
|
||||
@NonNull final Class<? extends ViewController<TActivity, ? extends ViewControllerFragment<Serializable, TActivity>>> viewControllerClass,
|
||||
@Nullable final Fragment targetFragment,
|
||||
@Nullable final String backStackTag,
|
||||
@Nullable final Func1<FragmentTransaction, FragmentTransaction> transactionSetup) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue