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 7import saml2 8from saml2 import SamlBase 9 10 11NAMESPACE = 'urn:oasis:names:tc:SAML:metadata:algsupport' 12 13 14class 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 38def digest_method_type__from_string(xml_string): 39 return saml2.create_class_from_xml_string(DigestMethodType_, xml_string) 40 41 42class 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 72def signing_method_type__from_string(xml_string): 73 return saml2.create_class_from_xml_string(SigningMethodType_, xml_string) 74 75 76class 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 87def digest_method_from_string(xml_string): 88 return saml2.create_class_from_xml_string(DigestMethod, xml_string) 89 90 91class 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 102def signing_method_from_string(xml_string): 103 return saml2.create_class_from_xml_string(SigningMethod, xml_string) 104 105 106ELEMENT_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 113ELEMENT_BY_TAG = { 114 'DigestMethod': DigestMethod, 115 'DigestMethodType': DigestMethodType_, 116 'SigningMethod': SigningMethod, 117 'SigningMethodType': SigningMethodType_, 118} 119 120 121def factory(tag, **kwargs): 122 return ELEMENT_BY_TAG[tag](**kwargs) 123 124