Package cn.leancloud
Class LCLeaderboard
java.lang.Object
cn.leancloud.LCLeaderboard
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumstatic enumstatic enum -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic io.reactivex.Observable<LCLeaderboard> create(String name, LCLeaderboard.LCLeaderboardOrder order, LCLeaderboard.LCLeaderboardUpdateStrategy updateStrategy, LCLeaderboard.LCLeaderboardVersionChangeInterval versionChangeInterval) create leaderboard with default member type(User).static io.reactivex.Observable<LCLeaderboard> createWithMemberType(String memberType, String name, LCLeaderboard.LCLeaderboardOrder order, LCLeaderboard.LCLeaderboardUpdateStrategy updateStrategy, LCLeaderboard.LCLeaderboardVersionChangeInterval versionChangeInterval) create leaderboard with customized member typestatic LCLeaderboardcreateWithoutData(String name) create instance with leaderboard namestatic LCLeaderboardcreateWithoutData(String name, String memberType) create instance with leaderboard name and type.io.reactivex.Observable<Boolean> destroy()destroy current leaderboard.static io.reactivex.Observable<LCLeaderboard> fetchByName(String name) fetch leaderboard with nameio.reactivex.Observable<LCLeaderboardResult> getAroundInGroupResults(List<String> groupUserIds, String targetId, int limit, List<String> selectMemberKeys, List<String> includeStatistics) get leaderboard results around target id within specified group.io.reactivex.Observable<LCLeaderboardResult> getAroundResults(String targetId, int skip, int limit, List<String> selectMemberKeys, List<String> includeStatistics) get leaderboard results around target id(user, object or entity).get create timestampio.reactivex.Observable<LCLeaderboardResult> getGroupResults(List<String> groupUserIds, int skip, int limit, List<String> selectMemberKeys, List<String> includeStatistics) get group user's ranking.static io.reactivex.Observable<LCStatisticResult> getMemberStatistics(String memberType, String memberId) get member statistics.static io.reactivex.Observable<LCStatisticResult> getMemberStatistics(String memberType, String memberId, List<String> statisticNames) get member statisticsget next reset timestampgetOrder()get leaderboard orderio.reactivex.Observable<LCLeaderboardResult> getResults(int skip, int limit, List<String> selectMemberKeys, List<String> includeStatistics) get leaderboard results.io.reactivex.Observable<LCLeaderboardResult> getResults(int skip, int limit, List<String> selectMemberKeys, List<String> includeStatistics, boolean withCount) get leaderboard results.get statistic nameget leaderboard update strategystatic io.reactivex.Observable<LCStatisticResult> getUserStatistics(LCUser user) get user's statisticsstatic io.reactivex.Observable<LCStatisticResult> getUserStatistics(LCUser user, List<String> statisticNames) get user's statisticsintget versionget version change intervalprotected static <T extends Enum<T>>
Tstatic io.reactivex.Observable<LCStatisticResult> queryGroupStatistics(String memberType, String statisticName, List<String> targetKeys) query a group of users/objects/entities statistic results.io.reactivex.Observable<LCStatisticResult> queryGroupStatistics(List<String> targetKeys) query multiple users/objects/entities statistic results.io.reactivex.Observable<Boolean> reset()reset current leaderboard.voidsetVersion(int version) static io.reactivex.Observable<LCStatisticResult> updateStatistic(LCUser user, Map<String, Double> values) update user's statisticstatic io.reactivex.Observable<LCStatisticResult> updateStatistic(LCUser user, Map<String, Double> params, boolean overwrite) update user's statisticio.reactivex.Observable<Boolean> update current leaderboard's update strategy.io.reactivex.Observable<Boolean> update current leaderboard's change interval
-
Field Details
-
INVALID_VERSION
public static final int INVALID_VERSION- See Also:
-
MEMBER_TYPE_USER
- See Also:
-
MEMBER_TYPE_ENTITY
- See Also:
-
MEMBER_TYPE_OBJECT
- See Also:
-
-
Constructor Details
-
LCLeaderboard
-
-
Method Details
-
getStatisticName
get statistic name- Returns:
- statistic name
-
getOrder
get leaderboard order- Returns:
- leaderboard order
-
getUpdateStrategy
get leaderboard update strategy- Returns:
- update strategy
-
getVersionChangeInterval
get version change interval- Returns:
- version change interval
-
getVersion
public int getVersion()get version- Returns:
- version number
-
getNextResetAt
get next reset timestamp- Returns:
- next reset timestamp
-
getCreatedAt
get create timestamp- Returns:
- create timestamp
-
setVersion
public void setVersion(int version) -
lookup
-
createWithoutData
create instance with leaderboard name- Parameters:
name- leaderboard name- Returns:
- instance
-
createWithoutData
create instance with leaderboard name and type.- Parameters:
name- leaderboard namememberType- leaderboard member type: MEMBER_TYPE_USER("_User"): leaderboard target is LCUser MEMBER_TYPE_ENTITY("_Entity"): leaderboard target is any entity LCObject Name: leaderboard target is LCObject- Returns:
- instance
-
updateStatistic
public static io.reactivex.Observable<LCStatisticResult> updateStatistic(LCUser user, Map<String, Double> values) update user's statistic- Parameters:
user- user instancevalues- statistics- Returns:
- observable instance.
-
updateStatistic
public static io.reactivex.Observable<LCStatisticResult> updateStatistic(LCUser user, Map<String, Double> params, boolean overwrite) update user's statistic- Parameters:
user- user instanceparams- statisticsoverwrite- overwrite flag- Returns:
- observable instance.
-
getUserStatistics
get user's statistics- Parameters:
user- user instance- Returns:
- observable instance.
-
getUserStatistics
public static io.reactivex.Observable<LCStatisticResult> getUserStatistics(LCUser user, List<String> statisticNames) get user's statistics- Parameters:
user- user instancestatisticNames- statistic names- Returns:
- observable instance.
-
getMemberStatistics
public static io.reactivex.Observable<LCStatisticResult> getMemberStatistics(String memberType, String memberId) get member statistics.- Parameters:
memberType- member type MEMBER_TYPE_USER("_User"): leaderboard target is LCUser MEMBER_TYPE_ENTITY("_Entity"): leaderboard target is any entity LCObject Name: leaderboard target is LCObjectmemberId- member objectId- Returns:
- observable instance.
-
getMemberStatistics
public static io.reactivex.Observable<LCStatisticResult> getMemberStatistics(String memberType, String memberId, List<String> statisticNames) get member statistics- Parameters:
memberType- member type MEMBER_TYPE_USER("_User"): leaderboard target is LCUser MEMBER_TYPE_ENTITY("_Entity"): leaderboard target is any entity LCObject Name: leaderboard target is LCObjectmemberId- member objectIdstatisticNames- statistic names- Returns:
- observable instance.
-
queryGroupStatistics
public static io.reactivex.Observable<LCStatisticResult> queryGroupStatistics(String memberType, String statisticName, List<String> targetKeys) query a group of users/objects/entities statistic results.- Parameters:
memberType- member type. MEMBER_TYPE_USER("_User"): leaderboard target is LCUser MEMBER_TYPE_ENTITY("_Entity"): leaderboard target is any entity MEMBER_TYPE_ENTITY("_Object"): leaderboard target is LCObjectstatisticName- statistic names.targetKeys- target ids.- Returns:
- observable instance.
-
getResults
public io.reactivex.Observable<LCLeaderboardResult> getResults(int skip, int limit, List<String> selectMemberKeys, List<String> includeStatistics) get leaderboard results.- Parameters:
skip- query offsetlimit- query limitselectMemberKeys- select member(user or object) keys(optional)includeStatistics- include other statistics(optional)- Returns:
- observable instance.
-
getResults
public io.reactivex.Observable<LCLeaderboardResult> getResults(int skip, int limit, List<String> selectMemberKeys, List<String> includeStatistics, boolean withCount) get leaderboard results.- Parameters:
skip- query offsetlimit- query limitselectMemberKeys- select member(user or object) keys(optional)includeStatistics- include other statistics(optional)withCount- need count flag(optional)- Returns:
- observable instance.
-
getGroupResults
public io.reactivex.Observable<LCLeaderboardResult> getGroupResults(List<String> groupUserIds, int skip, int limit, List<String> selectMemberKeys, List<String> includeStatistics) get group user's ranking.- Parameters:
groupUserIds- user id list.skip- skip number.limit- max result limitation.selectMemberKeys- select member(user) keys(optional)includeStatistics- include other statistics(optional)- Returns:
- observable instance.
-
getAroundResults
public io.reactivex.Observable<LCLeaderboardResult> getAroundResults(String targetId, int skip, int limit, List<String> selectMemberKeys, List<String> includeStatistics) get leaderboard results around target id(user, object or entity).- Parameters:
targetId- target objectIdskip- query offsetlimit- query limitselectMemberKeys- select object keys(optional)includeStatistics- include other statistics(optional)- Returns:
- observable instance.
-
getAroundInGroupResults
public io.reactivex.Observable<LCLeaderboardResult> getAroundInGroupResults(List<String> groupUserIds, String targetId, int limit, List<String> selectMemberKeys, List<String> includeStatistics) get leaderboard results around target id within specified group.- Parameters:
groupUserIds- user id list.targetId- target user id.limit- query limit.selectMemberKeys- select object keys(optional)includeStatistics- include other statistics(optional)- Returns:
- observable instance.
-
queryGroupStatistics
query multiple users/objects/entities statistic results.- Parameters:
targetKeys- target id list.- Returns:
- observable instance.
-
create
public static io.reactivex.Observable<LCLeaderboard> create(String name, LCLeaderboard.LCLeaderboardOrder order, LCLeaderboard.LCLeaderboardUpdateStrategy updateStrategy, LCLeaderboard.LCLeaderboardVersionChangeInterval versionChangeInterval) create leaderboard with default member type(User).- Parameters:
name- nameorder- orderupdateStrategy- update strategy.versionChangeInterval- version change interval.- Returns:
- leaderboard observer.
-
createWithMemberType
public static io.reactivex.Observable<LCLeaderboard> createWithMemberType(String memberType, String name, LCLeaderboard.LCLeaderboardOrder order, LCLeaderboard.LCLeaderboardUpdateStrategy updateStrategy, LCLeaderboard.LCLeaderboardVersionChangeInterval versionChangeInterval) create leaderboard with customized member type- Parameters:
memberType- member typename- nameorder- orderupdateStrategy- update strategy.versionChangeInterval- version change interval.- Returns:
- leaderboard observer.
-
fetchByName
fetch leaderboard with name- Parameters:
name- leaderboard name- Returns:
- leaderboard observer.
-
reset
reset current leaderboard.- Returns:
- boolean observer that always emits true.
-
updateVersionChangeInterval
public io.reactivex.Observable<Boolean> updateVersionChangeInterval(LCLeaderboard.LCLeaderboardVersionChangeInterval interval) update current leaderboard's change interval- Parameters:
interval- new change interval- Returns:
- boolean observer that always emits true.
-
updateUpdateStrategy
public io.reactivex.Observable<Boolean> updateUpdateStrategy(LCLeaderboard.LCLeaderboardUpdateStrategy strategy) update current leaderboard's update strategy.- Parameters:
strategy- new update strategy.- Returns:
- boolean observer that always emits true.
-
destroy
destroy current leaderboard.- Returns:
- boolean observer that always emits true.
-