Package org.oa4mp.server.qdl.clc
Class QDLConfigLoader<T extends OA2ClientEnvironment>
- java.lang.Object
-
- org.oa4mp.client.loader.OA2ClientLoaderImpl<T>
-
- org.oa4mp.server.qdl.clc.QDLConfigLoader<T>
-
- All Implemented Interfaces:
edu.uiuc.ncsa.security.core.util.ConfigurationLoader<T>
,Serializable
,ClientLoaderInterface<T>
,QDLConfigTags
public class QDLConfigLoader<T extends OA2ClientEnvironment> extends OA2ClientLoaderImpl<T> implements QDLConfigTags
Created by Jeff Gaynor
on 12/19/23 at 3:35 PM- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
QDLConfigLoader.StupidAssetStoreProvider<T extends AssetStore>
-
Field Summary
-
Fields inherited from class org.oa4mp.client.loader.OA2ClientLoaderImpl
assetConverter, assetKeys, assetProvider, tokenForgeProvider
-
Fields inherited from interface org.oa4mp.server.qdl.clc.QDLConfigTags
ASSET_FILE_STORE_PATH, ASSET_STORE_TYPE, AUTHORIZE_URL, CALLBACK, CLIENT_MANAGEMENT_URL, DEBUG_LEVEL, DEVICE_AUTHORIZATION_URL, ENABLE_ASSET_CLEANUP, ENABLE_OIDC, ENDPOINTS, EXTENDED_ATTRIBUTES, EXTENDS, FILE_STORE_REMOVE_EMPTY, FILE_STORE_REMOVE_FAILED, ID, INTROSPECTION_URL, JWK_ID, JWKS, KEY_STORE_TAG, LOGGING_COUNT, LOGGING_DISABLE_LOG4J, LOGGING_ENABLE_APPEND, LOGGING_FILE, LOGGING_MAX_SIZE, LOGGING_NAME, LOGGING_TAG, MAX_ASSET_LIFETIME, REVOCATION_URL, SCOPES, SECRET, SERVICE_URL, SKIN, SSL, SSL_USE_JAVA_TRUST_STORE, TOKEN_URL, TRUST_STORE_CERT_DN, TRUST_STORE_PASSWORD, TRUST_STORE_PATH, TRUST_STORE_STRICT_HOSTNAME, TRUST_STORE_TAG, TRUST_STORE_TYPE, TRUST_STORE_USE_DEFAULT_TRUST_MANAGER, USER_INFO_URL, WELL_KNOWN_URL
-
-
Constructor Summary
Constructors Constructor Description QDLConfigLoader(org.qdl_lang.variables.QDLStem stem, String configName)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description T
createInstance()
URI
getAccessTokenURI()
Map<String,List<String>>
getAdditionalParameters()
javax.inject.Provider<AssetStore>
getAssetStoreProvider()
URI
getAssetURI()
URI
getAuthorizeURI()
URI
getCallback()
long
getCertLifetime()
org.qdl_lang.variables.QDLStem
getConfig()
String
getConfigName()
HashMap<String,String>
getConstants()
edu.uiuc.ncsa.security.core.util.MetaDebugUtil
getDebugger()
Checks for and sets up the debugging for this loader.URI
getDeviceAuthorizationURI()
protected String
getEndpoint(String name)
org.qdl_lang.variables.QDLStem
getFullConfig()
The full configuration passed to this.String
getId()
URI
getIssuer()
long
getKeypairLifetime()
edu.uiuc.ncsa.security.util.jwk.JSONWebKeys
getKeys()
String
getKID()
edu.uiuc.ncsa.security.core.util.LoggerProvider
getLoggerProvider()
long
getMaxAssetLifetime()
URI
getRFC7009Endpoint()
URI
getRFC7662Endpoint()
Collection<String>
getScopes()
String
getSecret()
String
getServiceURI()
String
getSkin()
edu.uiuc.ncsa.security.util.ssl.SSLConfiguration
getSSLConfiguration()
URI
getUIURI()
String
getWellKnownURI()
protected org.qdl_lang.variables.QDLStem
initialize(org.qdl_lang.variables.QDLStem s, String configName)
boolean
isEnableAssetCleanup()
boolean
isOIDCEnabled()
T
load()
static void
main(String[] args)
protected org.qdl_lang.variables.QDLStem
NEWinitialize(org.qdl_lang.variables.QDLStem s, String configName)
protected void
renameSSLkeys(org.qdl_lang.variables.QDLStem ssl)
This will rename the keys to conform to the serialization inSSLConfigurationUtil2
.protected org.qdl_lang.variables.QDLStem
resolveExtends(org.qdl_lang.variables.QDLStem all, org.qdl_lang.variables.QDLStem target)
Resolve the extension property for a client.void
setConfigName(String configName)
void
setFullConfig(org.qdl_lang.variables.QDLStem fullConfig)
protected javax.inject.Provider<AssetStore>
setupFSAssetStore(org.qdl_lang.variables.QDLStem conf)
-
Methods inherited from class org.oa4mp.client.loader.OA2ClientLoaderImpl
checkURI, createServiceClient, createServiceURI, getAssetProvider, getDebugger, getDSP, getServiceProvider, getWellKnownClient, getWellKnownConfiguration, getWellKnownString, getWellKnownValue
-
-
-
-
Constructor Detail
-
QDLConfigLoader
public QDLConfigLoader(org.qdl_lang.variables.QDLStem stem, String configName)
-
-
Method Detail
-
getConfig
public org.qdl_lang.variables.QDLStem getConfig()
-
getFullConfig
public org.qdl_lang.variables.QDLStem getFullConfig()
The full configuration passed to this. ThegetConfig()
is the resolved configuration.- Returns:
-
setFullConfig
public void setFullConfig(org.qdl_lang.variables.QDLStem fullConfig)
-
resolveExtends
protected org.qdl_lang.variables.QDLStem resolveExtends(org.qdl_lang.variables.QDLStem all, org.qdl_lang.variables.QDLStem target)
Resolve the extension property for a client. If the client extends another one track that down and its extensions. Otherwise, do nothing.- Parameters:
all
-target
-- Returns:
-
initialize
protected org.qdl_lang.variables.QDLStem initialize(org.qdl_lang.variables.QDLStem s, String configName)
-
NEWinitialize
protected org.qdl_lang.variables.QDLStem NEWinitialize(org.qdl_lang.variables.QDLStem s, String configName)
-
getConfigName
public String getConfigName()
-
setConfigName
public void setConfigName(String configName)
-
getScopes
public Collection<String> getScopes()
- Specified by:
getScopes
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getKeys
public edu.uiuc.ncsa.security.util.jwk.JSONWebKeys getKeys()
- Specified by:
getKeys
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getAdditionalParameters
public Map<String,List<String>> getAdditionalParameters()
- Specified by:
getAdditionalParameters
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getAssetStoreProvider
public javax.inject.Provider<AssetStore> getAssetStoreProvider()
- Specified by:
getAssetStoreProvider
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
setupFSAssetStore
protected javax.inject.Provider<AssetStore> setupFSAssetStore(org.qdl_lang.variables.QDLStem conf)
-
getSSLConfiguration
public edu.uiuc.ncsa.security.util.ssl.SSLConfiguration getSSLConfiguration()
- Specified by:
getSSLConfiguration
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
renameSSLkeys
protected void renameSSLkeys(org.qdl_lang.variables.QDLStem ssl)
This will rename the keys to conform to the serialization inSSLConfigurationUtil2
. It's probably the most reliable way to do this.- Parameters:
ssl
-
-
getId
public String getId()
- Specified by:
getId
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getKID
public String getKID()
- Specified by:
getKID
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getSecret
public String getSecret()
- Specified by:
getSecret
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getServiceURI
public String getServiceURI()
- Specified by:
getServiceURI
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getSkin
public String getSkin()
- Specified by:
getSkin
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getWellKnownURI
public String getWellKnownURI()
- Specified by:
getWellKnownURI
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getAccessTokenURI
public URI getAccessTokenURI()
- Specified by:
getAccessTokenURI
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getAssetURI
public URI getAssetURI()
- Specified by:
getAssetURI
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getAuthorizeURI
public URI getAuthorizeURI()
- Specified by:
getAuthorizeURI
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getCallback
public URI getCallback()
- Specified by:
getCallback
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getDeviceAuthorizationURI
public URI getDeviceAuthorizationURI()
- Specified by:
getDeviceAuthorizationURI
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getRFC7009Endpoint
public URI getRFC7009Endpoint()
- Specified by:
getRFC7009Endpoint
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getUIURI
public URI getUIURI()
- Specified by:
getUIURI
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
isEnableAssetCleanup
public boolean isEnableAssetCleanup()
- Specified by:
isEnableAssetCleanup
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
isOIDCEnabled
public boolean isOIDCEnabled()
- Specified by:
isOIDCEnabled
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getCertLifetime
public long getCertLifetime()
- Specified by:
getCertLifetime
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getKeypairLifetime
public long getKeypairLifetime()
- Specified by:
getKeypairLifetime
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getIssuer
public URI getIssuer()
- Specified by:
getIssuer
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getMaxAssetLifetime
public long getMaxAssetLifetime()
- Specified by:
getMaxAssetLifetime
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
getRFC7662Endpoint
public URI getRFC7662Endpoint()
- Specified by:
getRFC7662Endpoint
in interfaceClientLoaderInterface<T extends OA2ClientEnvironment>
-
load
public T load()
- Specified by:
load
in interfaceedu.uiuc.ncsa.security.core.util.ConfigurationLoader<T extends OA2ClientEnvironment>
-
createInstance
public T createInstance()
- Specified by:
createInstance
in interfaceedu.uiuc.ncsa.security.core.util.ConfigurationLoader<T extends OA2ClientEnvironment>
-
getConstants
public HashMap<String,String> getConstants()
- Specified by:
getConstants
in interfaceedu.uiuc.ncsa.security.core.util.ConfigurationLoader<T extends OA2ClientEnvironment>
-
getLoggerProvider
public edu.uiuc.ncsa.security.core.util.LoggerProvider getLoggerProvider()
- Specified by:
getLoggerProvider
in classOA2ClientLoaderImpl<T extends OA2ClientEnvironment>
-
getDebugger
public edu.uiuc.ncsa.security.core.util.MetaDebugUtil getDebugger()
Description copied from class:OA2ClientLoaderImpl
Checks for and sets up the debugging for this loader. Once this is set up, you may have to tell any environments that use it that debugging is enabled. Note that this is not used in this module, but in OA4MP proper, but has to b here for visibility later.- Specified by:
getDebugger
in classOA2ClientLoaderImpl<T extends OA2ClientEnvironment>
-
-