001package com.nimbusds.openid.connect.provider.spi;
002
003
004import com.nimbusds.oauth2.sdk.id.ClientID;
005import com.nimbusds.openid.connect.sdk.rp.OIDCClientInformation;
006
007
008/**
009 * Service context for accessing selected Connect2id server components that may
010 * be required in order to process claims or grant handler requests. The
011 * exposed methods are only available during SPI request processing. Attempting
012 * to access these methods during SPI {@link Lifecycle#init ininitialisation}
013 * will produce an {@link IllegalStateException}.
014 *
015 * <p>This interface may be extended in future with additional methods to aid
016 * processing of claims and grant handler requests. Contact Connect2id support
017 * if you think you would need such an extension.
018 */
019public interface ServiceContext {
020        
021
022        /**
023         * Gets the information (metadata) for a registered OAuth 2.0 / OpenID
024         * Connect client.
025         *
026         * @param clientID The client ID. Must not be {@code null}.
027         *
028         * @return The client information, {@code null} if the client wasn't
029         *         found.
030         */
031        OIDCClientInformation getOIDCClientInformation(final ClientID clientID);
032}