- CheckStyle.

This commit is contained in:
Chris
2012-02-18 21:51:58 +00:00
parent aeb44f00f0
commit 7e1868bbb8

View File

@@ -33,8 +33,8 @@ public class OldDeckParser {
public boolean accept(final File dir, final String name) { public boolean accept(final File dir, final String name) {
return name.endsWith(".bdk"); return name.endsWith(".bdk");
} }
}; };
/** /**
* TODO: Write javadoc for Constructor. * TODO: Write javadoc for Constructor.
* @param file * @param file
@@ -51,7 +51,7 @@ public class OldDeckParser {
cube = cube2; cube = cube2;
draft = draft2; draft = draft2;
} }
protected final IFolderMap<DeckSet> getSealed() { protected final IFolderMap<DeckSet> getSealed() {
return sealed; return sealed;
} }
@@ -80,17 +80,15 @@ public class OldDeckParser {
convertConstructedAndSealed(); convertConstructedAndSealed();
convertDrafts(); convertDrafts();
} }
private void convertDrafts() private void convertDrafts() {
{ for (File f : deckDir.listFiles(bdkFileFilter)) {
for( File f : deckDir.listFiles(bdkFileFilter))
{
boolean gotError = false; boolean gotError = false;
Deck human = Deck.fromFile(new File(f, "0.dck")); Deck human = Deck.fromFile(new File(f, "0.dck"));
final DeckSet d = new DeckSet(human.getName()); final DeckSet d = new DeckSet(human.getName());
d.setHumanDeck(human); d.setHumanDeck(human);
for (int i = 1; i < DeckSetSerializer.MAX_DRAFT_PLAYERS; i++) { for (int i = 1; i < DeckSetSerializer.MAX_DRAFT_PLAYERS; i++) {
Deck nextAi = Deck.fromFile(new File(f, i + ".dck")); Deck nextAi = Deck.fromFile(new File(f, i + ".dck"));
if (nextAi == null) { if (nextAi == null) {
@@ -99,7 +97,7 @@ public class OldDeckParser {
} }
d.addAiDeck(nextAi); d.addAiDeck(nextAi);
} }
boolean mayDelete = !gotError; boolean mayDelete = !gotError;
if (!gotError) { if (!gotError) {
draft.add(d); draft.add(d);
@@ -107,93 +105,95 @@ public class OldDeckParser {
String msg = String.format("Draft '%s' lacked some decks.%n%nShould it be deleted?"); String msg = String.format("Draft '%s' lacked some decks.%n%nShould it be deleted?");
mayDelete = JOptionPane.YES_OPTION == JOptionPane.showConfirmDialog(null, msg, "Draft loading error", JOptionPane.YES_NO_OPTION); mayDelete = JOptionPane.YES_OPTION == JOptionPane.showConfirmDialog(null, msg, "Draft loading error", JOptionPane.YES_NO_OPTION);
} }
if( mayDelete ) { if (mayDelete) {
for( File f1 : f.listFiles() ) for (File f1 : f.listFiles()) {
f1.delete(); f1.delete();
}
f.delete(); f.delete();
} }
} }
} }
private void convertConstructedAndSealed() private void convertConstructedAndSealed() {
{
boolean allowDeleteUnsupportedConstructed = false; boolean allowDeleteUnsupportedConstructed = false;
Map<String, Pair<DeckSet, MutablePair<File,File>>> sealedDecks = new TreeMap<String, Pair<DeckSet, MutablePair<File,File>>>(String.CASE_INSENSITIVE_ORDER); Map<String, Pair<DeckSet, MutablePair<File, File>>> sealedDecks = new TreeMap<String, Pair<DeckSet, MutablePair<File, File>>>(String.CASE_INSENSITIVE_ORDER);
for( File f : deckDir.listFiles(DeckSerializer.DCK_FILE_FILTER)) for (File f : deckDir.listFiles(DeckSerializer.DCK_FILE_FILTER)) {
{
boolean importedOk = false; boolean importedOk = false;
List<String> fileLines = FileUtil.readFile(f); List<String> fileLines = FileUtil.readFile(f);
Map<String, List<String>> sections = SectionUtil.parseSections(fileLines); Map<String, List<String>> sections = SectionUtil.parseSections(fileLines);
DeckFileHeader dh = DeckSerializer.readDeckMetadata(sections); DeckFileHeader dh = DeckSerializer.readDeckMetadata(sections);
String name = dh.getName(); String name = dh.getName();
if ( dh.isCustomPool() ) { continue; } if (dh.isCustomPool()) {
continue;
}
switch(dh.getDeckType()) { switch(dh.getDeckType()) {
case Constructed: case Constructed:
try { try {
constructed.add(Deck.fromLines(fileLines)); constructed.add(Deck.fromLines(fileLines));
importedOk = true; importedOk = true;
} catch( NoSuchElementException ex) { } catch (NoSuchElementException ex) {
if( !allowDeleteUnsupportedConstructed ) { if (!allowDeleteUnsupportedConstructed) {
String msg = String.format("Can not convert deck '%s' for some unsupported cards it contains. %n%s%n%nMay Forge delete all such decks?", name, ex.getMessage()); String msg = String.format("Can not convert deck '%s' for some unsupported cards it contains. %n%s%n%nMay Forge delete all such decks?", name, ex.getMessage());
allowDeleteUnsupportedConstructed = JOptionPane.YES_OPTION == JOptionPane.showConfirmDialog(null, msg, "Problem converting decks", JOptionPane.YES_NO_OPTION); allowDeleteUnsupportedConstructed = JOptionPane.YES_OPTION == JOptionPane.showConfirmDialog(null, msg, "Problem converting decks", JOptionPane.YES_NO_OPTION);
} }
} }
if( importedOk || allowDeleteUnsupportedConstructed ) if (importedOk || allowDeleteUnsupportedConstructed) {
f.delete(); f.delete();
}
break; break;
case Sealed: case Sealed:
boolean isAi = dh.getPlayerType() == PlayerType.COMPUTER; boolean isAi = dh.getPlayerType() == PlayerType.COMPUTER;
name = name.startsWith("AI_") ? name.replace("AI_", "") : name; name = name.startsWith("AI_") ? name.replace("AI_", "") : name;
Pair<DeckSet, MutablePair<File,File>> stored = sealedDecks.get(name); Pair<DeckSet, MutablePair<File, File>> stored = sealedDecks.get(name);
if( null == stored ) if (null == stored) {
stored = ImmutablePair.of(new DeckSet(name), MutablePair.of((File)null, (File)null)); stored = ImmutablePair.of(new DeckSet(name), MutablePair.of((File) null, (File) null));
}
Deck deck = Deck.fromLines(fileLines); Deck deck = Deck.fromLines(fileLines);
if( isAi ) { if (isAi) {
stored.getLeft().addAiDeck(deck); stored.getLeft().addAiDeck(deck);
stored.getRight().setRight(f); stored.getRight().setRight(f);
} else { } else {
stored.getLeft().setHumanDeck(deck); stored.getLeft().setHumanDeck(deck);
stored.getRight().setLeft(f); stored.getRight().setLeft(f);
} }
if( stored.getLeft().getHumanDeck() != null && !stored.getLeft().getAiDecks().isEmpty() ) { if (stored.getLeft().getHumanDeck() != null && !stored.getLeft().getAiDecks().isEmpty()) {
// have both parts of sealed deck, may convert // have both parts of sealed deck, may convert
sealed.add(stored.getLeft()); sealed.add(stored.getLeft());
stored.getRight().getLeft().delete(); stored.getRight().getLeft().delete();
stored.getRight().getRight().delete(); stored.getRight().getRight().delete();
// there stay only orphans // there stay only orphans
sealedDecks.remove(name); sealedDecks.remove(name);
} else } else {
sealedDecks.put(name, stored); sealedDecks.put(name, stored);
}
break; break;
} }
} }
// advise to kill orphaned decks // advise to kill orphaned decks
if( !sealedDecks.isEmpty() ) if (!sealedDecks.isEmpty()) {
{
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
for(Pair<DeckSet, MutablePair<File, File>> s : sealedDecks.values()) { for (Pair<DeckSet, MutablePair<File, File>> s : sealedDecks.values()) {
String missingPart = s.getRight().getLeft() == null ? "human" : "computer"; String missingPart = s.getRight().getLeft() == null ? "human" : "computer";
sb.append(String.format("Sealed deck '%s' has no matching '%s' deck.%n", s.getKey().getName(), missingPart)); sb.append(String.format("Sealed deck '%s' has no matching '%s' deck.%n", s.getKey().getName(), missingPart));
} }
sb.append(System.getProperty("line.separator")); sb.append(System.getProperty("line.separator"));
sb.append("May Forge delete these decks?"); sb.append("May Forge delete these decks?");
int response = JOptionPane.showConfirmDialog(null, sb.toString(), "Some of your sealed decks are orphaned", JOptionPane.YES_NO_OPTION); int response = JOptionPane.showConfirmDialog(null, sb.toString(), "Some of your sealed decks are orphaned", JOptionPane.YES_NO_OPTION);
if( response == JOptionPane.YES_OPTION ) if (response == JOptionPane.YES_OPTION) {
{ for (Pair<DeckSet, MutablePair<File, File>> s : sealedDecks.values()) {
for(Pair<DeckSet, MutablePair<File, File>> s : sealedDecks.values()) { if (s.getRight().getLeft() != null) { s.getRight().getLeft().delete(); }
if( s.getRight().getLeft() != null ) { s.getRight().getLeft().delete(); } if (s.getRight().getRight() != null) { s.getRight().getRight().delete(); }
if( s.getRight().getRight() != null ) { s.getRight().getRight().delete(); }
} }
} }
} }