Java 类java.text.spi.BreakIteratorProvider 实例源码

项目:OpenJSharp    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter, Locale locale, int type) {
    BreakIteratorProvider breakIteratorProvider = adapter.getBreakIteratorProvider();
    BreakIterator iterator = null;
    switch (type) {
    case CHARACTER_INDEX:
        iterator = breakIteratorProvider.getCharacterInstance(locale);
        break;
    case WORD_INDEX:
        iterator = breakIteratorProvider.getWordInstance(locale);
        break;
    case LINE_INDEX:
        iterator = breakIteratorProvider.getLineInstance(locale);
        break;
    case SENTENCE_INDEX:
        iterator = breakIteratorProvider.getSentenceInstance(locale);
        break;
    }
    return iterator;
}
项目:jdk8u-jdk    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter, Locale locale, int type) {
    BreakIteratorProvider breakIteratorProvider = adapter.getBreakIteratorProvider();
    BreakIterator iterator = null;
    switch (type) {
    case CHARACTER_INDEX:
        iterator = breakIteratorProvider.getCharacterInstance(locale);
        break;
    case WORD_INDEX:
        iterator = breakIteratorProvider.getWordInstance(locale);
        break;
    case LINE_INDEX:
        iterator = breakIteratorProvider.getLineInstance(locale);
        break;
    case SENTENCE_INDEX:
        iterator = breakIteratorProvider.getSentenceInstance(locale);
        break;
    }
    return iterator;
}
项目:openjdk-jdk10    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter, Locale locale, int type) {
    BreakIteratorProvider breakIteratorProvider = adapter.getBreakIteratorProvider();
    BreakIterator iterator = null;
    switch (type) {
    case CHARACTER_INDEX:
        iterator = breakIteratorProvider.getCharacterInstance(locale);
        break;
    case WORD_INDEX:
        iterator = breakIteratorProvider.getWordInstance(locale);
        break;
    case LINE_INDEX:
        iterator = breakIteratorProvider.getLineInstance(locale);
        break;
    case SENTENCE_INDEX:
        iterator = breakIteratorProvider.getSentenceInstance(locale);
        break;
    }
    return iterator;
}
项目:openjdk-jdk10    文件:JRELocaleProviderAdapter.java   
@Override
public BreakIteratorProvider getBreakIteratorProvider() {
    if (breakIteratorProvider == null) {
        BreakIteratorProvider provider = AccessController.doPrivileged(
            (PrivilegedAction<BreakIteratorProvider>) () ->
                new BreakIteratorProviderImpl(
                    getAdapterType(),
                    getLanguageTagSet("FormatData")));

        synchronized (this) {
            if (breakIteratorProvider == null) {
                breakIteratorProvider = provider;
            }
        }
    }
    return breakIteratorProvider;
}
项目:openjdk9    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter, Locale locale, int type) {
    BreakIteratorProvider breakIteratorProvider = adapter.getBreakIteratorProvider();
    BreakIterator iterator = null;
    switch (type) {
    case CHARACTER_INDEX:
        iterator = breakIteratorProvider.getCharacterInstance(locale);
        break;
    case WORD_INDEX:
        iterator = breakIteratorProvider.getWordInstance(locale);
        break;
    case LINE_INDEX:
        iterator = breakIteratorProvider.getLineInstance(locale);
        break;
    case SENTENCE_INDEX:
        iterator = breakIteratorProvider.getSentenceInstance(locale);
        break;
    }
    return iterator;
}
项目:openjdk9    文件:JRELocaleProviderAdapter.java   
@Override
public BreakIteratorProvider getBreakIteratorProvider() {
    if (breakIteratorProvider == null) {
        BreakIteratorProvider provider = AccessController.doPrivileged(
            (PrivilegedAction<BreakIteratorProvider>) () ->
                new BreakIteratorProviderImpl(
                    getAdapterType(),
                    getLanguageTagSet("FormatData")));

        synchronized (this) {
            if (breakIteratorProvider == null) {
                breakIteratorProvider = provider;
            }
        }
    }
    return breakIteratorProvider;
}
项目:Java8CN    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter, Locale locale, int type) {
    BreakIteratorProvider breakIteratorProvider = adapter.getBreakIteratorProvider();
    BreakIterator iterator = null;
    switch (type) {
    case CHARACTER_INDEX:
        iterator = breakIteratorProvider.getCharacterInstance(locale);
        break;
    case WORD_INDEX:
        iterator = breakIteratorProvider.getWordInstance(locale);
        break;
    case LINE_INDEX:
        iterator = breakIteratorProvider.getLineInstance(locale);
        break;
    case SENTENCE_INDEX:
        iterator = breakIteratorProvider.getSentenceInstance(locale);
        break;
    }
    return iterator;
}
项目:NonDex    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter, Locale locale, int type) {
    BreakIteratorProvider breakIteratorProvider = adapter.getBreakIteratorProvider();
    BreakIterator iterator = null;
    switch (type) {
    case CHARACTER_INDEX:
        iterator = breakIteratorProvider.getCharacterInstance(locale);
        break;
    case WORD_INDEX:
        iterator = breakIteratorProvider.getWordInstance(locale);
        break;
    case LINE_INDEX:
        iterator = breakIteratorProvider.getLineInstance(locale);
        break;
    case SENTENCE_INDEX:
        iterator = breakIteratorProvider.getSentenceInstance(locale);
        break;
    }
    return iterator;
}
项目:jdk8u_jdk    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter, Locale locale, int type) {
    BreakIteratorProvider breakIteratorProvider = adapter.getBreakIteratorProvider();
    BreakIterator iterator = null;
    switch (type) {
    case CHARACTER_INDEX:
        iterator = breakIteratorProvider.getCharacterInstance(locale);
        break;
    case WORD_INDEX:
        iterator = breakIteratorProvider.getWordInstance(locale);
        break;
    case LINE_INDEX:
        iterator = breakIteratorProvider.getLineInstance(locale);
        break;
    case SENTENCE_INDEX:
        iterator = breakIteratorProvider.getSentenceInstance(locale);
        break;
    }
    return iterator;
}
项目:lookaside_java-1.8.0-openjdk    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter, Locale locale, int type) {
    BreakIteratorProvider breakIteratorProvider = adapter.getBreakIteratorProvider();
    BreakIterator iterator = null;
    switch (type) {
    case CHARACTER_INDEX:
        iterator = breakIteratorProvider.getCharacterInstance(locale);
        break;
    case WORD_INDEX:
        iterator = breakIteratorProvider.getWordInstance(locale);
        break;
    case LINE_INDEX:
        iterator = breakIteratorProvider.getLineInstance(locale);
        break;
    case SENTENCE_INDEX:
        iterator = breakIteratorProvider.getSentenceInstance(locale);
        break;
    }
    return iterator;
}
项目:javify    文件:BreakIterator.java   
/**
 * This method returns an instance of <code>BreakIterator</code> that will
 * iterate over characters as defined in the specified locale.
 *
 * @param locale The desired locale.
 *
 * @return A <code>BreakIterator</code> instance for the specified locale.
 */
public static BreakIterator getCharacterInstance (Locale locale)
{
  BreakIterator r = getInstance("CharacterIterator", locale);
  if (r != null)
    return r;
  for (BreakIteratorProvider p :
         ServiceLoader.load(BreakIteratorProvider.class))
    {
      for (Locale loc : p.getAvailableLocales())
        {
          if (loc.equals(locale))
            {
              BreakIterator bi = p.getCharacterInstance(locale);
              if (bi != null)
                return bi;
              break;
            }
        }
    }
  if (locale.equals(Locale.ROOT))
    return new CharacterBreakIterator();
  return getCharacterInstance(LocaleHelper.getFallbackLocale(locale));
}
项目:javify    文件:BreakIterator.java   
/**
 * This method returns an instance of <code>BreakIterator</code> that will
 * iterate over line breaks as defined in the specified locale.
 *
 * @param locale The desired locale.
 *
 * @return A <code>BreakIterator</code> instance for the default locale.
 */
public static BreakIterator getLineInstance (Locale locale)
{
  BreakIterator r = getInstance ("LineIterator", locale);
  if (r != null)
    return r;
  for (BreakIteratorProvider p :
         ServiceLoader.load(BreakIteratorProvider.class))
    {
      for (Locale loc : p.getAvailableLocales())
        {
          if (loc.equals(locale))
            {
              BreakIterator bi = p.getLineInstance(locale);
              if (bi != null)
                return bi;
              break;
            }
        }
    }
  if (locale.equals(Locale.ROOT))
    return new LineBreakIterator();
  return getLineInstance(LocaleHelper.getFallbackLocale(locale));
}
项目:javify    文件:BreakIterator.java   
/**
 * This method returns an instance of <code>BreakIterator</code> that will
 * iterate over sentences as defined in the specified locale.
 *
 * @param locale The desired locale.
 *
 * @return A <code>BreakIterator</code> instance for the default locale.
 */
