private void initAttribute ( Object pAttrval ) { if ( pAttrval instanceof String ) { attributeNames = EscapeUtil . split ( ( String ) pAttrval , EscapeUtil . CSV_ESCAPE , "," ) ; multiAttributeMode = attributeNames . size ( ) > 1 ; } else if ( pAttrval instanceof Collection ) { Collection < String > attributes = ( Collection < String > ) pAttrval ; if ( attributes . size ( ) == 1 && attributes . iterator ( ) . next ( ) == null ) { attributeNames = null ; multiAttributeMode = false ; } else { attributeNames = new ArrayList < String > ( attributes ) ; multiAttributeMode = true ; } } else if ( pAttrval == null ) { attributeNames = null ; multiAttributeMode = false ; } else { throw new IllegalArgumentException ( "Attribute names must be either a String, Collection or null (and not " + pAttrval . getClass ( ) + ")" ) ; } }
initialize and detect multi attribute mode