private static PatternData getPatternData ( ULocale locale , String calType ) { ICUResourceBundle rb = ( ICUResourceBundle ) UResourceBundle . getBundleInstance ( ICUData . ICU_BASE_NAME , locale ) ; ICUResourceBundle dtPatternsRb = rb . findWithFallback ( "calendar/" + calType + "/DateTimePatterns" ) ; if ( dtPatternsRb == null ) { dtPatternsRb = rb . getWithFallback ( "calendar/gregorian/DateTimePatterns" ) ; } int patternsSize = dtPatternsRb . getSize ( ) ; String [ ] dateTimePatterns = new String [ patternsSize ] ; String [ ] dateTimePatternsOverrides = new String [ patternsSize ] ; for ( int i = 0 ; i < patternsSize ; i ++ ) { ICUResourceBundle concatenationPatternRb = ( ICUResourceBundle ) dtPatternsRb . get ( i ) ; switch ( concatenationPatternRb . getType ( ) ) { case UResourceBundle . STRING : dateTimePatterns [ i ] = concatenationPatternRb . getString ( ) ; break ; case UResourceBundle . ARRAY : dateTimePatterns [ i ] = concatenationPatternRb . getString ( 0 ) ; dateTimePatternsOverrides [ i ] = concatenationPatternRb . getString ( 1 ) ; break ; } } return new PatternData ( dateTimePatterns , dateTimePatternsOverrides ) ; }
Retrieves the DateTime patterns and overrides from the resource bundle and generates a new PatternData object .