Mineuniverse
Plugins

DataManagerAPI

PLUGIN
DataManagerAPI
by _ForgeUser10335832
Download Claim this project
3,603 downloads
0 likes
Updated Oct 14, 2026
0 hypes
Admin Tools Developer Tools
Advertisement Remove ads with Premium →

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

Advertisement Remove ads with Premium →

You Might Also Like