class SentenceDetailPresenter extends AbstractMvpPresenter<SentenceDetail.View, SentenceDetailViewModel> implements SentenceDetail.Presenter<SentenceDetail.View, SentenceDetailViewModel> {

    @Override
    public void onDisplaySentence(Sentence sentence) {
        if (sentence == null) {
            return;
        }
        long oldId = getViewModel().getCurrentSentenseId();
        if (oldId != sentence.getId()) {
            getViewModel().setPlayToken(System.currentTimeMillis());
            getViewModel().setCurrentSentenseId(sentence.getId());
            getViewModel().setCurrentAudioUrl(sentence.getAudioUrl());
            getViewModel().setAudioStatus(SentenceDetailViewModel.AUDIO_STATUS.NORMAL);
            updateAudioFabStatusAndPlayIfNeed();
        }
    }

    public  SentenceDetailPresenter(SentenceDataRepository sentenceDataRepository, AudioPlayer audioPlayer);

}