public void fetchClientList() {

    // Check if ClientListFragment has a clientList
    if (clientList.size() > 0) {
      inflateClientList();
    } else {

      swipeRefreshLayout.setRefreshing(true);
      // Get a Client List
      API.clientService.listAllClients(
          new Callback<Page<Client>>() {

            @Override
            public void success(Page<Client> page, Response response) {
              clientList = page.getPageItems();
              inflateClientList();
              swipeRefreshLayout.setRefreshing(false);
            }

            @Override
            public void failure(RetrofitError retrofitError) {

              swipeRefreshLayout.setRefreshing(false);

              if (getActivity() != null) {
                try {
                  Log.i("Error", "" + retrofitError.getResponse().getStatus());
                  if (retrofitError.getResponse().getStatus() == HttpStatus.SC_UNAUTHORIZED) {
                    Toast.makeText(
                            getActivity(),
                            "Authorization Expired - Please Login Again",
                            Toast.LENGTH_SHORT)
                        .show();
                    startActivity(new Intent(getActivity(), LogoutActivity.class));
                    getActivity().finish();

                  } else {
                    Toast.makeText(
                            getActivity(),
                            "There was some error fetching list.",
                            Toast.LENGTH_SHORT)
                        .show();
                  }
                } catch (NullPointerException npe) {
                  Toast.makeText(
                          getActivity(),
                          "There is some problem with your internet connection.",
                          Toast.LENGTH_SHORT)
                      .show();
                }
              }
            }
          });
    }
  }