@Override
    public Object getResource() throws GuacamoleException {

        // Ignore auth attempts if no auth provider could be loaded
        if (authProvider == null) {
            logger.warn("The authentication system could not be loaded. Please check for errors earlier in the logs.");
            return null;
        }

        // Delegate to underlying auth provider
        return authProvider.getResource();

    }
Creates a new AuthenticationProviderFacade which delegates all function
calls to an instance of the given AuthenticationProvider subclass. If
an instance of the given class cannot be created, creation of this
facade will still succeed, but its use will result in errors being
logged, and all authentication attempts will fail.

@param authProviderClass
    The AuthenticationProvider subclass to instantiate.

@param tolerateFailures
    The set of identifiers of all authentication providers whose
    internal failures should be tolerated during the authentication
    process. If the identifier of this authentication provider is within
    this set, errors during authentication will result in the
    authentication provider being ignored for that authentication
    attempt. By default, errors during authentication halt the
    authentication process entirely.
guacamole/src/main/java/org/apache/guacamole/extension/AuthenticationProviderFacade.java