Number Lines: 2630 total Classes: 28 Abstract: 1 Subclasses: 20 Interfaces: 1 Interfaces Used: 9 Use of static ./src/config/ConfigurationLoader.java: private static ConfigurationLoader loader; ./src/config/ConfigurationLoader.java: public synchronized static ConfigurationLoader loader() { ./src/config/ConfigurationLoader.java: public synchronized static Configuration getConfig() { ./src/config/XMLParser.java: private static XPath XPATH_ENGINE = XPathFactory.newInstance().newXPath(); ./src/config/XMLParser.java: public static Document parse(String sourcePath) throws Exception { ./src/config/XMLParser.java: public static boolean validate(Document doc) throws Exception { ./src/model/CellGrid.java: public static List buildNonDefaultInitialCells(XMLParser parser) ./src/model/Hexagon.java:// public static boolean XYVertex = true; // true: x,y are the co-ords of the ./src/model/Hexagon.java:// private static int BORDERS = 50; // default number of pixels for the border. ./src/model/Hexagon.java:// private static double HEX_SIZE = 0; // length of one side ./src/model/Hexagon.java:// private static double HEX_SMALL_SIDE = 0; // short side of 30o triangle outside of each hex ./src/model/Hexagon.java:// private static double r = 0; // radius of inscribed circle (centre to middle of ./src/model/Hexagon.java:// private static double h = 0; // height. Distance between centres of two ./src/model/Hexagon.java:// public static void setXYasVertex(boolean b) { ./src/model/Hexagon.java:// public static void setBorders(int b) { ./src/model/Hexagon.java:// public static void setSide(int side) { ./src/model/Hexagon.java:// public static void setHeight(int height) { ./src/test/XMLConfigTest.java:import static org.junit.Assert.*; ./src/test/XMLConfigTest.java: private static Configuration config; ./src/test/XMLConfigTest.java: public static void onceExecutedBeforeAll() { ./src/utils/Utils.java: public static String getAttrFromFirstMatch(Document doc, String tag, String attr) { ./src/utils/Utils.java: public static String getAttrFromNode(Node n, String attr) { ./src/utils/Utils.java: public static List getAttrFromAllMatches(Document doc, String tag, String attr) { ./src/view/GameWorld.java: public static double SCENE_WIDTH = 800; ./src/view/GameWorld.java: public static double SCENE_HEIGHT = 500; ./src/view/GameWorld.java: public static double GRID_WIDTH = 400; ./src/view/GameWorld.java: public static double GRID_HEIGHT = 400; ./src/view/SliderCreator.java: public static boolean reset; Global instance variables Non-private instance variables ./src/model/CellGrid.java: //changed to protected so that the segregation simulation could see, not sure if that's good design Magic values ./src/config/XMLParser.java: if (queryMethod.equals("Xpath")) { ./src/config/XMLParser.java: if (queryMethod.equals("Xpath")) { ./src/config/XMLParser.java: // TODO (cx15) validate an XML, exception to front end if xml invalid ./src/model/CellGrid.java: if (parser.getItem("CellsMode").equals("enum")) { ./src/model/GameOfLifeSimulation.java: if(liveCount == 3){ ./src/model/GameOfLifeSimulation.java: else if(liveCount>=2 && liveCount <=3){ ./src/model/PredatorPreySimulation.java: if(currentCell.getFuturestate().equals("")){ ./src/model/PredatorPreySimulation.java: if(myCell.getFuturestate().equals("") && !myCell.getCurrentstate().equals(EMPTY)){ ./src/model/PredatorPreySimulation.java: if (neighbor.getCurrentstate().equals(FISH) && neighbor.getFuturestate().equals("")) { ./src/test/XMLConfigTest.java: if (s.getAttributes().containsKey("lifeTime")) { ./src/view/SliderCreator.java: if(displayName.toLowerCase().contains("row") || displayName.toLowerCase().contains("col")){ ./src/view/SliderCreator.java: if (displayName.contains("percent") || displayName.toLowerCase().contains("row") || displayName.toLowerCase().contains("col")) { ./src/view/SliderCreator.java: if (text.contains("percent")) { Use of Concrete List ./src/model/Cell.java: public ArrayList getNeighbors() { ./src/model/Cell.java: public void setNeighbors(ArrayList neighbors) { ./src/model/GameOfLifeSimulation.java: public int countCellsOfState(ArrayList currentNeighbors, String state){ ./src/model/RectangleNoDiagonals.java:// public ArrayList getNeighbors(RectangleNoDiagonals[][] grid) { ./src/model/RectangleWithDiagonals.java:// public ArrayList getNeighbors(RectangleWithDiagonals[][] grid) { Use of Concrete Map Use of Concrete Set Longest Methods 34 SegregationSimulation.updateFutureStates 34 PredatorPreySimulation.createGrid 31 MainView.createAllButtons 29 SegregationSimulation.createGrid 25 SliderCreator.SliderCreator 25 GameOfLifeSimulation.createGrid 24 Tester.start 22 GameOfLifeSimulation.updateCell 21 SegregationSimulation.updateCell 20 FireSimulation.updateCell Bad Exception Handling ./src/config/Configuration.java: e.printStackTrace(); ./src/config/ConfigurationLoader.java: e.printStackTrace(); ./src/config/XMLParser.java: e.printStackTrace(); ./src/test/XMLConfigTest.java: e.printStackTrace(); ./src/view/Main.java: e.printStackTrace(); ./src/view/MainView.java: e1.printStackTrace(); ./src/view/MainView.java: e1.printStackTrace(); ./src/view/MainView.java: e1.printStackTrace();