Не принимает по пункту: В методе execute() классов LoginCommand, WithdrawCommand используй вызовы соответствующих новых ресурсов. Рекомендация от ментора: Убедись, что метод execute() у LoginCommand работает с новым ResourceBundle.
Вроде все соблюдено. В чем трабл?
package com.javarush.task.task26.task2613.command;
import com.javarush.task.task26.task2613.ConsoleHelper;
import com.javarush.task.task26.task2613.CashMachine;
import com.javarush.task.task26.task2613.exception.InterruptOperationException;
import java.util.Locale;
import java.util.ResourceBundle;
public class LoginCommand implements Command {
private ResourceBundle validCreditCards = ResourceBundle.getBundle(CashMachine.class.getPackage().getName() + ".resources.verifiedCards", Locale.ENGLISH);
private ResourceBundle res = ResourceBundle.getBundle(CashMachine.class.getPackage().getName() + ".resources.login_en", Locale.ENGLISH);
@Override
public void execute() throws InterruptOperationException {
ConsoleHelper.writeMessage(res.getString("before"));
while (true)
{
ConsoleHelper.writeMessage(res.getString("specify.data"));
String cardNumber = ConsoleHelper.readString();
String pinCode = ConsoleHelper.readString();
if (validCreditCards.containsKey(cardNumber)) {
if (validCreditCards.getString(cardNumber).equals(pinCode))
ConsoleHelper.writeMessage(String.format(res.getString("success.format"), cardNumber));
else {
ConsoleHelper.writeMessage(String.format(res.getString("not.verified.format"), cardNumber));
ConsoleHelper.writeMessage(res.getString("try.again.or.exit"));
continue;
}
}
else {
ConsoleHelper.writeMessage(String.format(res.getString("not.verified.format"), cardNumber));
ConsoleHelper.writeMessage(res.getString("try.again.with.details"));
continue;
}
break;
}
}
}
package com.javarush.task.task26.task2613;
import com.javarush.task.task26.task2613.command.CommandExecutor;
import com.javarush.task.task26.task2613.exception.InterruptOperationException;
import java.util.Locale;
public class CashMachine {
public static void main(String[] args) {
Locale.setDefault(Locale.ENGLISH);
try {
Operation operation;
operation = Operation.LOGIN;
CommandExecutor.execute(operation);
do {
operation = ConsoleHelper.askOperation();
CommandExecutor.execute(operation);
} while (operation != Operation.EXIT);
} catch (InterruptOperationException e) {
ConsoleHelper.writeMessage("You have interrupted operation. Bye ...");
}
/*String currencyCode = ConsoleHelper.askCurrencyCode();
CurrencyManipulator currencyManipulator = CurrencyManipulatorFactory.getManipulatorByCurrencyCode(currencyCode);
*//*for (int i = 0; i < 3; i++) {
String[] denom = ConsoleHelper.getValidTwoDigits(currencyCode);
currencyManipulator.addAmount(Integer.parseInt(denom[0]), Integer.parseInt(denom[1]));
}
//System.out.println(currencyManipulator.getDenominations());
System.out.println(currencyManipulator.getCurrencyCode());*//*
System.out.println(currencyManipulator.getTotalAmount());*/
}
}