Mineuniverse
Log in Register
Plugins

DataManagerAPI

DataManagerAPI
by _ForgeUser10335832
Download Claim this project
3,369 downloads
0 likes
Updated Jun 30, 2026
0 hypes
Admin Tools Developer Tools

DataManagerAPI

Overview

DataManagerAPI is a library for plugins that needs to save data that is associated with players (such as kills, deaths, wins of games and much more)! This plugin supports MySQL.

Installation , Commands and Permissions

API

The API is for developers who want to use features of this library. Read the following for more info!

Summary of API

  • Create 2 classes that extends Data and DataLoader
  • Use
    DataManager<[your data class name]>.generateDataManager("myPluginName",this,myDataLoader);
    
    to generate a new data manager for your plugin
  • Use
    DataManager.removeAndSaveDataManagers(this);
    
    to remove and save all your data.
  • The above functions are mostly used in onEnable and onDisable respectively
  • Use
    myDataManager.getData("some_player_name")
    
    to get data of a player.

Here is an example of an implementation of DataManagerAPI. For a better example please read this.

public class MyPointsPlugin extends JavaPlugin{
    DataManager<XX> dm;
    public void onEnable(){
        XXLoader myLoader = new XXLoader();
        dm = DataManager<XX>.generateNewDataManager("MyPointsPlugin", this, myLoader);
    }

    public void onDisable(){
        DataManager.removeAndSaveDataManagers(this);
    }

    public boolean onCommand(CommandSender s,Command c,String lbl,String[]args){
        if(c.equalsIgnoreCase("points")){
            s.sendMessage("Points:"+dm.getData(s.getName()).points);
        }else if(c.equalsIgnoreCase("givepoints")){
            if(s.isOp()){
                XX data = DataManager.getData(args[0]);
                data.points=Integer.parseInt(args[1]);
                dm.forceSave(data);
            }
        }
    }
}

class XX extends Data{
    int points;
    XX(DataManager<XX>manager,Player p,JavaPlugin plug){super(manager,p,plug);
        points=0;
    }
    public void onSave(){
        set("points",points);
    }
}
class XXLoader extends DataLoader<XX>{
    @Override
    protected XX loadData(Player p, JavaPlugin plugin) {
        int points=getInt("points",0);
        XX data=new XX(getDataManager(),p,plugin);
        XX.points=points;
        return data;
    }

    @Override
    protected XX getNewData(Player p, JavaPlugin plugin) {
        return new XX(getDataManager(),p,plugin);
    }
}
DataManagerAPI_v1.1.6
MC CB 1.7.2-R0.3
Release 2014-05-04 Get
DataManagerAPI_v1.1.5
MC CB 1.7.2-R0.3
Release 2014-02-28 Get
DataManagerAPI_v1.1.4
MC CB 1.7.2-R0.2
Release 2014-01-22 Get
DataManagerAPI_v1.1.3
MC CB 1.7.2-R0.2
Release 2014-01-20 Get
DataManagerAPI_v1.1.1
MC CB 1.7.2-R0.2
Release 2014-01-17 Get
DataManagerAPI_v1.1.0
MC CB 1.7.2-R0.2
Release 2014-01-06 Get
DataManagerAPI_v1.0.0
MC CB 1.7.2-R0.2, CB 1.7.2-R0.1
Release 2013-12-31 Get

More from _ForgeUser10335832

Votifier Count
8,384
GuiAdmin
8,091
TeamPlugin
61,550
Kits Preview
48,406
UnbreakingAnvils
2,279
CoolLoginRewards
2,049

You Might Also Like

AdBolt Advertising Network
Make money from your Minecraft server by running ads!
9,992
Mineload
Mineload
9,978
BeastTP
BeastTP v1.0 - Teleportation Made Easy! -[Permissions][1317]
9,966
RegionManager
generate regions with just one command!
9,950
TimeKeeper
Keep the Server-Playtime per Day
9,948
SimpleAdmin
simple way to ban/kick unwanted players from your server
9,945