/** * Generate metadata object from string * * @param metadataString * @return samlssoServiceProviderDO */ private EntityDescriptor generateMetadataObjectFromString(String metadataString) { EntityDescriptor entityDescriptor = null; try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); factory.setNamespaceAware(true); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse(new ByteArrayInputStream(metadataString.getBytes())); Element node = document.getDocumentElement(); DOMMetadataProvider idpMetaDataProvider = new DOMMetadataProvider(node); idpMetaDataProvider.setRequireValidMetadata(true); idpMetaDataProvider.setParserPool(new BasicParserPool()); idpMetaDataProvider.initialize(); XMLObject xmlObject = idpMetaDataProvider.getMetadata(); entityDescriptor = (EntityDescriptor) xmlObject; } catch (MetadataProviderException | SAXException | ParserConfigurationException | IOException e) { log.error("Error While reading Service Provider metadata xml", e); } return entityDescriptor; } }
/** * Generate metadata object from string * * @param metadataString * @return samlssoServiceProviderDO */ private EntityDescriptor generateMetadataObjectFromString(String metadataString) { EntityDescriptor entityDescriptor = null; try { DocumentBuilderFactory factory = IdentityUtil.getSecuredDocumentBuilderFactory(); factory.setNamespaceAware(true); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse(new ByteArrayInputStream(metadataString.getBytes())); Element node = document.getDocumentElement(); DOMMetadataProvider idpMetaDataProvider = new DOMMetadataProvider(node); idpMetaDataProvider.setRequireValidMetadata(true); idpMetaDataProvider.setParserPool(new BasicParserPool()); idpMetaDataProvider.initialize(); XMLObject xmlObject = idpMetaDataProvider.getMetadata(); entityDescriptor = (EntityDescriptor) xmlObject; } catch (MetadataProviderException | SAXException | ParserConfigurationException | IOException e) { log.error("Error While reading Service Provider metadata xml", e); } return entityDescriptor; } }
/** * Convert metadata String to entityDescriptor * * @param metadataString * @return EntityDescriptor */ private static EntityDescriptor generateMetadataObjectFromString(String metadataString) throws IdentityApplicationManagementException { EntityDescriptor entityDescriptor = null; try { DocumentBuilderFactory factory = IdentityUtil.getSecuredDocumentBuilderFactory(); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse(new ByteArrayInputStream(metadataString.getBytes())); Element node = document.getDocumentElement(); DOMMetadataProvider idpMetaDataProvider = new DOMMetadataProvider(node); idpMetaDataProvider.setRequireValidMetadata(true); idpMetaDataProvider.setParserPool(new BasicParserPool()); idpMetaDataProvider.initialize(); XMLObject xmlObject = idpMetaDataProvider.getMetadata(); entityDescriptor = (EntityDescriptor) xmlObject; } catch (MetadataProviderException | SAXException | ParserConfigurationException | IOException e) { throw new IdentityApplicationManagementException("Error while converting file content to entity descriptor"); } return entityDescriptor; }