01: /**
02: * Created on Dec 2, 2004
03: *
04: * @author karthikeyanr
05: *
06: */package wizard.model;
07:
08: import java.util.*;
09:
10: import wizard.helper.MagicPanelReference;
11: import wizard.ui.AbstractMagicPanel;
12:
13: public class MagicCardHelper {
14: private static MagicCardHelper magicCardHelper = null;
15:
16: private Map idIndexMap;
17:
18: private List cardList;
19:
20: private MagicCardHelper() {
21: idIndexMap = new HashMap();
22: cardList = new Vector();
23: }
24:
25: public static MagicCardHelper getInstance() {
26: if (magicCardHelper == null)
27: magicCardHelper = new MagicCardHelper();
28:
29: return magicCardHelper;
30: }
31:
32: public int getIndexOf(String nextCardID) {
33: Integer index = ((Integer) idIndexMap.get(nextCardID));
34:
35: return (index == null) ? -1 : index.intValue();
36: }
37:
38: public String getCardIDByIndex(int cardIndex) {
39: if (cardIndex < 0 || cardIndex >= cardList.size())
40: return null;
41:
42: return ((AbstractMagicPanel) ((MagicPanelReference) cardList
43: .get(cardIndex)).get()).getID();
44: }
45:
46: public void addCard(AbstractMagicPanel panel) {
47: cardList.add(new MagicPanelReference(panel));
48: idIndexMap.put(panel.getID(), new Integer(idIndexMap.size()));
49: }
50:
51: public int getCardCount() {
52: return cardList.size();
53: }
54:
55: public MagicPanelReference getCardReferenceAt(int cardIndex) {
56: if (cardIndex < 0 || cardIndex > cardList.size())
57: return null;
58:
59: return (MagicPanelReference) cardList.get(cardIndex);
60: }
61:
62: public void reset() {
63: cardList.clear();
64: idIndexMap.clear();
65: magicCardHelper = null;
66: }
67: }
|