package facade; import java.util.Collection; import java.util.HashMap; import domain.*; import infrastructure.Persistenz; public class FactorySystem { private Factory factory; private String factoryName; public FactorySystem(String factoryName){ this.factoryName = factoryName; if(Persistenz.existsSavedData(factoryName)){ try{ this.factory = (Factory) Persistenz.loadFactoryData(factoryName); } catch (Exception e) { System.out.println("Loading of old factory not possible"); System.out.println(e.getCause()); } }else{ this.factory = new Factory(); } } public String[] getAllRobots(){ Collection robots = factory.getRobotList(); String[] list = new String[robots.size()]; int i = 0; for(Robot r: robots){ list[i++] = r.toString(); } return list; } public boolean buildNewRobot(String name, int type){ boolean check = factory.buildNewRobot(name, type); if(check) { Persistenz.saveFactoryData(factory, factoryName); } return check; } }