001    package org.bukkit.scoreboard;
002    
003    import java.lang.ref.WeakReference;
004    
005    /**
006     * Manager of Scoreboards
007     */
008    public interface ScoreboardManager {
009    
010        /**
011         * Gets the primary Scoreboard controlled by the server.
012         * <p>
013         * This Scoreboard is saved by the server, is affected by the /scoreboard
014         * command, and is the scoreboard shown by default to players.
015         *
016         * @return the default sever scoreboard
017         */
018        Scoreboard getMainScoreboard();
019    
020        /**
021         * Gets a new Scoreboard to be tracked by the server. This scoreboard will
022         * be tracked as long as a reference is kept, either by a player or by a
023         * plugin.
024         *
025         * @return the registered Scoreboard
026         * @see WeakReference
027         */
028        Scoreboard getNewScoreboard();
029    }