Loading...
Searching...
No Matches
GroupCatalogue Interface Reference

GroupCatalogue serves as manager (register new group) as well as browser. More...

Public Member Functions

proto external GroupApplicationCatalogue GetApplicationCatalogue ()
 Returns application catalogue.
 
proto external void InitCatalogue (notnull BackendCallback pCallback)
 Initializes the Group Catalogue by fetching all data needed from backend for proper functionality.
 
proto external void InitMyGroups (notnull BackendCallback pCallback)
 Fetch currently joined groups and the user's membership data of the joined groups from the backend.
 
proto external void RequestPage (BackendCallback pCallback, int uPage, bool bClearCache)
 Will request load of data for specific page of catalogue.
 
proto external void RequestRefresh (BackendCallback pCallback)
 Will forcefully request refresh for current page/offset. Always clears already present items.
 
proto external void RequestOffset (BackendCallback pCallback, int uOffset, bool bClearCache)
 Will request load of data for offset from first item If data are already cached then callback is invoked immediately with this method and no request is sent to the backend.
 
proto external int GetJoinedGroups (out notnull array< GroupData > outJoinedGroups)
 Returns Groups the user is currently member of.
 
proto external int GetRoles (notnull out array< GroupMemberRole > outRoles)
 Get all defined group member roles.
 
proto external void RegisterGroup (notnull BackendCallback pCallback, notnull GroupManifest pManifest)
 Create and register a new Group.
 
proto external GroupData GetActiveGroup ()
 Group the user wants to play for.
 
proto external void SetFilters (GroupCatalogueFilters pFilters)
 Will set pointer to filters object for the catalogue.
 
proto external GroupCatalogueFilters GetFilters ()
 Will return pointer to object of currently applied filters for the catalogue.
 
proto external void AppendOrderBy (EBackendCatalogueOrderDir orderDir, EGroupCatalogueOrderBy orderBy)
 Will append new order by field for sorting catalogue.
 
proto external void ClearOrderBy ()
 Will clear ordering of catalogue list.
 
proto external int GetPageItemCount ()
 Get item count on current page.
 
proto external int GetPage ()
 Get current page number.
 
proto external void SetPageSize (int iCount)
 Set number of items per page.
 
proto external int GetTotalItemCount ()
 Get total item count on all pages.
 
proto external int GetPageCount ()
 Get page count.
 
proto external int MaxPageSize ()
 Returns max possible size of page that is allowed to be set.
 
proto external int GetPageItems (out notnull array< GroupData > outGroups)
 Get page content.
 

Detailed Description

GroupCatalogue serves as manager (register new group) as well as browser.

Handles logic of listing, paging and quick access to groups cached in memory.

Member Function Documentation

◆ AppendOrderBy()

proto external void GroupCatalogue.AppendOrderBy ( EBackendCatalogueOrderDir orderDir,
EGroupCatalogueOrderBy orderBy )

Will append new order by field for sorting catalogue.

Once field is appended it cannot be reused until clear.

Exceptions
VMEif field was already appended for sorting.

◆ ClearOrderBy()

proto external void GroupCatalogue.ClearOrderBy ( )

Will clear ordering of catalogue list.

◆ GetActiveGroup()

proto external GroupData GroupCatalogue.GetActiveGroup ( )

Group the user wants to play for.

◆ GetApplicationCatalogue()

proto external GroupApplicationCatalogue GroupCatalogue.GetApplicationCatalogue ( )

Returns application catalogue.

◆ GetFilters()

proto external GroupCatalogueFilters GroupCatalogue.GetFilters ( )

Will return pointer to object of currently applied filters for the catalogue.

Note
Can return null if no filters are set in the catalogue.

◆ GetJoinedGroups()

proto external int GroupCatalogue.GetJoinedGroups ( out notnull array< GroupData > outJoinedGroups)

Returns Groups the user is currently member of.

Note
Data must be fetched using InitMyGroups() before use.

◆ GetPage()

proto external int GroupCatalogue.GetPage ( )

Get current page number.

◆ GetPageCount()

proto external int GroupCatalogue.GetPageCount ( )

Get page count.

◆ GetPageItemCount()

proto external int GroupCatalogue.GetPageItemCount ( )

Get item count on current page.

◆ GetPageItems()

proto external int GroupCatalogue.GetPageItems ( out notnull array< GroupData > outGroups)

Get page content.

◆ GetRoles()

proto external int GroupCatalogue.GetRoles ( notnull out array< GroupMemberRole > outRoles)

Get all defined group member roles.

◆ GetTotalItemCount()

proto external int GroupCatalogue.GetTotalItemCount ( )

Get total item count on all pages.

◆ InitCatalogue()

proto external void GroupCatalogue.InitCatalogue ( notnull BackendCallback pCallback)

Initializes the Group Catalogue by fetching all data needed from backend for proper functionality.

This must be called before use and before calling InitMyGroups()!

Fetch all Group member Roles and their permissions.

◆ InitMyGroups()

proto external void GroupCatalogue.InitMyGroups ( notnull BackendCallback pCallback)

Fetch currently joined groups and the user's membership data of the joined groups from the backend.

This must be called AFTER InitCatalogue() to properly fill Group Member Roles and their permissions.

◆ MaxPageSize()

proto external int GroupCatalogue.MaxPageSize ( )

Returns max possible size of page that is allowed to be set.

◆ RegisterGroup()

proto external void GroupCatalogue.RegisterGroup ( notnull BackendCallback pCallback,
notnull GroupManifest pManifest )

Create and register a new Group.

Parameters
pManifestholds data needed to register a new Group

◆ RequestOffset()

proto external void GroupCatalogue.RequestOffset ( BackendCallback pCallback,
int uOffset,
bool bClearCache )

Will request load of data for offset from first item If data are already cached then callback is invoked immediately with this method and no request is sent to the backend.

Offset 0 represent first item. Int is casted into uint32.

Note
This method should be used for scrolling UI - there is no fixed position where page begins and ends. It can be used even for paging UI implementation but it is recommended to use RequestPage() method for simplicity.

◆ RequestPage()

proto external void GroupCatalogue.RequestPage ( BackendCallback pCallback,
int uPage,
bool bClearCache )

Will request load of data for specific page of catalogue.

If data are already cached then callback is invoked immediately with this method and no request is sent to the backend.

Pages are indexed from 0. Int is casted into uint32.

Note
This method should be used for paging UI where single page with fixed size and offset is visible at the time. It should not be used for scrolling implementation which can possibly show items from 2 pages at once which can introduce issues.

◆ RequestRefresh()

proto external void GroupCatalogue.RequestRefresh ( BackendCallback pCallback)

Will forcefully request refresh for current page/offset. Always clears already present items.

◆ SetFilters()

proto external void GroupCatalogue.SetFilters ( GroupCatalogueFilters pFilters)

Will set pointer to filters object for the catalogue.

Filters should be set only once at the beginning and then you can just modify local instance of filters. If set to null then no filters will be applied.

◆ SetPageSize()

proto external void GroupCatalogue.SetPageSize ( int iCount)

Set number of items per page.


The documentation for this interface was generated from the following file: