001/*******************************************************************************
002 * Copyright 2018 The MIT Internet Trust Consortium
003 *
004 * Portions copyright 2011-2013 The MITRE Corporation
005 *
006 * Licensed under the Apache License, Version 2.0 (the "License");
007 * you may not use this file except in compliance with the License.
008 * You may obtain a copy of the License at
009 *
010 *   http://www.apache.org/licenses/LICENSE-2.0
011 *
012 * Unless required by applicable law or agreed to in writing, software
013 * distributed under the License is distributed on an "AS IS" BASIS,
014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
015 * See the License for the specific language governing permissions and
016 * limitations under the License.
017 *******************************************************************************/
018/**
019 *
020 */
021package org.mitre.oauth2.introspectingfilter.service.impl;
022
023import org.mitre.oauth2.introspectingfilter.service.IntrospectionConfigurationService;
024import org.mitre.oauth2.model.RegisteredClient;
025
026/**
027 *
028 * Always provides the (configured) IntrospectionURL and RegisteredClient regardless
029 * of token. Useful for talking to a single, trusted authorization server.
030 *
031 * @author jricher
032 *
033 */
034public class StaticIntrospectionConfigurationService implements IntrospectionConfigurationService {
035
036        private String introspectionUrl;
037        private RegisteredClient clientConfiguration;
038
039        /**
040         * @return the clientConfiguration
041         */
042        public RegisteredClient getClientConfiguration() {
043                return clientConfiguration;
044        }
045
046        /**
047         * @param clientConfiguration the clientConfiguration to set
048         */
049        public void setClientConfiguration(RegisteredClient client) {
050                this.clientConfiguration = client;
051        }
052
053        /**
054         * @return the introspectionUrl
055         */
056        public String getIntrospectionUrl() {
057                return introspectionUrl;
058        }
059
060        /**
061         * @param introspectionUrl the introspectionUrl to set
062         */
063        public void setIntrospectionUrl(String introspectionUrl) {
064                this.introspectionUrl = introspectionUrl;
065        }
066
067        /* (non-Javadoc)
068         * @see org.mitre.oauth2.introspectingfilter.IntrospectionConfigurationService#getIntrospectionUrl(java.lang.String)
069         */
070        @Override
071        public String getIntrospectionUrl(String accessToken) {
072                return getIntrospectionUrl();
073        }
074
075        /* (non-Javadoc)
076         * @see org.mitre.oauth2.introspectingfilter.service.IntrospectionConfigurationService#getClientConfiguration(java.lang.String)
077         */
078        @Override
079        public RegisteredClient getClientConfiguration(String accessToken) {
080                return getClientConfiguration();
081        }
082
083}