Skip to content

Commit

Permalink
Bug 893 - imported IdPs should be hidden from the normal CDS listing
Browse files Browse the repository at this point in the history
  • Loading branch information
iay committed May 24, 2012
1 parent 911eac5 commit 21ed2e7
Show file tree
Hide file tree
Showing 3 changed files with 64 additions and 0 deletions.
18 changes: 18 additions & 0 deletions mdx/uk/beans.xml
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,24 @@
</bean>


<!--
uk_hide_idps
Hide IdPs (which we assume have been imported) from the WAYF/CDS.
Requires that IdPs already have EntityDescriptor/Extensions elements to put
the HideFromWAYF element into.
-->
<bean id="uk_hide_idps" parent="xslt_parent"
p:id="uk_hide_idps">
<property name="xslResource">
<bean parent="file_parent">
<constructor-arg value="#{ systemProperties['basedir'] }/mdx/uk/hide_idps.xsl"/>
</bean>
</property>
</bean>


<!--
check_ukreg
Expand Down
1 change: 1 addition & 0 deletions mdx/uk/generate.xml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
<ref bean="ie_edugate_exportedEntities"/>
<ref bean="uk_performFixups"/>
<ref bean="uk_fix_mailto"/>
<ref bean="uk_hide_idps"/>
</list>
</property>
</bean>
Expand Down
45 changes: 45 additions & 0 deletions mdx/uk/hide_idps.xsl
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
hide_idps.xsl
Hide IdPs (which we assume have been imported) from the WAYF/CDS.
Requires that IdPs already have EntityDescriptor/Extensions elements to put
the HideFromWAYF element into.
-->
<xsl:stylesheet version="1.0"
xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
xmlns:wayf="http://sdss.ac.uk/2006/06/WAYF"

xmlns="urn:oasis:names:tc:SAML:2.0:metadata"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
exclude-result-prefixes="md">

<!--Force UTF-8 encoding for the output.-->
<xsl:output omit-xml-declaration="no" method="xml" encoding="UTF-8" indent="yes"/>

<xsl:template match="md:EntityDescriptor[md:IDPSSODescriptor]/md:Extensions">
<xsl:copy>
<xsl:text>&#10;</xsl:text>
<xsl:text> </xsl:text>
<xsl:element name="wayf:HideFromWAYF"/>
<xsl:apply-templates select="node()"/>
</xsl:copy>
</xsl:template>

<!--By default, copy text blocks, comments and attributes unchanged.-->
<xsl:template match="text()|comment()|@*">
<xsl:copy/>
</xsl:template>

<!--By default, copy all elements from the input to the output, along with their attributes and contents.-->
<xsl:template match="*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>

</xsl:stylesheet>

0 comments on commit 21ed2e7

Please sign in to comment.