code: public static PhoneCountrySharedConstants create(final Locale plocale) {
      if (!CreatePhoneCountryConstantsClass.phoneCountryConstants.containsKey(plocale)) { // NOPMD
        synchronized (PhoneCountryConstantsImpl.class) {
          if (!CreatePhoneCountryConstantsClass.phoneCountryConstants.containsKey(plocale)) {
            CreatePhoneCountryConstantsClass.phoneCountryConstants.put(plocale,
                AbstractCreateClass.createPhoneCountryConstants(plocale));
          }
        }
      }
      return CreatePhoneCountryConstantsClass.phoneCountryConstants.get(plocale);
    }
docs: Instantiates a class via deferred binding.
  
  @param plocale language to create data for
  @return the new instance, which must be cast to the requested class