public static BreakIterator getSentenceInstance (Locale locale)
{
  BreakIterator r = getInstance ("SentenceIterator", locale);
  if (r != null)
    return r;
  for (BreakIteratorProvider p :
         ServiceLoader.load(BreakIteratorProvider.class))
    {
      for (Locale loc : p.getAvailableLocales())
        {
          if (loc.equals(locale))
            {
              BreakIterator bi = p.getSentenceInstance(locale);
              if (bi != null)
                return bi;
              break;
            }
        }
    }
  if (locale.equals(Locale.ROOT))
    return new SentenceBreakIterator();
  return getSentenceInstance(LocaleHelper.getFallbackLocale(locale));
}
项目:javify    文件:BreakIterator.java   
/**
 * This method returns an instance of <code>BreakIterator</code> that will
 * iterate over words as defined in the specified locale.
 *
 * @param locale The desired locale.
 *
 * @return A <code>BreakIterator</code> instance for the default locale.
 */
public static BreakIterator getWordInstance (Locale locale)
{
  BreakIterator r = getInstance ("WordIterator", locale);
  if (r != null)
    return r;
  for (BreakIteratorProvider p :
         ServiceLoader.load(BreakIteratorProvider.class))
    {
      for (Locale loc : p.getAvailableLocales())
        {
          if (loc.equals(locale))
            {
              BreakIterator bi = p.getWordInstance(locale);
              if (bi != null)
                return bi;
              break;
            }
        }
    }
  if (locale.equals(Locale.ROOT))
    return new WordBreakIterator();
  return getWordInstance(LocaleHelper.getFallbackLocale(locale));
}
项目:jvm-stm    文件:BreakIterator.java   
/**
  * This method returns an instance of <code>BreakIterator</code> that will
  * iterate over characters as defined in the specified locale.
  *
  * @param locale The desired locale.
  *
  * @return A <code>BreakIterator</code> instance for the specified locale.
  */
 public static BreakIterator getCharacterInstance (Locale locale)
 {
   BreakIterator r = getInstance("CharacterIterator", locale);
   if (r != null)
     return r;
   for (BreakIteratorProvider p :
   ServiceLoader.load(BreakIteratorProvider.class))
     {
for (Locale loc : p.getAvailableLocales())
  {
    if (loc.equals(locale))
      {
    BreakIterator bi = p.getCharacterInstance(locale);
    if (bi != null)
      return bi;
    break;
      }
  }
     }
   if (locale.equals(Locale.ROOT))
     return new CharacterBreakIterator();
   return getCharacterInstance(LocaleHelper.getFallbackLocale(locale));
 }
