Hi,
Thanks for the feedback.
I've made most of the suggested changes and will check in the code shortly. A
lot of your suggestions also apply to the existing mx validators.
> public static const: ERROR_CODE_WRONG_FORMAT:String = "wrongFormat";
Changed but you might want to note that the existing mx validators have these
hard coded.
>> Could this condition not be determined before getting to the start of the
>> loop (inner loop)
It was needed to be in the loop so that any formatting errors can be caught and
displayed.
> DECIMAL_DIGITS.indexOf(char) == -1
Again existing mx validators are written in this style but I like the
suggestion as it makes for more readable code.
It would probably make sense to move these methods up to the base class at some
point.
> combining the above two suggestions I can then glance at the
> validatingPostcode function and see quite quickly that it:
>
> for each format
> validates each character in the postcode
> holds the error
> converts the errors to results
I've made it close to that.
> There seems to be the opportunity to reduce the code here, as its seems to be
> 3 very similar blocks of code, could you extract this somewhere else and pass
> in the differences ?
Perhaps but I left it as it is. IMO changing actually adds more code and
doesn't really make it any easier to understand.
> private function getPreferredError():Object
> {
> errors.sortOn(ERROR_COUNT_FIELD, Array.NUMERIC);
> return errors[0];
> }
Again IMO replacing a one line of code with a function call (even a descriptive
one) doesn't make the code any more or less understandable.
> note: not that important, but also noticed a very minor inconsistency in the
> naming convention of the error type vs the errorCode and errorMessage.
Again just based on what existing mx validators had. :-)
Thanks,
Justin