package com.mirhoseini.marvel.character.search; import com.mirhoseini.marvel.ConsoleComponent; import com.mirhoseini.marvel.database.model.CharacterModel; import java.util.List; import javax.inject.Inject; /** * Created by Mohsen on 28/11/2016. */ public class CharacterSearch implements SearchView { @Inject SearchPresenter presenter; public CharacterSearch(ConsoleComponent component) { component.plus(new SearchModule()) .inject(this); presenter.bind(this); } public void doSearch(String query) { presenter.doSearch(true, query, System.currentTimeMillis() / 1000); } @Override public void showQueryError(Throwable throwable) { System.out.println(throwable); } @Override public void showCharacter(CharacterModel character) { System.out.println(String.format("----------\n%s:\n%s\n----------", character.getName(), character.getDescription())); } @Override public void showRetryMessage(Throwable throwable) { System.out.println(throwable); } @Override public void showQueryNoResult() { System.out.println("No result!!"); } @Override public void setCharactersCachedData(List<CharacterModel> characters) { } @Override public void showError(Throwable throwable) { System.out.println(throwable); } @Override public void showProgress() { System.out.println("Loading..."); } @Override public void hideProgress() { System.out.println("Done!"); } @Override public void showServiceError(ApiResponseCodeException throwable) { System.out.println(throwable); } @Override public void showMessage(String message) { System.out.println(message); } @Override public void showOfflineMessage(boolean isCritical) { System.out.println("Offline!!!"); } }