private void initLocalizations ( String [ ] [ ] localizations ) { if ( localizations != null ) { publicRuleSetNames = localizations [ 0 ] . clone ( ) ; Map < String , String [ ] > m = new HashMap < String , String [ ] > ( ) ; for ( int i = 1 ; i < localizations . length ; ++ i ) { String [ ] data = localizations [ i ] ; String loc = data [ 0 ] ; String [ ] names = new String [ data . length - 1 ] ; if ( names . length != publicRuleSetNames . length ) { throw new IllegalArgumentException ( "public name length: " + publicRuleSetNames . length + " != localized names[" + i + "] length: " + names . length ) ; } System . arraycopy ( data , 1 , names , 0 , names . length ) ; m . put ( loc , names ) ; } if ( ! m . isEmpty ( ) ) { ruleSetDisplayNames = m ; } } }
Take the localizations array and create a Map from the locale strings to the localization arrays .