From: <th...@us...> - 2008-11-19 00:56:24
|
Revision: 8455 http://pcgen.svn.sourceforge.net/pcgen/?rev=8455&view=rev Author: thpr Date: 2008-11-19 00:56:22 +0000 (Wed, 19 Nov 2008) Log Message: ----------- [ 2190900 ] [Nov 8] Campaign RANK Token Issue#: 2190900 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/Campaign.java Trunk/pcgen/code/src/java/pcgen/gui/editor/SourceBasePanel.java Trunk/pcgen/code/src/java/plugin/lsttokens/campaign/RankToken.java Modified: Trunk/pcgen/code/src/java/pcgen/core/Campaign.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/Campaign.java 2008-11-19 00:30:59 UTC (rev 8454) +++ Trunk/pcgen/code/src/java/pcgen/core/Campaign.java 2008-11-19 00:56:22 UTC (rev 8455) @@ -37,7 +37,6 @@ import pcgen.cdom.base.CDOMObject; import pcgen.cdom.base.Constants; -import pcgen.cdom.enumeration.IntegerKey; import pcgen.cdom.enumeration.ListKey; import pcgen.cdom.enumeration.StringKey; import pcgen.cdom.reference.TransparentReferenceManufacturer; @@ -400,15 +399,6 @@ } /** - * Sets the 'load rank' of the campaign. - * @param rank the wanted load rank - */ - public void setRank(final int rank) - { - put(IntegerKey.CAMPAIGN_RANK, rank); - } - - /** * @return whether or not the d20 info will pop up when this campaign is loaded */ public boolean isD20() Modified: Trunk/pcgen/code/src/java/pcgen/gui/editor/SourceBasePanel.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/editor/SourceBasePanel.java 2008-11-19 00:30:59 UTC (rev 8454) +++ Trunk/pcgen/code/src/java/pcgen/gui/editor/SourceBasePanel.java 2008-11-19 00:56:22 UTC (rev 8455) @@ -88,7 +88,7 @@ public void updateData(PObject thisPObject) { - theCampaign.setRank(Integer.parseInt(rank.getValue().toString())); + theCampaign.put(IntegerKey.CAMPAIGN_RANK, Integer.parseInt(rank.getValue().toString())); game = ""; StringBuffer tempBuff = new StringBuffer(30); if (gm35e.isSelected()) Modified: Trunk/pcgen/code/src/java/plugin/lsttokens/campaign/RankToken.java =================================================================== --- Trunk/pcgen/code/src/java/plugin/lsttokens/campaign/RankToken.java 2008-11-19 00:30:59 UTC (rev 8454) +++ Trunk/pcgen/code/src/java/plugin/lsttokens/campaign/RankToken.java 2008-11-19 00:56:22 UTC (rev 8455) @@ -1,15 +1,16 @@ package plugin.lsttokens.campaign; -import java.net.URI; - +import pcgen.cdom.enumeration.IntegerKey; import pcgen.core.Campaign; -import pcgen.persistence.lst.CampaignLstToken; +import pcgen.persistence.PersistenceLayerException; +import pcgen.rules.context.LoadContext; +import pcgen.rules.persistence.token.CDOMPrimaryToken; import pcgen.util.Logging; /** * Class deals with RANK Token */ -public class RankToken implements CampaignLstToken +public class RankToken implements CDOMPrimaryToken<Campaign> { public String getTokenName() @@ -17,17 +18,38 @@ return "RANK"; } - public boolean parse(Campaign campaign, String value, URI sourceUri) + public boolean parse(LoadContext context, Campaign obj, String value) + throws PersistenceLayerException { try { - campaign.setRank(Integer.parseInt(value)); + context.obj.put(obj, IntegerKey.CAMPAIGN_RANK, Integer + .parseInt(value)); return true; } catch (NumberFormatException nfe) { - Logging.log(Logging.LST_ERROR, "Bad RANK " + value); + Logging.log(Logging.LST_ERROR, "Bad " + getTokenName() + + " value, expected an integer: " + value); } return false; } + + public String[] unparse(LoadContext context, Campaign obj) + { + Integer rank = + context.getObjectContext().getInteger(obj, + IntegerKey.CAMPAIGN_RANK); + if (rank == null) + { + return null; + } + return new String[]{rank.toString()}; + } + + public Class<Campaign> getTokenClass() + { + return Campaign.class; + } + } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |