* Copyright (c) 2014, Francis Galiegue (firstname.lastname@example.org)
* This software is dual-licensed under:
* - the Lesser General Public License (LGPL) version 3.0 or, at your option, any
* later version;
* - the Apache Software License (ASL) version 2.0.
* The text of this file and of both licenses is available at the root of this
* project or, if you have the jar distribution, in directory META-INF/, under
* the names LGPL-3.0.txt and ASL-2.0.txt respectively.
* Direct link to the sources:
* - LGPL 3.0: https://www.gnu.org/licenses/lgpl-3.0.txt
* - ASL 2.0: http://www.apache.org/licenses/LICENSE-2.0.txt
The draft says the phone MAY match E.123. Quite vague. Here we use Google'sas it is a library specialized in phone number recognition.
It will only chek if this is a potential phone number, not whether it is
actually valid for your country! If you really want that, you will probably
want to write your own
//TODO: more tests?
* The libphonenumber API doc says that no matter what region you put
* when validating national phone numbers, the number is not actually
* considered valid for a specific country without further
* verifications. International phone numbers MUST start with a
* "+" however, this is a constant.
* So, this is the only switching point: if it starts with a "+",
* check with the "no zone" specification, otherwise check with any
* country code.