package com.gh4a.fragment; import java.util.List; import org.eclipse.egit.github.core.Contributor; import android.content.Intent; import android.os.Bundle; import android.support.v4.content.Loader; import android.support.v7.widget.RecyclerView; import com.gh4a.R; import com.gh4a.activities.UserActivity; import com.gh4a.adapter.ContributorAdapter; import com.gh4a.adapter.RootAdapter; import com.gh4a.loader.ContributorListLoader; import com.gh4a.loader.LoaderResult; public class ContributorListFragment extends ListDataBaseFragment<Contributor> implements RootAdapter.OnItemClickListener<Contributor> { public static ContributorListFragment newInstance(String repoOwner, String repoName) { ContributorListFragment f = new ContributorListFragment(); Bundle args = new Bundle(); args.putString("owner", repoOwner); args.putString("repo", repoName); f.setArguments(args); return f; } @Override public Loader<LoaderResult<List<Contributor>>> onCreateLoader() { String repoOwner = getArguments().getString("owner"); String repoName = getArguments().getString("repo"); return new ContributorListLoader(getActivity(), repoOwner, repoName); } @Override protected int getEmptyTextResId() { return R.string.no_contributors_found; } @Override protected RootAdapter<Contributor, ? extends RecyclerView.ViewHolder> onCreateAdapter() { ContributorAdapter adapter = new ContributorAdapter(getActivity()); adapter.setOnItemClickListener(this); return adapter; } @Override public void onItemClick(Contributor item) { Intent intent = UserActivity.makeIntent(getActivity(), item.getLogin(), item.getName()); if (intent != null) { startActivity(intent); } } }