@Bean public CachingMetadataManager metadataManager(List<MetadataProvider> metadataProviders) throws MetadataProviderException { return new CachingMetadataManager(metadataProviders); } }
/** * Locates name of the entity for the given alias. * * @param entityAlias to load entityId for * @return entityId or null if not found * @throws MetadataProviderException provider in case alias is not unique or missing */ public String getEntityIdForAlias(String entityAlias) throws MetadataProviderException { return getFromCacheOrUpdate(aliasCache, entityAlias, aliasLoader); }
private CachingMetadataManager cachingMetadataManager() { List<MetadataProvider> providers = new ArrayList<>(); providers.add(extendedMetadataDelegate); CachingMetadataManager cachingMetadataManager = null; try { cachingMetadataManager = new CachingMetadataManager(providers); } catch (MetadataProviderException e) { e.printStackTrace(); } cachingMetadataManager.setKeyManager(serviceProvider.keyManager); return cachingMetadataManager; }
/** * Get the metadata manager for the IDP metadata. This version caches locally and refreshes periodically. * * @param ssoCircleExtendedMetadataProvider The extended metadata delegate * @return The metadata manager * @throws MetadataProviderException on any configuration error * @see CachingMetadataManager */ @Bean @Qualifier("metadata") public CachingMetadataManager metadata( final ExtendedMetadataDelegate ssoCircleExtendedMetadataProvider ) throws MetadataProviderException { return new CachingMetadataManager(Lists.newArrayList(ssoCircleExtendedMetadataProvider)); }
/** * In case entity exists in the cache it is returned, otherwise mechanism from the super class is used to locate it. * * @param entityID id to load extended metadata for * @return entity descriptor or null if not found * @throws MetadataProviderException provider */ @Override public ExtendedMetadata getExtendedMetadata(String entityID) throws MetadataProviderException { return getFromCacheOrUpdate(extendedMetadataCache, entityID, extendedLoader); }
@Bean @Qualifier("metadata") public CachingMetadataManager metadata() throws MetadataProviderException { List<MetadataProvider> providers = new ArrayList<MetadataProvider>(); providers.add(ssoCircleExtendedMetadataProvider()); return new CachingMetadataManager(providers); }
/** * In case entity exists in the cache it is returned, otherwise mechanism from the super class is used to locate it. * * @param entityID id to load descriptor for * @return entity descriptor or null if not found * @throws MetadataProviderException provider */ @Override public EntityDescriptor getEntityDescriptor(String entityID) throws MetadataProviderException { return getFromCacheOrUpdate(basicMetadataCache, entityID, entityLoader); }
@Bean @Qualifier("metadata") public CachingMetadataManager metadata() throws MetadataProviderException, XMLParserException { List<MetadataProvider> providers = new ArrayList<>(); providers.add(identityProvider()); return new CachingMetadataManager(providers); }
/** * Locates entity descriptor whose entityId SHA-1 hash equals the one in the parameter. * * @param hash hash of the entity descriptor * @return found descriptor or null */ @Override public EntityDescriptor getEntityDescriptor(byte[] hash) throws MetadataProviderException { return getFromCacheOrUpdate(hashMetadataCache, hash, entityHashLoader); }
@VisibleForTesting protected CachingMetadataManager createDefaultMetadataManager() throws MetadataProviderException { return new CachingMetadataManager(null); }
@Bean @Qualifier("metadata") public CachingMetadataManager metadata() throws MetadataProviderException, ResourceException { List<MetadataProvider> providers = new ArrayList<MetadataProvider>(); if(samlProperties != null && samlProperties.getIdp() != null){ for(SAMLProperties.SamlMetadata samlMetadata : samlProperties.getIdp()){ if(samlMetadata.getType().equals("xml")){ ResourceBackedMetadataProvider resourceBackedMetadataProvider = new ResourceBackedMetadataProvider(backgroundTaskTimer(), new ClasspathResource(samlMetadata.getUrl())); resourceBackedMetadataProvider.setParserPool(parserPool()); ExtendedMetadataDelegate extendedMetadataDelegate = new ExtendedMetadataDelegate(resourceBackedMetadataProvider, extendedMetadata()); extendedMetadataDelegate.setMetadataTrustCheck(samlMetadata.isMetadataTrustCheck()); extendedMetadataDelegate.setMetadataRequireSignature(samlMetadata.isMetadataRequireSignature()); backgroundTaskTimer.purge(); providers.add(extendedMetadataDelegate); } else if(samlMetadata.getType().equals("http")){ HTTPMetadataProvider httpMetadataProvider = new HTTPMetadataProvider(backgroundTaskTimer(), httpClient(), samlMetadata.getUrl()); httpMetadataProvider.setParserPool(parserPool()); ExtendedMetadataDelegate extendedMetadataDelegate = new ExtendedMetadataDelegate(httpMetadataProvider, extendedMetadata()); extendedMetadataDelegate.setMetadataTrustCheck(samlMetadata.isMetadataTrustCheck()); extendedMetadataDelegate.setMetadataRequireSignature(samlMetadata.isMetadataRequireSignature()); backgroundTaskTimer.purge(); providers.add(extendedMetadataDelegate); } } } return new CachingMetadataManager(providers); }