PhoneNumberValidator + Test Changes:
Added no-arg constuctor required for Guice injection.
Added isoCountryCode setter; this field must be set before
validation.
Added validation of isoCountryCode.
Added missing country code test.
SwishValidator Changes:
SwishValidator now extends PhoneValidator.
Added no-arg constuctor required for Guice injection.
Set isoCountryCode = SE in constructor.
SwishForm Changes:
Sets Swish acct phone number to normalized phone number if
phone # validation is successful.
Replaced Logger declaration with @Slf4j annotation.
Formatted source.
Added 'validation.phone.missingCountryCode' property to i18n file.
Created new PhoneNumberValidator + Test. Validator hides
no arg constructor; public constructor requires two letter
ISO country code for validating inputs.
After successful validation, inputs are transformed into E.164
format and cached in a field, accessible via a getter method.
However, area and region codes are not checked for correctness.
End users are responsible for correctness of area/region codes.
Four i18n properties (validation.phone.*) were added to
displayStrings.properties
This is a partial fix for Issue #3042. The validator
will be integrated into the GUI if PR is approved & patch is
merged.
Question for Bisq devs:
Another new pkg protected class, CountryCallingCodes, contains
an immutable map of ISO country codes -> country calling codes;
it is the only non-validator class in its package. The map
declaration is too large to live in the PhoneNumberValidator class,
even after tweaking idea.properties in an attempt to prevent
the IDE from freezing. Is it OK to leave CountryCallingCodes
where it is, or is there a more appropriate home for it?
When running as DAO lite node, the following would get logged:
> INFO b.c.dao.node.full.RpcService: The value of rpchost is
> INFO b.c.dao.node.full.RpcService: Starting RPCService with btcd-cli4j
version 0.5.8.4 on 127.0.0.1:8332 with user null
So instead of logging it when instantiating the RPCService, log it when
setting up the service.