<commit_before><?xml version="1.0" encoding="UTF-8"?>
<!--
    Common beans for this channel.
-->
<beans xmlns="http://www.springframework.org/schema/beans"
    default-lazy-init="true"
    xmlns:p="http://www.springframework.org/schema/p"
    xmlns:util="http://www.springframework.org/schema/util"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd">
    
    <!--
        Fetch the CAF production aggregate.
    -->
    <bean id="ca_caf_productionAggregate" parent="domResourceStage_parent"
        p:id="ca_caf_productionAggregate">
        <property name="domResource">
            <bean class="net.shibboleth.utilities.java.support.httpclient.HttpResource">
                <constructor-arg name="client" ref="httpClient"/>
                <constructor-arg name="url" value="https://caf-shibops.ca/CoreServices/cafshib_metadata_signed.xml"/>
            </bean>
        </property>
    </bean>
    
    <!--
        CAF signing certificate.
    -->
    <bean id="ca_caf_signingCertificate" class="net.shibboleth.ext.spring.factory.X509CertificateFactoryBean">
        <property name="certificateFile">
            <bean class="java.io.File">
                <constructor-arg value="#{ systemProperties['basedir'] }/mdx/ca_caf/cafshib_metadata_verify.pem"/>
            </bean>
        </property>
    </bean>
    
    <!--
        Check CAF signing signature.
    -->
    <bean id="ca_caf_checkSignature" parent="stage_parent"
        class="net.shibboleth.metadata.dom.XMLSignatureValidationStage"
        p:id="ca_caf_checkSignature">
        <property name="verificationCertificate" ref="ca_caf_signingCertificate"/>
    </bean>
    
    <!--
        Fetch and process the exported entities as a collection.
    -->
    <bean id="ca_caf_exportedEntities" parent="composite_parent"
        p:id="ca_caf_exportedEntities">
        <property name="composedStages">
            <list>
                <!-- no export aggregate; use the production one instead -->
                <ref bean="ca_caf_productionAggregate"/>

                <!--
                    Check for fatal errors at the aggregate level:
                        missing or expired validUntil attribute
                        invalid signature
                -->
                <ref bean="check_validUntil"/>
                <ref bean="ca_caf_checkSignature"/>
                <ref bean="errorTerminatingFilter"/>
                
                <ref bean="disassemble"/>
                
                <ref bean="standardImportActions"/>
            </list>
        </property>
    </bean>
    
</beans><commit_msg>Canadian Access Federation: stylistic tweak, add eduGAIN aggregate location.<commit_after><?xml version="1.0" encoding="UTF-8"?>
<!--
    Common beans for this channel.
-->
<beans xmlns="http://www.springframework.org/schema/beans"
    default-lazy-init="true"
    xmlns:p="http://www.springframework.org/schema/p"
    xmlns:util="http://www.springframework.org/schema/util"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd">
    
    <!--
        Location of various resources.
    -->
    <bean id="ca_caf_productionAggregate_url" class="java.lang.String">
        <constructor-arg value="https://caf-shibops.ca/CoreServices/cafshib_metadata_signed.xml"/>
    </bean>
    <bean id="ca_caf_edugainAggregate_url" class="java.lang.String">
        <constructor-arg value="https://idp.canarie.ca/canarie-inside-edugain.xml"/>
    </bean>
    
    <!--
        Fetch the CAF production aggregate.
    -->
    <bean id="ca_caf_productionAggregate" parent="domResourceStage_parent"
        p:id="ca_caf_productionAggregate">
        <property name="domResource">
            <bean class="net.shibboleth.utilities.java.support.httpclient.HttpResource">
                <constructor-arg name="client" ref="httpClient"/>
                <constructor-arg name="url" ref="ca_caf_productionAggregate_url"/>
            </bean>
        </property>
    </bean>
    
    <!--
        CAF signing certificate.
    -->
    <bean id="ca_caf_signingCertificate" class="net.shibboleth.ext.spring.factory.X509CertificateFactoryBean">
        <property name="certificateFile">
            <bean class="java.io.File">
                <constructor-arg value="#{ systemProperties['basedir'] }/mdx/ca_caf/cafshib_metadata_verify.pem"/>
            </bean>
        </property>
    </bean>
    
    <!--
        Check CAF signing signature.
    -->
    <bean id="ca_caf_checkSignature" parent="stage_parent"
        class="net.shibboleth.metadata.dom.XMLSignatureValidationStage"
        p:id="ca_caf_checkSignature">
        <property name="verificationCertificate" ref="ca_caf_signingCertificate"/>
    </bean>
    
    <!--
        Fetch and process the exported entities as a collection.
    -->
    <bean id="ca_caf_exportedEntities" parent="composite_parent"
        p:id="ca_caf_exportedEntities">
        <property name="composedStages">
            <list>
                <!-- no export aggregate; use the production one instead -->
                <ref bean="ca_caf_productionAggregate"/>

                <!--
                    Check for fatal errors at the aggregate level:
                        missing or expired validUntil attribute
                        invalid signature
                -->
                <ref bean="check_validUntil"/>
                <ref bean="ca_caf_checkSignature"/>
                <!--
                <ref bean="errorTerminatingFilter"/>
                -->
                
                <ref bean="disassemble"/>
                
                <ref bean="standardImportActions"/>
            </list>
        </property>
    </bean>
    
</beans>
{'fraction_non_alphanumeric': 0.13312893335484913, 'fraction_numerical': 0.004841052121994514, 'mean_word_length': 2.1817248459958933, 'pattern_counts': {'":': 0, '<': 91, '<?xml version=': 2, '>': 91, 'https://': 3, 'lorem ipsum': 0, 'www.': 16, 'xml': 13}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4698579', 'n_tokens_mistral': 1796, 'n_tokens_neox': 1743, 'n_words': 275}