/* * Copyright 2007 Sun Microsystems, Inc. * * This file is part of jVoiceBridge. * * jVoiceBridge is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation and distributed hereunder * to you. * * jVoiceBridge is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. * * Sun designates this particular file as subject to the "Classpath" * exception as provided by Sun in the License file that accompanied this * code. */ package com.sun.voip.server; public class PhoneNumberPrefix { private PhoneNumberPrefix() { } private static String[] locations = new String[] { /* Canada */ "CLG", "EDM", "HFX", "ISO", "MRK", "MRL", "NBR", "NOV", "OTW", "STF", "TNT", "VIC", "VNC", "WPG", /* United States */ "ABQ", "ACT", "ARL", "ASE", "ATL", "AUS", "BES", "BHM", "BLM", "BLV", "BOI", "BOS", "BRM", "BRT", "BUR", "BWI", "CAM", "CHA", "CHE", "CHI", "CIN", "CLT", "CMH", "CMI", "COS", "CRY", "CUP", "DAY", "DFW", "DOW", "DSM", "DWT", "EGO", "FLL", "FMT", "FPT", "HAR", "HKS", "HMP", "HNL", "HOU", "HRN", "HRT", "HSV", "IDP", "IND", "IRV", "ITA", "JAX", "KOP", "LAM", "LAS", "LAX", "LSV", "MAR", "MBS", "MEM", "MIL", "MKE", "MLB", "MOB", "MPK", "MTL", "MTV", "NGW", "NPV", "NSH", "NWK", "NYC", "OMA", "ONT", "ORL", "OVP", "PAL", "PHX", "PIT", "PLN", "PLT", "PMB", "PRD", "RAN", "RGL", "RIC", "RKV", "RSN", "SAC", "SAN", "SAT", "SCA", "SCO", "SCR", "SFL", "SFO", "SHM", "SJC", "SLB", "SLC", "SMF", "SMT", "STL", "SUN", "TAL", "TIM", "TPA", "TUL", "TUS", "UNC", "UNI", "VNN", "WAS", "WCV", "WES", "WHT", "WIC", "WYZ", /* Argentina */ "EZE", /* Brazil */ "BHZ", "BRA", "RIO", "SAO", /* Chile */ "SCH", /* Comlombia */ "BOG", /* Mexico */ "MEX", "MTY", /* Venezuela */ "CCS" }; public static String getPrefix(String location) { if (location == null) { return ""; } if (isInAmerica(Bridge.getBridgeLocation())) { if (isInAmerica(location)) { return ""; } return "70"; } if (!isInAmerica(location)) { return ""; } return "70"; } private static boolean isInAmerica(String location) { for (int i = 0; i < locations.length; i++) { if (locations[i].equalsIgnoreCase(location)) { return true; } } return false; } public static void main(String args[]) { if (args.length == 0) { System.out.println( "usage: java PhonePrefix <location> <location> ..."); System.exit(1); } for (int i = 0; i < args.length; i++) { String prefix = getPrefix(args[i]); if (prefix.equals("")) { System.out.println( "no prefix needed for location " + args[i]); } else { System.out.println( "prefix " + prefix + " needed for location " + args[i]); } } } }