项目:jvm-stm    文件:BreakIterator.java   
/**
  * This method returns an instance of <code>BreakIterator</code> that will
  * iterate over line breaks as defined in the specified locale.
  *
  * @param locale The desired locale.
  *
  * @return A <code>BreakIterator</code> instance for the default locale.
  */
 public static BreakIterator getLineInstance (Locale locale)
 {
   BreakIterator r = getInstance ("LineIterator", locale);
   if (r != null)
     return r;
   for (BreakIteratorProvider p :
   ServiceLoader.load(BreakIteratorProvider.class))
     {
for (Locale loc : p.getAvailableLocales())
  {
    if (loc.equals(locale))
      {
    BreakIterator bi = p.getLineInstance(locale);
    if (bi != null)
      return bi;
    break;
      }
  }
     }
   if (locale.equals(Locale.ROOT))
     return new LineBreakIterator();
   return getLineInstance(LocaleHelper.getFallbackLocale(locale));
 }
项目:jvm-stm    文件:BreakIterator.java   
/**
  * This method returns an instance of <code>BreakIterator</code> that will
  * iterate over sentences as defined in the specified locale.
  *
  * @param locale The desired locale.
  *
  * @return A <code>BreakIterator</code> instance for the default locale.
  */
 public static BreakIterator getSentenceInstance (Locale locale)
 {
   BreakIterator r = getInstance ("SentenceIterator", locale);
   if (r != null)
     return r;
   for (BreakIteratorProvider p :
   ServiceLoader.load(BreakIteratorProvider.class))
     {
for (Locale loc : p.getAvailableLocales())
  {
    if (loc.equals(locale))
      {
    BreakIterator bi = p.getSentenceInstance(locale);
    if (bi != null)
      return bi;
    break;
      }
  }
     }
   if (locale.equals(Locale.ROOT))
     return new SentenceBreakIterator();
   return getSentenceInstance(LocaleHelper.getFallbackLocale(locale));
 }
项目:jvm-stm    文件:BreakIterator.java   
/**
  * This method returns an instance of <code>BreakIterator</code> that will
  * iterate over words as defined in the specified locale.  
  *
  * @param locale The desired locale.
  *
  * @return A <code>BreakIterator</code> instance for the default locale.
  */
 public static BreakIterator getWordInstance (Locale locale)
 {
   BreakIterator r = getInstance ("WordIterator", locale);
   if (r != null)
     return r;
   for (BreakIteratorProvider p :
   ServiceLoader.load(BreakIteratorProvider.class))
     {
for (Locale loc : p.getAvailableLocales())
  {
    if (loc.equals(locale))
      {
    BreakIterator bi = p.getWordInstance(locale);
    if (bi != null)
      return bi;
    break;
      }
  }
     }
   if (locale.equals(Locale.ROOT))
     return new WordBreakIterator();
   return getWordInstance(LocaleHelper.getFallbackLocale(locale));
 }
项目:VarJ    文件:BreakIterator.java   
public BreakIterator getObject(BreakIteratorProvider breakIteratorProvider, 
                              Locale locale, 
                              String key,
                              Object... params) {
          assert params.length == 1;

   switch ((Integer)params[0]) {
   case CHARACTER_INDEX:
return breakIteratorProvider.getCharacterInstance(locale);
   case WORD_INDEX:
return breakIteratorProvider.getWordInstance(locale);
   case LINE_INDEX:
return breakIteratorProvider.getLineInstance(locale);
          case SENTENCE_INDEX:
              return breakIteratorProvider.getSentenceInstance(locale);
          default:
assert false : "should not happen";
   }
          return null;
      }
