IdentityPython/pyFF

View on GitHub
examples/mdx.fd

Summary

Maintainability
Test Coverage
- when normalize:
    - xslt:
       stylesheet: tidy.xsl
    - break
- when edugain:
    - xslt:
       stylesheet: tidy.xsl
    - break
- when update:
    - load:
       - examples/links.xrd as links via normalize
       - http://mds.edugain.org via edugain
    - select
    - fork and merge:
       - select: "!//md:EntityDescriptor[md:Extensions[mdrpi:RegistrationInfo[@registrationAuthority='http://www.swamid.se/']]]"
       - setattr:
            http://pyff.io/collection: swamid-2.0
    - fork and merge:
        - select:
            - "http://pyff.io/collection=swamid-2.0+http://pyff.io/role=idp"
        - setattr:
            http://pyff.io/collection: swamid-idp
    - fork:
        - select as /md/foo-2.0:
            - http://pyff.io/collection=swamid-2.0
        - break
    - fork:
        - select as /md/skolfederation-2.0:
            - http://meta01.skolfederation.se/skolfederation-2_0.xml 
        - break
    - fork:
        - select as /ndn:
           - https://idp.nordu.net/idp/shibboleth
        - break
    - fork:
        - select as /md/swamid-kalmar-1.0:
            - https://connect.sunet.se/shibboleth
            - https://www.diva-portal.org/shibboleth
    - break
- when request:
    - select
    - pipe:
        - when accept application/xml:
             - pipe:
                 - when path /md/swamid-kalmar-1.0:
                     - xslt:
                        stylesheet: kalmar2.xsl
                     - break

             - xslt:
                 stylesheet: tidy.xsl
             - first
             - finalize:
                cacheDuration: PT5H
                validUntil: P10D
             - sign:
                 key: sign.key
                 cert: sign.crt
             - emit application/xml
             - break
        - when accept application/json:
             - discojson
             - emit application/json
             - break