@Override
 public void onActivityCreated(Bundle savedInstanceState) {
   super.onActivityCreated(savedInstanceState);
   ((MainActivity) getActivity()).getMainActivityComponent().inject(this);
   RetrofitLambdaXJavaApp.getApplication(getActivity()).getNetworkComponent().inject(mPresenter);
   mPresenter.init(this);
   mPresenter.restoreState(savedInstanceState);
 }
  public void fetchData() {
    Utils.hideKeyboard(getActivity(), mEditText.getWindowToken());

    final String location =
        Utils.uppercaseInput(getActivity(), mEditText.getText().toString().trim());
    if (!TextUtils.isEmpty(location)) {
      mPresenter.startFetchData(location);
      mPresenter.showProgress();
    }
  }
 @Override
 public void onStop() {
   mPresenter.onStop();
   super.onStop();
 }
 @Override
 public void onSaveInstanceState(Bundle outState) {
   mPresenter.saveState(outState);
   super.onSaveInstanceState(outState);
 }
 @Override
 public void onResume() {
   super.onResume();
   mPresenter.onResume();
 }
 public boolean isTasksBusy() {
   if (mPresenter.isTasksBusy()) {
     Utils.showToast(getActivity(), getString(R.string.msg_wait));
   }
   return mPresenter.isTasksBusy();
 }