@@ -152,46 +152,17 @@ def do_organization_info(ava):
152
152
return org
153
153
154
154
155
- def do_contact_person_info (lava ):
156
- """ Creates a ContactPerson instance from configuration information"""
155
+ def do_contact_person_info (ava ):
156
+ """Create a ContactPerson instance from configuration information."""
157
+ cper = md .ContactPerson ()
158
+ cper .loadd (ava )
159
+ if not cper .contact_type :
160
+ cper .contact_type = "technical"
161
+ return cper
157
162
158
- cps = []
159
- if lava is None :
160
- return cps
161
-
162
- contact_person = md .ContactPerson
163
- for ava in lava :
164
- cper = md .ContactPerson ()
165
- for (key , classpec ) in contact_person .c_children .values ():
166
- try :
167
- value = ava [key ]
168
- data = []
169
- if isinstance (classpec , list ):
170
- # What if value is not a list ?
171
- if isinstance (value , six .string_types ):
172
- data = [classpec [0 ](text = value )]
173
- else :
174
- for val in value :
175
- data .append (classpec [0 ](text = val ))
176
- else :
177
- data = classpec (text = value )
178
- setattr (cper , key , data )
179
- except KeyError :
180
- pass
181
- for (prop , classpec , _ ) in contact_person .c_attributes .values ():
182
- try :
183
- # should do a check for valid value
184
- setattr (cper , prop , ava [prop ])
185
- except KeyError :
186
- pass
187
-
188
- # ContactType must have a value
189
- typ = getattr (cper , "contact_type" )
190
- if not typ :
191
- setattr (cper , "contact_type" , "technical" )
192
-
193
- cps .append (cper )
194
163
164
+ def do_contact_persons_info (lava ):
165
+ cps = [do_contact_person_info (ava ) for ava in lava ]
195
166
return cps
196
167
197
168
@@ -719,7 +690,7 @@ def entity_descriptor(confd):
719
690
if confd .organization is not None :
720
691
entd .organization = do_organization_info (confd .organization )
721
692
if confd .contact_person is not None :
722
- entd .contact_person = do_contact_person_info (confd .contact_person )
693
+ entd .contact_person = do_contact_persons_info (confd .contact_person )
723
694
724
695
if confd .entity_category :
725
696
if not entd .extensions :
0 commit comments