- public int handleCommand(final Namespace ns, final Manager m) {
- if (m.isRegistered()) {
- System.err.println("User registration is already verified");
- return 1;
- }
+ public void handleCommand(final Namespace ns, final RegistrationManager m) throws CommandException {
+ var verificationCode = ns.getString("verification-code");
+ var pin = ns.getString("pin");
+
+ verify(m, verificationCode, pin);
+ }
+
+ @Override
+ public TypeReference<VerifyParams> getRequestType() {
+ return new TypeReference<>() {};
+ }
+
+ @Override
+ public List<OutputType> getSupportedOutputTypes() {
+ return List.of(OutputType.PLAIN_TEXT, OutputType.JSON);
+ }
+
+ @Override
+ public void handleCommand(
+ final VerifyParams request,
+ final RegistrationManager m,
+ final JsonWriter jsonWriter
+ ) throws CommandException {
+ verify(m, request.verificationCode(), request.pin());
+ }
+
+ private void verify(
+ final RegistrationManager m,
+ final String verificationCode,
+ final String pin
+ ) throws UserErrorException, IOErrorException {