Skip to content

Commit 957b39a

Browse files
author
Roland Hedberg
committed
Added a metadata extension (algsupport).
1 parent ba76d90 commit 957b39a

File tree

1 file changed

+123
-0
lines changed

1 file changed

+123
-0
lines changed

src/saml2/extension/algsupport.py

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
#!/usr/bin/env python
2+
3+
#
4+
# Generated Sat Mar 8 16:15:12 2014 by parse_xsd.py version 0.5.
5+
#
6+
7+
import saml2
8+
from saml2 import SamlBase
9+
10+
11+
NAMESPACE = 'urn:oasis:names:tc:SAML:metadata:algsupport'
12+
13+
14+
class DigestMethodType_(SamlBase):
15+
"""The urn:oasis:names:tc:SAML:metadata:algsupport:DigestMethodType
16+
element """
17+
18+
c_tag = 'DigestMethodType'
19+
c_namespace = NAMESPACE
20+
c_children = SamlBase.c_children.copy()
21+
c_attributes = SamlBase.c_attributes.copy()
22+
c_child_order = SamlBase.c_child_order[:]
23+
c_cardinality = SamlBase.c_cardinality.copy()
24+
c_attributes['Algorithm'] = ('algorithm', 'anyURI', True)
25+
26+
def __init__(self,
27+
algorithm=None,
28+
text=None,
29+
extension_elements=None,
30+
extension_attributes=None):
31+
SamlBase.__init__(self,
32+
text=text,
33+
extension_elements=extension_elements,
34+
extension_attributes=extension_attributes)
35+
self.algorithm = algorithm
36+
37+
38+
def digest_method_type__from_string(xml_string):
39+
return saml2.create_class_from_xml_string(DigestMethodType_, xml_string)
40+
41+
42+
class SigningMethodType_(SamlBase):
43+
"""The urn:oasis:names:tc:SAML:metadata:algsupport:SigningMethodType
44+
element """
45+
46+
c_tag = 'SigningMethodType'
47+
c_namespace = NAMESPACE
48+
c_children = SamlBase.c_children.copy()
49+
c_attributes = SamlBase.c_attributes.copy()
50+
c_child_order = SamlBase.c_child_order[:]
51+
c_cardinality = SamlBase.c_cardinality.copy()
52+
c_attributes['Algorithm'] = ('algorithm', 'anyURI', True)
53+
c_attributes['MinKeySize'] = ('min_key_size', 'positiveInteger', False)
54+
c_attributes['MaxKeySize'] = ('max_key_size', 'positiveInteger', False)
55+
56+
def __init__(self,
57+
algorithm=None,
58+
min_key_size=None,
59+
max_key_size=None,
60+
text=None,
61+
extension_elements=None,
62+
extension_attributes=None):
63+
SamlBase.__init__(self,
64+
text=text,
65+
extension_elements=extension_elements,
66+
extension_attributes=extension_attributes)
67+
self.algorithm = algorithm
68+
self.min_key_size = min_key_size
69+
self.max_key_size = max_key_size
70+
71+
72+
def signing_method_type__from_string(xml_string):
73+
return saml2.create_class_from_xml_string(SigningMethodType_, xml_string)
74+
75+
76+
class DigestMethod(DigestMethodType_):
77+
"""The urn:oasis:names:tc:SAML:metadata:algsupport:DigestMethod element """
78+
79+
c_tag = 'DigestMethod'
80+
c_namespace = NAMESPACE
81+
c_children = DigestMethodType_.c_children.copy()
82+
c_attributes = DigestMethodType_.c_attributes.copy()
83+
c_child_order = DigestMethodType_.c_child_order[:]
84+
c_cardinality = DigestMethodType_.c_cardinality.copy()
85+
86+
87+
def digest_method_from_string(xml_string):
88+
return saml2.create_class_from_xml_string(DigestMethod, xml_string)
89+
90+
91+
class SigningMethod(SigningMethodType_):
92+
"""The urn:oasis:names:tc:SAML:metadata:algsupport:SigningMethod element """
93+
94+
c_tag = 'SigningMethod'
95+
c_namespace = NAMESPACE
96+
c_children = SigningMethodType_.c_children.copy()
97+
c_attributes = SigningMethodType_.c_attributes.copy()
98+
c_child_order = SigningMethodType_.c_child_order[:]
99+
c_cardinality = SigningMethodType_.c_cardinality.copy()
100+
101+
102+
def signing_method_from_string(xml_string):
103+
return saml2.create_class_from_xml_string(SigningMethod, xml_string)
104+
105+
106+
ELEMENT_FROM_STRING = {
107+
DigestMethod.c_tag: digest_method_from_string,
108+
DigestMethodType_.c_tag: digest_method_type__from_string,
109+
SigningMethod.c_tag: signing_method_from_string,
110+
SigningMethodType_.c_tag: signing_method_type__from_string,
111+
}
112+
113+
ELEMENT_BY_TAG = {
114+
'DigestMethod': DigestMethod,
115+
'DigestMethodType': DigestMethodType_,
116+
'SigningMethod': SigningMethod,
117+
'SigningMethodType': SigningMethodType_,
118+
}
119+
120+
121+
def factory(tag, **kwargs):
122+
return ELEMENT_BY_TAG[tag](**kwargs)
123+

0 commit comments

Comments
 (0)