public static String [ ] parseOutCompositeIndexComponents ( String name ) { String [ ] components = COMMA_PATTERN . split ( name , - 1 ) ; if ( components . length == 1 ) { return null ; } if ( components . length > MAX_INDEX_COMPONENTS ) { throw new IllegalArgumentException ( "Too many composite index attributes: " + name ) ; } Set < String > seenComponents = new HashSet < String > ( components . length ) ; for ( int i = 0 ; i < components . length ; ++ i ) { String component = PredicateUtils . canonicalizeAttribute ( components [ i ] ) ; components [ i ] = component ; if ( component . isEmpty ( ) ) { throw new IllegalArgumentException ( "Empty composite index attribute: " + name ) ; } if ( ! seenComponents . add ( component ) ) { throw new IllegalArgumentException ( "Duplicate composite index attribute: " + name ) ; } } return components ; }
Parses the given index name into components .