项目:jdk-1.7-annotated    文件:BreakIterator.java   
public BreakIterator getObject(BreakIteratorProvider breakIteratorProvider,
                        Locale locale,
                        String key,
                        Object... params) {
    assert params.length == 1;

    switch ((Integer)params[0]) {
    case CHARACTER_INDEX:
        return breakIteratorProvider.getCharacterInstance(locale);
    case WORD_INDEX:
        return breakIteratorProvider.getWordInstance(locale);
    case LINE_INDEX:
        return breakIteratorProvider.getLineInstance(locale);
    case SENTENCE_INDEX:
        return breakIteratorProvider.getSentenceInstance(locale);
    default:
        assert false : "should not happen";
    }
    return null;
}
项目:infobip-open-jdk-8    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter, Locale locale, int type) {
    BreakIteratorProvider breakIteratorProvider = adapter.getBreakIteratorProvider();
    BreakIterator iterator = null;
    switch (type) {
    case CHARACTER_INDEX:
        iterator = breakIteratorProvider.getCharacterInstance(locale);
        break;
    case WORD_INDEX:
        iterator = breakIteratorProvider.getWordInstance(locale);
        break;
    case LINE_INDEX:
        iterator = breakIteratorProvider.getLineInstance(locale);
        break;
    case SENTENCE_INDEX:
        iterator = breakIteratorProvider.getSentenceInstance(locale);
        break;
    }
    return iterator;
}
项目:jdk8u-dev-jdk    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter, Locale locale, int type) {
    BreakIteratorProvider breakIteratorProvider = adapter.getBreakIteratorProvider();
    BreakIterator iterator = null;
    switch (type) {
    case CHARACTER_INDEX:
        iterator = breakIteratorProvider.getCharacterInstance(locale);
        break;
    case WORD_INDEX:
        iterator = breakIteratorProvider.getWordInstance(locale);
        break;
    case LINE_INDEX:
        iterator = breakIteratorProvider.getLineInstance(locale);
        break;
    case SENTENCE_INDEX:
        iterator = breakIteratorProvider.getSentenceInstance(locale);
        break;
    }
    return iterator;
}
项目:jdk7-jdk    文件:BreakIterator.java   
public BreakIterator getObject(BreakIteratorProvider breakIteratorProvider,
                        Locale locale,
                        String key,
                        Object... params) {
    assert params.length == 1;

    switch ((Integer)params[0]) {
    case CHARACTER_INDEX:
        return breakIteratorProvider.getCharacterInstance(locale);
    case WORD_INDEX:
        return breakIteratorProvider.getWordInstance(locale);
    case LINE_INDEX:
        return breakIteratorProvider.getLineInstance(locale);
    case SENTENCE_INDEX:
        return breakIteratorProvider.getSentenceInstance(locale);
    default:
        assert false : "should not happen";
    }
    return null;
}
项目:openjdk-source-code-learn    文件:BreakIterator.java   
public BreakIterator getObject(BreakIteratorProvider breakIteratorProvider,
                        Locale locale,
                        String key,
                        Object... params) {
    assert params.length == 1;

    switch ((Integer)params[0]) {
    case CHARACTER_INDEX:
        return breakIteratorProvider.getCharacterInstance(locale);
    case WORD_INDEX:
        return breakIteratorProvider.getWordInstance(locale);
    case LINE_INDEX:
        return breakIteratorProvider.getLineInstance(locale);
    case SENTENCE_INDEX:
        return breakIteratorProvider.getSentenceInstance(locale);
    default:
        assert false : "should not happen";
    }
    return null;
}
项目:OLD-OpenJDK8    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter, Locale locale, int type) {
    BreakIteratorProvider breakIteratorProvider = adapter.getBreakIteratorProvider();
    BreakIterator iterator = null;
    switch (type) {
    case CHARACTER_INDEX:
        iterator = breakIteratorProvider.getCharacterInstance(locale);
        break;
    case WORD_INDEX:
        iterator = breakIteratorProvider.getWordInstance(locale);
        break;
    case LINE_INDEX:
        iterator = breakIteratorProvider.getLineInstance(locale);
        break;
    case SENTENCE_INDEX:
        iterator = breakIteratorProvider.getSentenceInstance(locale);
        break;
    }
    return iterator;
}
项目:JamVM-PH    文件:BreakIterator.java   
/**
  * This method returns an instance of <code>BreakIterator</code> that will
  * iterate over characters as defined in the specified locale.
  *
  * @param locale The desired locale.
  *
  * @return A <code>BreakIterator</code> instance for the specified locale.
  */
 public static BreakIterator getCharacterInstance (Locale locale)
 {
   BreakIterator r = getInstance("CharacterIterator", locale);
   if (r != null)
     return r;
   for (BreakIteratorProvider p :
   ServiceLoader.load(BreakIteratorProvider.class))
     {
for (Locale loc : p.getAvailableLocales())
  {
    if (loc.equals(locale))
      {
    BreakIterator bi = p.getCharacterInstance(locale);
    if (bi != null)
      return bi;
    break;
      }
  }
     }
   if (locale.equals(Locale.ROOT))
     return new CharacterBreakIterator();
   return getCharacterInstance(LocaleHelper.getFallbackLocale(locale));
 }
