Started re-implementing the XML build process...
This commit is contained in:
@@ -49,7 +49,7 @@ public class AchievementsDS extends Datasource {
|
||||
|
||||
PlayerAchievement pa;
|
||||
Achievements ach = (Achievements)XmlStatsRegistry.get("achievements");
|
||||
|
||||
|
||||
if(ach.useSQL){
|
||||
String location = ach.getDataFolder().getPath() + File.separator + playerName + ".txt";
|
||||
File fold = new File(location);
|
||||
|
||||
55
src/de/sockenklaus/XmlStats/Objects/Achievement.java
Normal file
55
src/de/sockenklaus/XmlStats/Objects/Achievement.java
Normal file
@@ -0,0 +1,55 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package de.sockenklaus.XmlStats.Objects;
|
||||
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Element;
|
||||
|
||||
import com.nidefawl.Achievements.AchievementListData;
|
||||
|
||||
/**
|
||||
* @author socrates
|
||||
*
|
||||
*/
|
||||
public class Achievement extends Elem {
|
||||
|
||||
private String name;
|
||||
private String description;
|
||||
private String category;
|
||||
private String stat;
|
||||
private Integer value;
|
||||
private Integer maxawards;
|
||||
private String commands;
|
||||
private Boolean enabled;
|
||||
|
||||
public Achievement(AchievementListData ach){
|
||||
this.name = ach.getName();
|
||||
this.description = ach.getDescription();
|
||||
this.category = ach.getCategory();
|
||||
this.stat = ach.getKey();
|
||||
this.value = ach.getValue();
|
||||
this.maxawards = ach.getMaxawards();
|
||||
this.commands = ach.commands.toString();
|
||||
this.enabled = ach.isEnabled();
|
||||
}
|
||||
|
||||
protected Achievement(){
|
||||
|
||||
}
|
||||
|
||||
public Element getXml(Document doc){
|
||||
Element result = doc.createElement("achievement");
|
||||
|
||||
result.setAttribute("enabled", this.enabled ?"true":"false");
|
||||
result.appendChild(this.addXmlChild("name", this.name, doc));
|
||||
result.appendChild(this.addXmlChild("description", this.description, doc));
|
||||
result.appendChild(this.addXmlChild("category", this.category, doc));
|
||||
result.appendChild(this.addXmlChild("stat", this.stat, doc));
|
||||
result.appendChild(this.addXmlChild("value", this.value, doc));
|
||||
result.appendChild(this.addXmlChild("maxawards", this.maxawards, doc));
|
||||
result.appendChild(this.addXmlChild("commands", this.commands, doc));
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
43
src/de/sockenklaus/XmlStats/Objects/Achievements.java
Normal file
43
src/de/sockenklaus/XmlStats/Objects/Achievements.java
Normal file
@@ -0,0 +1,43 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package de.sockenklaus.XmlStats.Objects;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Element;
|
||||
|
||||
import com.nidefawl.Achievements.AchievementListData;
|
||||
|
||||
import de.sockenklaus.XmlStats.Datasource.AchievementsDS;
|
||||
|
||||
/**
|
||||
* @author socrates
|
||||
*
|
||||
*/
|
||||
public class Achievements extends Array {
|
||||
protected ArrayList<Achievement> childNodes;
|
||||
|
||||
public Achievements(){
|
||||
AchievementsDS ads = new AchievementsDS();
|
||||
|
||||
HashMap<String, AchievementListData> achList = ads.getAchievementsList();
|
||||
|
||||
for(String achName : achList.keySet()){
|
||||
this.childNodes.add(new Achievement(achList.get(achName)));
|
||||
}
|
||||
}
|
||||
|
||||
public Element getXml(Document doc){
|
||||
Element result = doc.createElement("achievements");
|
||||
result.setAttribute("count", this.getCountStr());
|
||||
|
||||
for(Achievement ach : this.childNodes){
|
||||
result.appendChild(ach.getXml(doc));
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
22
src/de/sockenklaus/XmlStats/Objects/Array.java
Normal file
22
src/de/sockenklaus/XmlStats/Objects/Array.java
Normal file
@@ -0,0 +1,22 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package de.sockenklaus.XmlStats.Objects;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
* @author socrates
|
||||
*
|
||||
*/
|
||||
public abstract class Array {
|
||||
private ArrayList<?> childNodes;
|
||||
|
||||
public int getCountInt(){
|
||||
return this.childNodes.size();
|
||||
}
|
||||
|
||||
public String getCountStr(){
|
||||
return String.valueOf(this.childNodes.size());
|
||||
}
|
||||
}
|
||||
12
src/de/sockenklaus/XmlStats/Objects/Categories.java
Normal file
12
src/de/sockenklaus/XmlStats/Objects/Categories.java
Normal file
@@ -0,0 +1,12 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package de.sockenklaus.XmlStats.Objects;
|
||||
|
||||
/**
|
||||
* @author socrates
|
||||
*
|
||||
*/
|
||||
public class Categories extends Array {
|
||||
|
||||
}
|
||||
12
src/de/sockenklaus/XmlStats/Objects/Category.java
Normal file
12
src/de/sockenklaus/XmlStats/Objects/Category.java
Normal file
@@ -0,0 +1,12 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package de.sockenklaus.XmlStats.Objects;
|
||||
|
||||
/**
|
||||
* @author socrates
|
||||
*
|
||||
*/
|
||||
public class Category {
|
||||
|
||||
}
|
||||
25
src/de/sockenklaus/XmlStats/Objects/Elem.java
Normal file
25
src/de/sockenklaus/XmlStats/Objects/Elem.java
Normal file
@@ -0,0 +1,25 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package de.sockenklaus.XmlStats.Objects;
|
||||
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Element;
|
||||
|
||||
/**
|
||||
* @author socrates
|
||||
*
|
||||
*/
|
||||
public abstract class Elem {
|
||||
protected Element addXmlChild(String elemName, String text, Document doc){
|
||||
Element result = doc.createElement(elemName);
|
||||
result.setTextContent(text);
|
||||
return result;
|
||||
}
|
||||
|
||||
protected Element addXmlChild(String elemName, int value, Document doc){
|
||||
Element result = doc.createElement(elemName);
|
||||
result.setTextContent(String.valueOf(value));
|
||||
return result;
|
||||
}
|
||||
}
|
||||
12
src/de/sockenklaus/XmlStats/Objects/Item.java
Normal file
12
src/de/sockenklaus/XmlStats/Objects/Item.java
Normal file
@@ -0,0 +1,12 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package de.sockenklaus.XmlStats.Objects;
|
||||
|
||||
/**
|
||||
* @author socrates
|
||||
*
|
||||
*/
|
||||
public class Item {
|
||||
|
||||
}
|
||||
14
src/de/sockenklaus/XmlStats/Objects/Items.java
Normal file
14
src/de/sockenklaus/XmlStats/Objects/Items.java
Normal file
@@ -0,0 +1,14 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package de.sockenklaus.XmlStats.Objects;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
* @author socrates
|
||||
*
|
||||
*/
|
||||
public class Items extends Array {
|
||||
|
||||
}
|
||||
12
src/de/sockenklaus/XmlStats/Objects/User.java
Normal file
12
src/de/sockenklaus/XmlStats/Objects/User.java
Normal file
@@ -0,0 +1,12 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package de.sockenklaus.XmlStats.Objects;
|
||||
|
||||
/**
|
||||
* @author socrates
|
||||
*
|
||||
*/
|
||||
public class User {
|
||||
|
||||
}
|
||||
31
src/de/sockenklaus/XmlStats/Objects/UserAchievement.java
Normal file
31
src/de/sockenklaus/XmlStats/Objects/UserAchievement.java
Normal file
@@ -0,0 +1,31 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package de.sockenklaus.XmlStats.Objects;
|
||||
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Element;
|
||||
|
||||
/**
|
||||
* @author socrates
|
||||
*
|
||||
*/
|
||||
public class UserAchievement extends Achievement {
|
||||
|
||||
private String name;
|
||||
private int count;
|
||||
|
||||
public UserAchievement(String paName, com.nidefawl.Achievements.Achievement achievement){
|
||||
this.name = paName;
|
||||
this.count = achievement.getCount();
|
||||
}
|
||||
|
||||
public Element getXml(Document doc){
|
||||
Element result = doc.createElement("achievement");
|
||||
|
||||
result.appendChild(this.addXmlChild("name", this.name, doc));
|
||||
result.appendChild(this.addXmlChild("count", this.count, doc));
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
38
src/de/sockenklaus/XmlStats/Objects/UserAchievements.java
Normal file
38
src/de/sockenklaus/XmlStats/Objects/UserAchievements.java
Normal file
@@ -0,0 +1,38 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package de.sockenklaus.XmlStats.Objects;
|
||||
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Element;
|
||||
|
||||
import com.nidefawl.Achievements.PlayerAchievement;
|
||||
|
||||
import de.sockenklaus.XmlStats.Datasource.AchievementsDS;
|
||||
|
||||
/**
|
||||
* @author socrates
|
||||
*
|
||||
*/
|
||||
public class UserAchievements extends Achievements {
|
||||
public UserAchievements(String userName){
|
||||
AchievementsDS ads = new AchievementsDS();
|
||||
|
||||
PlayerAchievement pa = ads.getUserAchievement(userName);
|
||||
|
||||
for(String paName : pa.achievements.keySet()){
|
||||
this.childNodes.add(new UserAchievement(paName, pa.get(paName)));
|
||||
}
|
||||
}
|
||||
|
||||
public Element getXml(Document doc){
|
||||
Element result = doc.createElement("achievements");
|
||||
result.setAttribute("count", this.getCountStr());
|
||||
|
||||
for(Achievement ach : this.childNodes){
|
||||
result.appendChild(((UserAchievement)ach).getXml(doc));
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
12
src/de/sockenklaus/XmlStats/Objects/Users.java
Normal file
12
src/de/sockenklaus/XmlStats/Objects/Users.java
Normal file
@@ -0,0 +1,12 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package de.sockenklaus.XmlStats.Objects;
|
||||
|
||||
/**
|
||||
* @author socrates
|
||||
*
|
||||
*/
|
||||
public class Users extends Array {
|
||||
|
||||
}
|
||||
@@ -56,34 +56,14 @@ public class AchievementsList extends XmlWorker {
|
||||
Element elem_ach = this.doc.createElement("achievement");
|
||||
elem_ach.setAttribute("enabled", data.isEnabled()?"true":"false");
|
||||
|
||||
Element elem_achname = this.doc.createElement("name");
|
||||
elem_achname.setTextContent(data.getName());
|
||||
elem_ach.appendChild(elem_achname);
|
||||
|
||||
Element elem_achdesc = this.doc.createElement("description");
|
||||
elem_achdesc.setTextContent(data.getDescription());
|
||||
elem_ach.appendChild(elem_achdesc);
|
||||
|
||||
Element elem_category = this.doc.createElement("category");
|
||||
elem_category.setTextContent(data.getCategory());
|
||||
elem_ach.appendChild(elem_category);
|
||||
|
||||
Element elem_stat = this.doc.createElement("stat");
|
||||
elem_stat.setTextContent(data.getKey());
|
||||
elem_ach.appendChild(elem_stat);
|
||||
|
||||
Element elem_value = this.doc.createElement("value");
|
||||
elem_value.setTextContent(String.valueOf(data.getValue()));
|
||||
elem_ach.appendChild(elem_value);
|
||||
|
||||
Element elem_maxawards = this.doc.createElement("maxawards");
|
||||
elem_maxawards.setTextContent(String.valueOf(data.getMaxawards()));
|
||||
elem_ach.appendChild(elem_maxawards);
|
||||
|
||||
Element elem_commands = this.doc.createElement("commands");
|
||||
elem_commands.setTextContent(data.commands.toString());
|
||||
elem_ach.appendChild(elem_commands);
|
||||
|
||||
elem_ach.appendChild(getTextElem("name", data.getName()));
|
||||
elem_ach.appendChild(getTextElem("description", data.getDescription()));
|
||||
elem_ach.appendChild(getTextElem("category", data.getCategory()));
|
||||
elem_ach.appendChild(getTextElem("stat", data.getKey()));
|
||||
elem_ach.appendChild(getTextElem("value", data.getValue()));
|
||||
elem_ach.appendChild(getTextElem("maxawards", data.getMaxawards()));
|
||||
elem_ach.appendChild(getTextElem("commands", data.commands.toString()));
|
||||
|
||||
return elem_ach;
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user