Class MembersListFragment<A extends MemberAdapter,V extends MemberListView,P extends MembersListPresenter<V>>
- java.lang.Object
-
- androidx.fragment.app.Fragment
-
- com.cheetahdigital.uikit.architecture.mvp.MvpFragmentView<V,P>
-
- com.cheetahdigital.uikit.architecture.lce.LceFragmentView<V,P>
-
- com.cheetahdigital.uikit.architecture.refreshable.RefreshableFragmentView<V,P>
-
- com.cheetahdigital.uikit.widget.list.ListFragmentView<V,P>
-
- com.cheetahdigital.uikit.widget.list.AutoPageListFragmentView<A,V,P>
-
- com.cheetahdigital.members.ui.list.MembersListFragment<A,V,P>
-
- All Implemented Interfaces:
android.content.ComponentCallbacks
,android.view.View.OnCreateContextMenuListener
,androidx.lifecycle.LifecycleOwner
,androidx.lifecycle.ViewModelStoreOwner
,androidx.savedstate.SavedStateRegistryOwner
,androidx.swiperefreshlayout.widget.SwipeRefreshLayout.OnRefreshListener
,AnalyticsManager.AnalyticsScreen
,MemberListView
,LceView
,MvpLceView
,MvpView
,RefreshableView
,EndlessListView
,ListView
public class MembersListFragment<A extends MemberAdapter,V extends MemberListView,P extends MembersListPresenter<V>> extends AutoPageListFragmentView<A,V,P> implements MemberListView, AnalyticsManager.AnalyticsScreen
The fragment class for showing the list ofMember
Can receive the following intent extras:IntentKey.PRIMARY_PARAMS
- key used to getMembersParams
for all tab;ConnectionsParams
for connection and request tabIntentKey.SECONDARY_PARAMS
- key used to getProfileParams
SHOW_SELF_IN_LIST
- the flag to enable showing current user in member list. Default value isfalse
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
SHOW_SELF_IN_LIST
-
Fields inherited from class com.cheetahdigital.uikit.widget.list.AutoPageListFragmentView
mCurrentPage
-
Fields inherited from class com.cheetahdigital.uikit.widget.list.ListFragmentView
mLinearLayoutManager, mListView, mSelectedPosition
-
Fields inherited from class com.cheetahdigital.uikit.architecture.refreshable.RefreshableFragmentView
mSwipeRefreshLayout
-
Fields inherited from class com.cheetahdigital.uikit.architecture.lce.LceFragmentView
mContentView, mErrorView, mInitialLoad, mLoadingView
-
-
Constructor Summary
Constructors Constructor Description MembersListFragment()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
appendMemberList(java.util.List<Member> members, int totalEntries, java.lang.String memberId, int page)
The view get notified in this method when the call to the Members list API (with pagination) gets a successful responsevoid
applySearch(java.lang.String keyword)
Processes the Search from the Membersprotected IndexedItemDecoration
createItemDecoration()
Create theRecyclerView.ItemDecoration
used in the RecyclerView.protected MemberAdapter
createMembersAdapter()
Method to create an instance ofMemberAdapter
.protected P
createPresenter()
Get presenter forMembersListFragment
protected int
getContentLayoutId()
Get layout ofMembersListFragment
int
getScreenName()
void
onConnectPermissionReceived(Permissions permissions, SummaryMember member)
The view gets notified in this method if the call to the summary - permissions api was successfulandroid.view.View
onCreateView(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState)
void
setMemberType(java.lang.String memberType)
Set the type of member.void
showFreshMemberList(int totalEntries)
The view gets notified in this method if the refresh call to the Members API gets a successful responsevoid
showMemberList(int totalEntries)
The view gets notified in this method when the call to the Members list API gets a successful response-
Methods inherited from class com.cheetahdigital.uikit.widget.list.AutoPageListFragmentView
loadMore, onFinishLoadMore, onFinishRefresh, onLoadMoreFailed, onRefresh, setListTotalEntries
-
Methods inherited from class com.cheetahdigital.uikit.widget.list.ListFragmentView
getLayoutManager, isListAnimationEnabled, onAttach, setExitTransition, showContent, startActivity, startActivityForResult
-
Methods inherited from class com.cheetahdigital.uikit.architecture.refreshable.RefreshableFragmentView
onRefreshFailed, reloadData, showError, showLoading, startRefresh
-
Methods inherited from class com.cheetahdigital.uikit.architecture.lce.LceFragmentView
onLoadFailed, onLoadSuccess, onViewCreated, setErrorViewClickListener
-
Methods inherited from class com.cheetahdigital.uikit.architecture.mvp.MvpFragmentView
captureSharedElementValues, getPresenter, getSharedElementViews, initSharedElementValues, isSharedAnimationEnabled, onDestroyView
-
Methods inherited from class androidx.fragment.app.Fragment
dump, equals, getActivity, getAllowEnterTransitionOverlap, getAllowReturnTransitionOverlap, getArguments, getChildFragmentManager, getContext, getEnterTransition, getExitTransition, getFragmentManager, getHost, getId, getLayoutInflater, getLayoutInflater, getLifecycle, getLoaderManager, getParentFragment, getReenterTransition, getResources, getRetainInstance, getReturnTransition, getSavedStateRegistry, getSharedElementEnterTransition, getSharedElementReturnTransition, getString, getString, getTag, getTargetFragment, getTargetRequestCode, getText, getUserVisibleHint, getView, getViewLifecycleOwner, getViewLifecycleOwnerLiveData, getViewModelStore, hashCode, hasOptionsMenu, instantiate, instantiate, isAdded, isDetached, isHidden, isInLayout, isMenuVisible, isRemoving, isResumed, isStateSaved, isVisible, onActivityCreated, onActivityResult, onAttach, onAttachFragment, onConfigurationChanged, onContextItemSelected, onCreate, onCreateAnimation, onCreateAnimator, onCreateContextMenu, onCreateOptionsMenu, onDestroy, onDestroyOptionsMenu, onDetach, onGetLayoutInflater, onHiddenChanged, onInflate, onInflate, onLowMemory, onMultiWindowModeChanged, onOptionsItemSelected, onOptionsMenuClosed, onPause, onPictureInPictureModeChanged, onPrepareOptionsMenu, onPrimaryNavigationFragmentChanged, onRequestPermissionsResult, onResume, onSaveInstanceState, onStart, onStop, onViewStateRestored, postponeEnterTransition, postponeEnterTransition, registerForContextMenu, requestPermissions, requireActivity, requireArguments, requireContext, requireFragmentManager, requireHost, requireParentFragment, requireView, setAllowEnterTransitionOverlap, setAllowReturnTransitionOverlap, setArguments, setEnterSharedElementCallback, setEnterTransition, setExitSharedElementCallback, setExitTransition, setHasOptionsMenu, setInitialSavedState, setMenuVisibility, setReenterTransition, setRetainInstance, setReturnTransition, setSharedElementEnterTransition, setSharedElementReturnTransition, setTargetFragment, setUserVisibleHint, shouldShowRequestPermissionRationale, startActivity, startActivityForResult, startIntentSenderForResult, startPostponedEnterTransition, toString, unregisterForContextMenu
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.cheetahdigital.uikit.widget.list.EndlessListView
onFinishLoadMore, onLoadMoreFailed
-
Methods inherited from interface com.cheetahdigital.uikit.architecture.lce.LceView
onLoadFailed, onLoadSuccess, setErrorViewClickListener
-
Methods inherited from interface com.cheetahdigital.uikit.architecture.lce.MvpLceView
showContent, showError, showLoading
-
Methods inherited from interface com.cheetahdigital.uikit.architecture.refreshable.RefreshableView
onFinishRefresh, onRefreshFailed
-
-
-
-
Field Detail
-
SHOW_SELF_IN_LIST
public static final java.lang.String SHOW_SELF_IN_LIST
- See Also:
- Constant Field Values
-
-
Method Detail
-
onCreateView
@Nullable public android.view.View onCreateView(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState)
- Overrides:
onCreateView
in classListFragmentView<V extends MemberListView,P extends MembersListPresenter<V>>
-
setMemberType
public void setMemberType(java.lang.String memberType)
Set the type of member. DefaultMemberAdapter.TYPE_MEMBERS_ALL
- Parameters:
memberType
- type of member- See Also:
MemberAdapter
-
getContentLayoutId
protected int getContentLayoutId()
Get layout ofMembersListFragment
- Specified by:
getContentLayoutId
in classMvpFragmentView<V extends MemberListView,P extends MembersListPresenter<V>>
- Returns:
- layout id of
MembersListFragment
-
createPresenter
protected P createPresenter()
Get presenter forMembersListFragment
- Specified by:
createPresenter
in classMvpFragmentView<V extends MemberListView,P extends MembersListPresenter<V>>
- Returns:
- instance of
MembersListPresenter
-
showMemberList
public void showMemberList(int totalEntries)
Description copied from interface:MemberListView
The view gets notified in this method when the call to the Members list API gets a successful response- Specified by:
showMemberList
in interfaceMemberListView
- Parameters:
totalEntries
- total number of entries regardless of pagination
-
appendMemberList
public boolean appendMemberList(java.util.List<Member> members, int totalEntries, java.lang.String memberId, int page)
Description copied from interface:MemberListView
The view get notified in this method when the call to the Members list API (with pagination) gets a successful response- Specified by:
appendMemberList
in interfaceMemberListView
- Parameters:
members
- the list of memberstotalEntries
- total number of entries regardless of paginationmemberId
- the id of the current logged in memberpage
- the current page- Returns:
- true for a success flag, else false
-
showFreshMemberList
public void showFreshMemberList(int totalEntries)
Description copied from interface:MemberListView
The view gets notified in this method if the refresh call to the Members API gets a successful response- Specified by:
showFreshMemberList
in interfaceMemberListView
- Parameters:
totalEntries
- total number of entries regardless of pagination
-
onConnectPermissionReceived
public void onConnectPermissionReceived(Permissions permissions, SummaryMember member)
Description copied from interface:MemberListView
The view gets notified in this method if the call to the summary - permissions api was successful- Specified by:
onConnectPermissionReceived
in interfaceMemberListView
- Parameters:
permissions
- permissions objectmember
- current logged in member
-
getScreenName
public int getScreenName()
- Specified by:
getScreenName
in interfaceAnalyticsManager.AnalyticsScreen
- Overrides:
getScreenName
in classMvpFragmentView<V extends MemberListView,P extends MembersListPresenter<V>>
-
applySearch
public void applySearch(java.lang.String keyword)
Processes the Search from the Members- Parameters:
keyword
- the keyword to be used in search
-
createMembersAdapter
protected MemberAdapter createMembersAdapter()
Method to create an instance ofMemberAdapter
. Usually used ifMemberAdapter
was subclassed.- Returns:
- instance of
MemberAdapter
-
createItemDecoration
protected IndexedItemDecoration createItemDecoration()
Create theRecyclerView.ItemDecoration
used in the RecyclerView. This will be invoked when initializing the list for the first time.- Returns:
- instance of
IndexedItemDecoration
for the RecyclerView
-
-