У меня класс (MiddleMan) говорит с системой, и этот разговор инициализируется клиентами MiddleMan.
Если «разговор» успешно завершен, MiddleMan сгенерирует токен и вернет его своему клиенту.
Дизайн класса, который у меня есть на данный момент, выглядит следующим образом:
class MiddleMan{
private String token = null;
private String param1;
private String param2;
private String amount;
boolean isTalkSuccessful = false;
public MiddleMan(String param1, String param2){
this.amount = amount;
this.param1 = param1;
this.param2 = param2;
}
public String talk() throws ValidationException{
//a private method validates param1 and param2
validateParameters();
//talk to backend system;
isTalkSuccessful = talkToSystem();
}
Private void validateParameters() throws ValidationException {
}
private boolen talkToSystem(){
}
public boolean isTalkSuccessful(){
return isTalkSuccessful;
}
public String getToken() throws Exception{
if(isTalkSuccessful()){
return token;
}else{
throw new Exception("cannot return token because talk is not successful");
}
}
}
Это выглядит правильно для вас? Как бы вы его рефакторинг?