Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright 2004-2005 Revolution Systems Inc.
   * 
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   * 
   *      http://www.apache.org/licenses/LICENSE-2.0
   * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 package com.revolsys.ui.html.domain;
 
 import java.util.List;
 import java.util.Map;

Author(s):
Paul Austin
Version:
1.0
 
 public final class Country implements Serializable {
  
The unique serial version UID for the class.
 
   private static final long serialVersionUID = -3530333279679048002L;
 
   private static List<Countrycountries;
 
   private static Map<StringCountrycountryCodeAlpha2Map = new HashMap<StringCountry>();
 
   private static Map<StringCountrycountryPhoneCodeMap = new HashMap<StringCountry>();
 
   private static Map<StringCountrycountryNameMap = new HashMap<StringCountry>();
 
   private short codeNum;
 
   private String codeAplha2;
 
   private String codeAlpha3;
 
   private String name;
 
   private String phoneCode;
 
   private String phoneRegEx;
 
   private String phoneNationalFormat;
 
 
   static {
     loadCountryCodes();
   }

  
Load the list of countries from the com.revolsys.iaf.core.domain.CountryCodes.txt resource.
 
   private static void loadCountryCodes() {
     if ( == null) {
        = new ArrayList<Country>();
       InputStream in = Country.class.getResourceAsStream("CountryCodes.txt");
       if (in != null) {
         BufferedReader lineReader = new BufferedReader(
           new InputStreamReader(in));
         try {
           String line = lineReader.readLine();
           for (line = lineReader.readLine(); line != nullline = lineReader.readLine()) {
             StringTokenizer columns = new StringTokenizer(line"\t");
             String alpha2 = columns.nextToken();
             String alpha3 = columns.nextToken();
             short num = Short.parseShort(columns.nextToken());
             String name = columns.nextToken();
             String phoneCode = null;
             if (columns.hasMoreTokens()) {
               phoneCode = columns.nextToken();
             }
             String phoneRegEx = null;
             if (columns.hasMoreTokens()) {
               phoneRegEx = columns.nextToken();
             }
             String phoneNationalFormat = null;
             if (columns.hasMoreTokens()) {
               phoneNationalFormat = columns.nextToken();
             }
             String phoneInternationalFormat = null;
             if (columns.hasMoreTokens()) {
               phoneInternationalFormat = columns.nextToken();
             }
            Country country = new Country(numalpha2alpha3namephoneCode,
              phoneRegExphoneNationalFormatphoneInternationalFormat);
            .add(country);
            .put(country.getCodeAplha2(), country);
            .put(name.toUpperCase(), country);
            .put(phoneCodecountry);
          }
        } catch (IOException e) {
          e.printStackTrace();
        }
      }
    }
  }

  
Get the Country by the ISO 2 character code (ignoring case).

Parameters:
codeAplha2 The ISO 2 character code.
Returns:
The country or null if not found.
  public static Country getCountry(final String codeAplha2) {
    if (codeAplha2 == null) {
      return null;
    }
    return .get(codeAplha2.toUpperCase());
  }

  
Get a Country by it's name (ignoring case).

Parameters:
name The country name.
Returns:
The country or null if not found.
  public static Country getCountryByName(final String name) {
    if (name == null) {
      return null;
    }
    return .get(name.toUpperCase());
  }

  
Get a Country by it's ITU-T phone country code.

Parameters:
code The ITU-T phone country code.
Returns:
The country or null if not found.
  public static Country getCountryByPhoneCode(final String code) {
    if (code == null) {
      return null;
    }
    return .get(code);
  }

  
Get a Country for a phone number.

Parameters:
phoneNumber The normalized phone number.
Returns:
The country or null if not found.
  public static Country getCountryByPhoneNumber(final String phoneNumber) {
    if (phoneNumber != null && phoneNumber.length() > 0) {
      for (int i = 1; i <= 3; i++) {
        String phoneCode = phoneNumber.substring(0, i);
        Country country = .get(phoneCode);
        if (country != null) {
          return country;
        }
      }
    }
    return null;
  }

  
Get the list of all countries.

Returns:
The list of countries.
  public static List<CountrygetCountries() {
    return ;
  }
  private Country(final short codeNumfinal String codeAplha2,
    final String codeAlpha3final String name) {
    this. = codeNum;
    this. = codeAplha2.toUpperCase().intern();
    this. = codeAlpha3.toUpperCase().intern();
    this. = name.intern();
  }
  private Country(final short codeNumfinal String codeAplha2,
    final String codeAlpha3final String namefinal String phoneCode,
    final String phoneRegExfinal String phoneNationalFormat,
    final String phoneInternationalFormat) {
    this. = codeNum;
    this. = codeAplha2.toUpperCase().intern();
    this. = codeAlpha3.toUpperCase().intern();
    this. = name.intern();
    this. = phoneCode;
    this. = phoneRegEx;
    this. = phoneNationalFormat;
    this. = phoneInternationalFormat;
  }

  

Returns:
  public String getCodeAlpha3() {
    return ;
  }

  

Returns:
  public String getCodeAplha2() {
    return ;
  }

  

Returns:
  public short getCodeNum() {
    return ;
  }

  

Returns:
  public String getName() {
    return ;
  }

  

Returns:
Returns the phoneCode.
  public String getPhoneCode() {
    return ;
  }

  

Returns:
Returns the phoneInternationalFormat.
  }

  

Returns:
Returns the phoneNationalFormat.
    return ;
  }

  

Returns:
Returns the phoneRegEx.
  public String getPhoneRegEx() {
    return ;
  }
  public String toString() {
    return ;
  }
New to GrepCode? Check out our FAQ X