fix static
This commit is contained in:
parent
79e391aeee
commit
a059380ddc
|
|
@ -64,6 +64,11 @@ public class SimpleViewControllerFragment<TState extends AbstractState, TActivit
|
|||
return viewControllerClass;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean isStateRequired() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public void onCreate(@Nullable final Bundle savedInstanceState) {
|
||||
|
|
|
|||
|
|
@ -51,6 +51,11 @@ public class StatelessTargetedViewControllerFragment<TTargetState extends Abstra
|
|||
return createState(viewControllerClass, new DefaultState());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean isStateRequired() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public AbstractState getState() {
|
||||
|
|
|
|||
|
|
@ -38,13 +38,6 @@ import ru.touchin.roboswag.core.log.Lc;
|
|||
public class StatelessViewControllerFragment<TActivity extends ViewControllerActivity<?>>
|
||||
extends SimpleViewControllerFragment<AbstractState, TActivity> {
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public AbstractState getState() {
|
||||
Lc.assertion("Trying to access to state of stateless fragment of " + getViewControllerClass());
|
||||
return super.getState();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates {@link Bundle} which will store state and {@link ViewController}'s class.
|
||||
*
|
||||
|
|
@ -56,4 +49,16 @@ public class StatelessViewControllerFragment<TActivity extends ViewControllerAct
|
|||
return createState(viewControllerClass, new DefaultState());
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public AbstractState getState() {
|
||||
Lc.assertion("Trying to access to state of stateless fragment of " + getViewControllerClass());
|
||||
return super.getState();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean isStateRequired() {
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -139,6 +139,13 @@ public abstract class ViewControllerFragment<TState extends AbstractState, TActi
|
|||
public abstract Class<? extends ViewController<TActivity,
|
||||
? extends ViewControllerFragment<TState, TActivity>>> getViewControllerClass();
|
||||
|
||||
/**
|
||||
* Returns if ViewControllerFragment requires state or not.
|
||||
*
|
||||
* @return true if state is required
|
||||
*/
|
||||
protected abstract boolean isStateRequired();
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public void onCreate(@Nullable final Bundle savedInstanceState) {
|
||||
|
|
@ -154,8 +161,8 @@ public abstract class ViewControllerFragment<TState extends AbstractState, TActi
|
|||
state = reserialize(state);
|
||||
}
|
||||
state.onCreate();
|
||||
} else {
|
||||
Lc.assertion("State is null");
|
||||
} else if (isStateRequired()) {
|
||||
Lc.assertion("State is required and null");
|
||||
}
|
||||
viewControllerSubscription = Observable
|
||||
.combineLatest(activitySubject.distinctUntilChanged(), viewSubject.distinctUntilChanged(),
|
||||
|
|
|
|||
Loading…
Reference in New Issue