51 lines
1.3 KiB
Java
51 lines
1.3 KiB
Java
package facade;
|
|
|
|
import domain.Factory;
|
|
import domain.Robot;
|
|
|
|
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);
|
|
System.out.println("Loading of old factory successful");
|
|
} catch (Exception e) {
|
|
System.out.println("Loading of old factory not possible");
|
|
System.out.println(e.getMessage());
|
|
}
|
|
}else{
|
|
this.factory = new Factory();
|
|
}
|
|
|
|
}
|
|
|
|
//provide robot attributes
|
|
public String[] getAllRobots(){
|
|
return factory.getRobotList();
|
|
}
|
|
//Creating a new robot
|
|
public boolean buildNewRobot(String name, int type) {
|
|
boolean check = factory.buildNewRobot(name, type);
|
|
if(check) {
|
|
try {
|
|
Persistenz.saveFactoryData(factory, factoryName);
|
|
}catch(Exception e){
|
|
System.out.println(e.getCause());
|
|
}
|
|
}
|
|
return check;
|
|
}
|
|
//provides a specific robot
|
|
public Robot searchForRobot(int id){
|
|
return factory.getRobotOfList(id);
|
|
}
|
|
|
|
}
|