diff --git a/lib/Achievements.jar b/lib/Achievements.jar index 0d5caa8..03da59f 100644 Binary files a/lib/Achievements.jar and b/lib/Achievements.jar differ diff --git a/src/de/sockenklaus/XmlStats/Objects/Achievement.java b/src/de/sockenklaus/XmlStats/Objects/Achievement.java deleted file mode 100644 index 1170935..0000000 --- a/src/de/sockenklaus/XmlStats/Objects/Achievement.java +++ /dev/null @@ -1,59 +0,0 @@ -/** - * - */ -package de.sockenklaus.XmlStats.Objects; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -import com.nidefawl.Achievements.AchievementListData; - -import de.sockenklaus.XmlStats.XmlStats; - -/** - * @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(); - XmlStats.LogDebug("End of Achievement constructor."); - } - - protected Achievement(){ - - } - - public Element getXml(Document doc){ - Element result = doc.createElement("achievement"); - - result.setAttribute("enabled", this.enabled.toString()); - 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; - } -} diff --git a/src/de/sockenklaus/XmlStats/Objects/Achievements.java b/src/de/sockenklaus/XmlStats/Objects/Achievements.java deleted file mode 100644 index 08f8b39..0000000 --- a/src/de/sockenklaus/XmlStats/Objects/Achievements.java +++ /dev/null @@ -1,44 +0,0 @@ -/** - * - */ -package de.sockenklaus.XmlStats.Objects; - -import java.util.HashMap; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -import com.nidefawl.Achievements.AchievementListData; - -import de.sockenklaus.XmlStats.XmlStats; -import de.sockenklaus.XmlStats.Datasource.AchievementsDS; - -/** - * @author socrates - * - */ -public class Achievements extends Array { - - public Achievements(){ - super(); - XmlStats.LogDebug("Casting Achievements constructor"); - AchievementsDS ads = new AchievementsDS(); - - HashMap 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(Elem ach : this.childNodes){ - result.appendChild(ach.getXml(doc)); - } - - return result; - } -} diff --git a/src/de/sockenklaus/XmlStats/Objects/Array.java b/src/de/sockenklaus/XmlStats/Objects/Array.java deleted file mode 100644 index 2e7c90b..0000000 --- a/src/de/sockenklaus/XmlStats/Objects/Array.java +++ /dev/null @@ -1,26 +0,0 @@ -/** - * - */ -package de.sockenklaus.XmlStats.Objects; - -import java.util.ArrayList; - -/** - * @author socrates - * - */ -public abstract class Array extends Elem{ - protected ArrayList childNodes; - - public Array(){ - this.childNodes = new ArrayList(); - } - - public int getCountInt(){ - return this.childNodes.size(); - } - - public String getCountStr(){ - return String.valueOf(this.childNodes.size()); - } -} diff --git a/src/de/sockenklaus/XmlStats/Objects/Categories.java b/src/de/sockenklaus/XmlStats/Objects/Categories.java deleted file mode 100644 index b8171c8..0000000 --- a/src/de/sockenklaus/XmlStats/Objects/Categories.java +++ /dev/null @@ -1,24 +0,0 @@ -/** - * - */ -package de.sockenklaus.XmlStats.Objects; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -/** - * @author socrates - * - */ -public class Categories extends Array { - - /* (non-Javadoc) - * @see de.sockenklaus.XmlStats.Objects.Elem#getXml(org.w3c.dom.Document) - */ - @Override - public Element getXml(Document doc) { - // TODO Auto-generated method stub - return null; - } - -} diff --git a/src/de/sockenklaus/XmlStats/Objects/Category.java b/src/de/sockenklaus/XmlStats/Objects/Category.java deleted file mode 100644 index a1237ed..0000000 --- a/src/de/sockenklaus/XmlStats/Objects/Category.java +++ /dev/null @@ -1,12 +0,0 @@ -/** - * - */ -package de.sockenklaus.XmlStats.Objects; - -/** - * @author socrates - * - */ -public class Category { - -} diff --git a/src/de/sockenklaus/XmlStats/Objects/Elem.java b/src/de/sockenklaus/XmlStats/Objects/Elem.java deleted file mode 100644 index 474f685..0000000 --- a/src/de/sockenklaus/XmlStats/Objects/Elem.java +++ /dev/null @@ -1,31 +0,0 @@ -/** - * - */ -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; - } - - /** - * @param doc - * @return - */ - public abstract Element getXml(Document doc); -} diff --git a/src/de/sockenklaus/XmlStats/Objects/Item.java b/src/de/sockenklaus/XmlStats/Objects/Item.java deleted file mode 100644 index 903aa9d..0000000 --- a/src/de/sockenklaus/XmlStats/Objects/Item.java +++ /dev/null @@ -1,12 +0,0 @@ -/** - * - */ -package de.sockenklaus.XmlStats.Objects; - -/** - * @author socrates - * - */ -public class Item { - -} diff --git a/src/de/sockenklaus/XmlStats/Objects/Items.java b/src/de/sockenklaus/XmlStats/Objects/Items.java deleted file mode 100644 index 6a59821..0000000 --- a/src/de/sockenklaus/XmlStats/Objects/Items.java +++ /dev/null @@ -1,24 +0,0 @@ -/** - * - */ -package de.sockenklaus.XmlStats.Objects; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -/** - * @author socrates - * - */ -public class Items extends Array { - - /* (non-Javadoc) - * @see de.sockenklaus.XmlStats.Objects.Elem#getXml(org.w3c.dom.Document) - */ - @Override - public Element getXml(Document doc) { - // TODO Auto-generated method stub - return null; - } - -} diff --git a/src/de/sockenklaus/XmlStats/Objects/User.java b/src/de/sockenklaus/XmlStats/Objects/User.java deleted file mode 100644 index 682685c..0000000 --- a/src/de/sockenklaus/XmlStats/Objects/User.java +++ /dev/null @@ -1,12 +0,0 @@ -/** - * - */ -package de.sockenklaus.XmlStats.Objects; - -/** - * @author socrates - * - */ -public class User { - -} diff --git a/src/de/sockenklaus/XmlStats/Objects/UserAchievement.java b/src/de/sockenklaus/XmlStats/Objects/UserAchievement.java deleted file mode 100644 index cb4bca6..0000000 --- a/src/de/sockenklaus/XmlStats/Objects/UserAchievement.java +++ /dev/null @@ -1,31 +0,0 @@ -/** - * - */ -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; - } -} diff --git a/src/de/sockenklaus/XmlStats/Objects/UserAchievements.java b/src/de/sockenklaus/XmlStats/Objects/UserAchievements.java deleted file mode 100644 index de9eebe..0000000 --- a/src/de/sockenklaus/XmlStats/Objects/UserAchievements.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * - */ -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; -import de.sockenklaus.XmlStats.Datasource.Datasource; -import de.sockenklaus.XmlStats.Exceptions.XmlStatsException; - -/** - * @author socrates - * - */ -public class UserAchievements extends Achievements { - public UserAchievements(String userName) throws XmlStatsException{ - AchievementsDS ads = new AchievementsDS(); - - if (Datasource.userExists(userName)){ - PlayerAchievement pa = ads.getUserAchievement(userName); - - for(String paName : pa.achievements.keySet()){ - this.childNodes.add(new UserAchievement(paName, pa.get(paName))); - } - } - else throw new XmlStatsException("The given username is not valid."); - } - - public Element getXml(Document doc){ - Element result = doc.createElement("achievements"); - result.setAttribute("count", this.getCountStr()); - - for(Elem ach : this.childNodes){ - result.appendChild(((UserAchievement)ach).getXml(doc)); - } - - return result; - } -} diff --git a/src/de/sockenklaus/XmlStats/Objects/Users.java b/src/de/sockenklaus/XmlStats/Objects/Users.java deleted file mode 100644 index 8c5cae6..0000000 --- a/src/de/sockenklaus/XmlStats/Objects/Users.java +++ /dev/null @@ -1,24 +0,0 @@ -/** - * - */ -package de.sockenklaus.XmlStats.Objects; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -/** - * @author socrates - * - */ -public class Users extends Array { - - /* (non-Javadoc) - * @see de.sockenklaus.XmlStats.Objects.Elem#getXml(org.w3c.dom.Document) - */ - @Override - public Element getXml(Document doc) { - // TODO Auto-generated method stub - return null; - } - -} diff --git a/src/de/sockenklaus/XmlStats/XmlWorkers/AchievementsList.java b/src/de/sockenklaus/XmlStats/XmlWorkers/AchievementsList.java index 44c1542..1c811d3 100644 --- a/src/de/sockenklaus/XmlStats/XmlWorkers/AchievementsList.java +++ b/src/de/sockenklaus/XmlStats/XmlWorkers/AchievementsList.java @@ -3,12 +3,15 @@ */ package de.sockenklaus.XmlStats.XmlWorkers; +import java.util.HashMap; import java.util.List; import java.util.Map; import org.w3c.dom.Element; -import de.sockenklaus.XmlStats.Objects.Achievements; +import com.nidefawl.Achievements.AchievementListData; + +import de.sockenklaus.XmlStats.Datasource.AchievementsDS; /** * @author socrates @@ -21,9 +24,16 @@ public class AchievementsList extends XmlWorker { */ @Override protected Element getXml(Map> parameters) { - Achievements ach = new Achievements(); - return ach.getXml(this.doc); + HashMap achList = new AchievementsDS().getAchievementsList(); + + Element elem_achs = this.doc.createElement("achievements"); + elem_achs.setAttribute("count", String.valueOf(achList.size())); + for(String achName : achList.keySet()){ + elem_achs.appendChild(getAchievement(achList.get(achName))); + } + + return elem_achs; } /* (non-Javadoc) @@ -41,4 +51,41 @@ public class AchievementsList extends XmlWorker { protected Element getUserXml(List playerList, Map> parameters) { return this.getXml(parameters); } + + private Element getAchievement(AchievementListData data){ + 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); + + return elem_ach; + + } + }