项目:JamVM-PH    文件:BreakIterator.java   
/**
  * This method returns an instance of <code>BreakIterator</code> that will
  * iterate over line breaks as defined in the specified locale.
  *
  * @param locale The desired locale.
  *
  * @return A <code>BreakIterator</code> instance for the default locale.
  */
 public static BreakIterator getLineInstance (Locale locale)
 {
   BreakIterator r = getInstance ("LineIterator", locale);
   if (r != null)
     return r;
   for (BreakIteratorProvider p :
   ServiceLoader.load(BreakIteratorProvider.class))
     {
for (Locale loc : p.getAvailableLocales())
  {
    if (loc.equals(locale))
      {
    BreakIterator bi = p.getLineInstance(locale);
    if (bi != null)
      return bi;
    break;
      }
  }
     }
   if (locale.equals(Locale.ROOT))
     return new LineBreakIterator();
   return getLineInstance(LocaleHelper.getFallbackLocale(locale));
 }
项目:JamVM-PH    文件:BreakIterator.java   
/**
  * This method returns an instance of <code>BreakIterator</code> that will
  * iterate over sentences as defined in the specified locale.
  *
  * @param locale The desired locale.
  *
  * @return A <code>BreakIterator</code> instance for the default locale.
  */
 public static BreakIterator getSentenceInstance (Locale locale)
 {
   BreakIterator r = getInstance ("SentenceIterator", locale);
   if (r != null)
     return r;
   for (BreakIteratorProvider p :
   ServiceLoader.load(BreakIteratorProvider.class))
     {
for (Locale loc : p.getAvailableLocales())
  {
    if (loc.equals(locale))
      {
    BreakIterator bi = p.getSentenceInstance(locale);
    if (bi != null)
      return bi;
    break;
      }
  }
     }
   if (locale.equals(Locale.ROOT))
     return new SentenceBreakIterator();
   return getSentenceInstance(LocaleHelper.getFallbackLocale(locale));
 }
项目:JamVM-PH    文件:BreakIterator.java   
/**
  * This method returns an instance of <code>BreakIterator</code> that will
  * iterate over words as defined in the specified locale.  
  *
  * @param locale The desired locale.
  *
  * @return A <code>BreakIterator</code> instance for the default locale.
  */
 public static BreakIterator getWordInstance (Locale locale)
 {
   BreakIterator r = getInstance ("WordIterator", locale);
   if (r != null)
     return r;
   for (BreakIteratorProvider p :
   ServiceLoader.load(BreakIteratorProvider.class))
     {
for (Locale loc : p.getAvailableLocales())
  {
    if (loc.equals(locale))
      {
    BreakIterator bi = p.getWordInstance(locale);
    if (bi != null)
      return bi;
    break;
      }
  }
     }
   if (locale.equals(Locale.ROOT))
     return new WordBreakIterator();
   return getWordInstance(LocaleHelper.getFallbackLocale(locale));
 }
