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;
}
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter,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;
}
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter,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;
}
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter,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;
}
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter,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;
}
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter,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;
}
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter,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;
}
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter,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;
}
/**
* 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));
}
/**
* 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));
}
/**
* 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));
}
/**
* 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));
}
/**
* 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));
}
/**
* 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));
}
/**
* 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));
}
/**
* 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));
}
public BreakIterator getobject(BreakIteratorProvider breakIteratorProvider,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;
}
public BreakIterator getobject(BreakIteratorProvider breakIteratorProvider,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;
}
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter,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;
}
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter,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;
}
public BreakIterator getobject(BreakIteratorProvider breakIteratorProvider,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;
}
public BreakIterator getobject(BreakIteratorProvider breakIteratorProvider,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;
}
private static BreakIterator createBreakInstance(LocaleProviderAdapter adapter,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;
}
/**
* 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));
}
/**
* 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));
}
/**
* 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));
}
/**
* 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));
}
public BreakIterator getobject(BreakIteratorProvider breakIteratorProvider,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;
}
/**
* 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));
}
/**
* 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));
}
/**
* 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));
}
/**
* 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));
}
public BreakIterator getobject(BreakIteratorProvider breakIteratorProvider,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;
}
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(),type);
}
return iterator;
}
@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
文件: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;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。