Android Open Source - gameup-android-sdk Leaderboard






From Project

Back to project page gameup-android-sdk.

License

The source code is released under:

Apache License

If you think the Android project gameup-android-sdk listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * Copyright 2014-2015 GameUp/*w  ww .ja  v  a 2 s.  c  o  m*/
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package io.gameup.android.entity;

import com.google.gson.annotations.SerializedName;

import java.util.Iterator;
import java.util.List;

import lombok.AllArgsConstructor;
import lombok.Data;

/**
 * Represents a GameUp leaderboard metadata and top ranked gamers.
 */
@Data
@AllArgsConstructor(suppressConstructorProperties = true)
public class Leaderboard implements Iterable<Leaderboard.Entry> {

    /** Leaderboard display name. */
    private final String name;

    /** Leaderboard public identifier. */
    private final String publicId;

    /** Sort order indicator. */
    private final Sort sort;

    /** Type indicator. */
    private final Type type;

    /**
     * The top ranked gamers on this board, up to 50. Already sorted according
     * to the leaderboard sort settings.
     */
    private final List<Entry> entries;

    @Override
    public Iterator<Leaderboard.Entry> iterator() {
        return entries.iterator();
    }

    /**
     * A gamer's public leaderboard entry data.
     */
    @Data
    @AllArgsConstructor(suppressConstructorProperties = true)
    public static class Entry {

        /** Nickname, suitable for public display. */
        private final String name;

        /** Score. */
        private final long score;

        /** When the score was submitted to this leaderboard. */
        private final long scoreAt;

    }

    /**
     * Leaderboard sort order hint.
     */
    public static enum Sort {

        /** Indicates the entries should be sorted ascending by score. */
        @SerializedName("asc")
        ASC,

        /** Indicates the entries should be sorted descending by score. */
        @SerializedName("desc")
        DESC

    }

    /**
     * Leaderboard type hint.
     */
    public static enum Type {

        /** Standard best score, one entry per gamer leaderboard type. */
        @SerializedName("rank")
        RANK

    }

}




Java Source Code List

io.gameup.android.GameUpLoginListener.java
io.gameup.android.GameUpSession.java
io.gameup.android.GameUp.java
io.gameup.android.Utils.java
io.gameup.android.entity.AchievementList.java
io.gameup.android.entity.Achievement.java
io.gameup.android.entity.Game.java
io.gameup.android.entity.Gamer.java
io.gameup.android.entity.LeaderboardAndRank.java
io.gameup.android.entity.Leaderboard.java
io.gameup.android.entity.Rank.java
io.gameup.android.entity.Server.java
io.gameup.android.http.OkHttpClientFactory.java
io.gameup.android.http.RequestFactory.java
io.gameup.android.json.AchievementProgress.java
io.gameup.android.json.GsonFactory.java
io.gameup.android.json.LeaderboardSubmission.java
io.gameup.android.json.StorageGetWrapper.java