public int getLengthOfGeographicalAreaCode(PhoneNumber number) {
String regionCode = getRegionCodeForNumber(number);
if (!isValidRegionCode(regionCode)) {
return 0;
}
PhoneMetadata metadata = getMetadataForRegion(regionCode);
// If a country doesn't use a national prefix, and this number doesn't have an Italian leading
// zero, we assume it is a closed dialling plan with no area codes.
if (!metadata.hasNationalPrefix() && !number.isItalianLeadingZero()) {
return 0;
}
PhoneNumberType type = getNumberTypeHelper(getNationalSignificantNumber(number),
metadata);