From 8382c62a698692678033c8d1de3257d62a160a4e Mon Sep 17 00:00:00 2001 From: Maxmtg Date: Tue, 30 Aug 2011 22:58:21 +0000 Subject: [PATCH] deckManager has lazy initialization now (in my private yet builds where Deck uses PrintedCards the decks loading before cardFactory caused NPEs) --- src/main/java/forge/AllZone.java | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/main/java/forge/AllZone.java b/src/main/java/forge/AllZone.java index 75f79c2a708..42f3f4bb9d3 100644 --- a/src/main/java/forge/AllZone.java +++ b/src/main/java/forge/AllZone.java @@ -6,6 +6,7 @@ import java.util.Map; import net.slightlymagic.braids.util.UtilFunctions; import forge.card.cardFactory.CardFactoryInterface; +import forge.card.cardFactory.LazyCardFactory; import forge.card.cardFactory.PreloadingCardFactory; import forge.card.mana.ManaPool; import forge.card.trigger.TriggerHandler; @@ -78,7 +79,7 @@ public final class AllZone implements NewConstants { private static Display display; /** Constant DECK_MGR. */ - private static final DeckManager DECK_MGR = new DeckManager(ForgeProps.getFile(NEW_DECKS)); + private static DeckManager deckManager; /** *

getHumanPlayer.

@@ -221,9 +222,10 @@ public final class AllZone implements NewConstants { * @since 1.0.15 */ public static CardFactoryInterface getCardFactory() { - if (cardFactory == null) { - setCardFactory(new PreloadingCardFactory(ForgeProps.getFile(CARDSFOLDER))); - } + if (cardFactory == null) { + //setCardFactory(new LazyCardFactory(ForgeProps.getFile(CARDSFOLDER))); + setCardFactory(new PreloadingCardFactory(ForgeProps.getFile(CARDSFOLDER))); + } return cardFactory; } @@ -638,7 +640,8 @@ public final class AllZone implements NewConstants { * @return dMgr */ public static DeckManager getDeckManager() { - return DECK_MGR; + if (deckManager == null) { deckManager = new DeckManager(ForgeProps.getFile(NEW_DECKS));} + return deckManager; } /**