/** {@inheritDoc} */ public String toString() { return getLocation(); }
/** {@inheritDoc} */ public InputStream getInputStream() throws ResourceException { try { InputStream ins = resource.openStream(); return applyFilter(ins); } catch (IOException e) { throw new ResourceException("Unable to open resource: " + resource); } }
@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); }
/** {@inheritDoc} */ public boolean equals(Object o) { if (o == this) { return true; } if (o instanceof ClasspathResource) { return getLocation().equals(((ClasspathResource) o).getLocation()); } return false; } }
/** {@inheritDoc} */ public int hashCode() { return getLocation().hashCode(); }