Fixed NPE due to Presenter constructor trying to load the alarm before it returns
This commit is contained in:
parent
ef22355ddf
commit
b798a8e2b0
@ -65,9 +65,8 @@ public class EditAlarmActivity extends BaseActivity implements
|
||||
super.onCreate(savedInstanceState);
|
||||
setWeekDaysText();
|
||||
mNumpad.setKeyListener(this);
|
||||
mPresenter = new EditAlarmPresenter(this,
|
||||
AlarmsRepository.getInstance(this),
|
||||
getIntent().getLongExtra(EXTRA_ALARM_ID, -1));
|
||||
mPresenter = new EditAlarmPresenter(this, AlarmsRepository.getInstance(this));
|
||||
mPresenter.loadAlarm(getIntent().getLongExtra(EXTRA_ALARM_ID, -1));
|
||||
mPresenter.setTimeTextHint();
|
||||
}
|
||||
|
||||
|
||||
@ -26,6 +26,7 @@ public interface EditAlarmContract {
|
||||
}
|
||||
|
||||
interface Presenter extends AlarmContract.Presenter {
|
||||
void loadAlarm(long id);
|
||||
void save();
|
||||
void delete();
|
||||
void showNumpad();
|
||||
|
||||
@ -21,14 +21,17 @@ public class EditAlarmPresenter implements EditAlarmContract.Presenter {
|
||||
|
||||
@NonNull private final EditAlarmContract.View mView;
|
||||
@NonNull private final Repository<Alarm> mRepository;
|
||||
@Nullable private final Alarm mAlarm;
|
||||
@Nullable private Alarm mAlarm;
|
||||
|
||||
public EditAlarmPresenter(@NonNull EditAlarmContract.View view,
|
||||
@NonNull Repository<Alarm> repository,
|
||||
long alarmId) {
|
||||
@NonNull Repository<Alarm> repository) {
|
||||
mView = view;
|
||||
mRepository = repository;
|
||||
mAlarm = alarmId > -1 ? repository.getItem(alarmId) : null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadAlarm(long alarmId) {
|
||||
mAlarm = alarmId > -1 ? mRepository.getItem(alarmId) : null;
|
||||
showDetails();
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user