private Collection < Class < AuthenticationProvider > > getAuthenticationProviderClasses ( Collection < String > names ) throws GuacamoleException { // If no classnames are provided, just return an empty list if ( names == null ) return Collections . < Class < AuthenticationProvider > > emptyList ( ) ; // Define all auth provider classes Collection < Class < AuthenticationProvider > > classes = new ArrayList < Class < AuthenticationProvider > > ( names . size ( ) ) ; for ( String name : names ) classes . ( getAuthenticationProviderClass ( name ) ) ; // Callers should not rely on modifying the result return Collections . unmodifiableCollection ( classes ) ; }
Returns a new collection of all AuthenticationProvider subclasses having the given names . If any class does not exist or isn t actually a subclass of AuthenticationProvider an exception will be thrown and no further AuthenticationProvider classes will be loaded .