001package com.nimbusds.openid.connect.sdk.claims;
002
003
004import net.jcip.annotations.Immutable;
005
006import com.nimbusds.oauth2.sdk.id.Identifier;
007
008
009/**
010 * OAuth 2.0 client authorized to use the ID Token as an OAuth access token, 
011 * if different than the client that requested the ID Token ({@code azp}). It 
012 * must contain the {@link com.nimbusds.oauth2.sdk.id.ClientID client 
013 * identifier} of the authorised party.
014 *
015 * <p>The client identifier can be a URI or an arbitrary string.
016 *
017 * <p>See also {@link com.nimbusds.oauth2.sdk.id.ClientID}.
018 *
019 * <p>Related specifications:
020 *
021 * <ul>
022 *     <li>OpenID Connect Core 1.0, section 2.
023 *     <li>OAuth 2.0 (RFC 6749), section 2.2.
024 * </ul>
025 */
026@Immutable
027public final class AuthorizedParty extends Identifier {
028
029
030        /**
031         * Creates a new authorised party identifier with the specified value.
032         *
033         * @param value The authorised party identifier value. Must not be 
034         *              {@code null}.
035         */
036        public AuthorizedParty(final String value) {
037        
038                super(value);
039        }
040
041
042        @Override
043        public boolean equals(final Object object) {
044        
045                return object instanceof AuthorizedParty &&
046                       this.toString().equals(object.toString());
047        }
048}