项目:openjdk-jdk7u-jdk    文件:BreakIterator.java   
public BreakIterator getObject(BreakIteratorProvider breakIteratorProvider,
                        Locale locale,
                        String key,
                        Object... params) {
    assert params.length == 1;

    switch ((Integer)params[0]) {
    case CHARACTER_INDEX:
        return breakIteratorProvider.getCharacterInstance(locale);
    case WORD_INDEX:
        return breakIteratorProvider.getWordInstance(locale);
    case LINE_INDEX:
        return breakIteratorProvider.getLineInstance(locale);
    case SENTENCE_INDEX:
        return breakIteratorProvider.getSentenceInstance(locale);
    default:
        assert false : "should not happen";
    }
    return null;
}
项目:classpath    文件:BreakIterator.java   
/**
 * This method returns an instance of <code>BreakIterator</code> that will
 * iterate over characters as defined in the specified locale.
 *
 * @param locale The desired locale.
 *
 * @return A <code>BreakIterator</code> instance for the specified locale.
 */
public static BreakIterator getCharacterInstance (Locale locale)
{
  BreakIterator r = getInstance("CharacterIterator", locale);
  if (r != null)
    return r;
  for (BreakIteratorProvider p :
         ServiceLoader.load(BreakIteratorProvider.class))
    {
      for (Locale loc : p.getAvailableLocales())
        {
          if (loc.equals(locale))
            {
              BreakIterator bi = p.getCharacterInstance(locale);
              if (bi != null)
                return bi;
              break;
            }
        }
    }
  if (locale.equals(Locale.ROOT))
    return new CharacterBreakIterator();
  return getCharacterInstance(LocaleHelper.getFallbackLocale(locale));
}
项目:classpath    文件:BreakIterator.java   
/**
 * This method returns an instance of <code>BreakIterator</code> that will
 * iterate over line breaks as defined in the specified locale.
 *
 * @param locale The desired locale.
 *
 * @return A <code>BreakIterator</code> instance for the default locale.
 */
public static BreakIterator getLineInstance (Locale locale)
{
  BreakIterator r = getInstance ("LineIterator", locale);
  if (r != null)
    return r;
  for (BreakIteratorProvider p :
         ServiceLoader.load(BreakIteratorProvider.class))
    {
      for (Locale loc : p.getAvailableLocales())
        {
          if (loc.equals(locale))
            {
              BreakIterator bi = p.getLineInstance(locale);
              if (bi != null)
                return bi;
              break;
            }
        }
    }
  if (locale.equals(Locale.ROOT))
    return new LineBreakIterator();
  return getLineInstance(LocaleHelper.getFallbackLocale(locale));
}
项目:classpath    文件:BreakIterator.java   
/**
 * This method returns an instance of <code>BreakIterator</code> that will
 * iterate over sentences as defined in the specified locale.
 *
 * @param locale The desired locale.
 *
 * @return A <code>BreakIterator</code> instance for the default locale.
 */
public static BreakIterator getSentenceInstance (Locale locale)
{
  BreakIterator r = getInstance ("SentenceIterator", locale);
  if (r != null)
    return r;
  for (BreakIteratorProvider p :
         ServiceLoader.load(BreakIteratorProvider.class))
    {
      for (Locale loc : p.getAvailableLocales())
        {
          if (loc.equals(locale))
            {
              BreakIterator bi = p.getSentenceInstance(locale);
              if (bi != null)
                return bi;
              break;
            }
        }
    }
  if (locale.equals(Locale.ROOT))
    return new SentenceBreakIterator();
  return getSentenceInstance(LocaleHelper.getFallbackLocale(locale));
}
项目:classpath    文件:BreakIterator.java   
/**
 * This method returns an instance of <code>BreakIterator</code> that will
 * iterate over words as defined in the specified locale.
 *
 * @param locale The desired locale.
 *
 * @return A <code>BreakIterator</code> instance for the default locale.
 */
public static BreakIterator getWordInstance (Locale locale)
{
  BreakIterator r = getInstance ("WordIterator", locale);
  if (r != null)
    return r;
  for (BreakIteratorProvider p :
         ServiceLoader.load(BreakIteratorProvider.class))
    {
      for (Locale loc : p.getAvailableLocales())
        {
          if (loc.equals(locale))
            {
              BreakIterator bi = p.getWordInstance(locale);
              if (bi != null)
                return bi;
              break;
            }
        }
    }
  if (locale.equals(Locale.ROOT))
    return new WordBreakIterator();
  return getWordInstance(LocaleHelper.getFallbackLocale(locale));
}
项目:openjdk-icedtea7    文件:BreakIterator.java   
public BreakIterator getObject(BreakIteratorProvider breakIteratorProvider,
                        Locale locale,
                        String key,
                        Object... params) {
    assert params.length == 1;

    switch ((Integer)params[0]) {
    case CHARACTER_INDEX:
        return breakIteratorProvider.getCharacterInstance(locale);
    case WORD_INDEX:
        return breakIteratorProvider.getWordInstance(locale);
    case LINE_INDEX:
        return breakIteratorProvider.getLineInstance(locale);
    case SENTENCE_INDEX:
        return breakIteratorProvider.getSentenceInstance(locale);
    default:
        assert false : "should not happen";
    }
    return null;
}
项目:OpenJSharp    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(Locale locale,
                                                 int type) {
    LocaleProviderAdapter adapter = LocaleProviderAdapter.getAdapter(BreakIteratorProvider.class, locale);
    BreakIterator iterator = createBreakInstance(adapter, locale, type);
    if (iterator == null) {
        iterator = createBreakInstance(LocaleProviderAdapter.forJRE(), locale, type);
    }
    return iterator;
}
项目:OpenJSharp    文件:JRELocaleProviderAdapter.java   
@Override
public BreakIteratorProvider getBreakIteratorProvider() {
    if (breakIteratorProvider == null) {
        BreakIteratorProvider provider = new BreakIteratorProviderImpl(getAdapterType(),
                                                        getLanguageTagSet("FormatData"));
        synchronized (this) {
            if (breakIteratorProvider == null) {
                breakIteratorProvider = provider;
            }
        }
    }
    return breakIteratorProvider;
}
项目:jdk8u-jdk    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(Locale locale,
                                                 int type) {
    LocaleProviderAdapter adapter = LocaleProviderAdapter.getAdapter(BreakIteratorProvider.class, locale);
    BreakIterator iterator = createBreakInstance(adapter, locale, type);
    if (iterator == null) {
        iterator = createBreakInstance(LocaleProviderAdapter.forJRE(), locale, type);
    }
    return iterator;
}
项目:jdk8u-jdk    文件:JRELocaleProviderAdapter.java   
@Override
public BreakIteratorProvider getBreakIteratorProvider() {
    if (breakIteratorProvider == null) {
        BreakIteratorProvider provider = new BreakIteratorProviderImpl(getAdapterType(),
                                                        getLanguageTagSet("FormatData"));
        synchronized (this) {
            if (breakIteratorProvider == null) {
                breakIteratorProvider = provider;
            }
        }
    }
    return breakIteratorProvider;
}
项目:openjdk-jdk10    文件:BreakIterator.java   
private static BreakIterator createBreakInstance(Locale locale,
                                                 int type) {
    LocaleProviderAdapter adapter = LocaleProviderAdapter.getAdapter(BreakIteratorProvider.class, locale);
    BreakIterator iterator = createBreakInstance(adapter, locale, type);
    if (iterator == null) {
        iterator = createBreakInstance(LocaleProviderAdapter.forJRE(), locale, type);
    }
    return iterator;
}