@@ -35,43 +35,44 @@ def __eq__(self, other):
3535 return False
3636 return self .metadata == other .metadata and self .parameters == other .parameters
3737
38- def parse_validation_definition (stream ):
39- """Creates a ValidationDefinition from a provided stream containing XML.
38+ @staticmethod
39+ def parse_validation_definition (stream ):
40+ """Creates a ValidationDefinition from a provided stream containing XML.
4041
41- The XML typically will look like
42+ The XML typically will look like
4243
43- <items>
44- <server_host>myHost</server_host>
45- <server_uri>https://127.0.0.1:8089</server_uri>
46- <session_key>123102983109283019283</session_key>
47- <checkpoint_dir>/opt/splunk/var/lib/splunk/modinputs</checkpoint_dir>
48- <item name="myScheme">
49- <param name="param1">value1</param>
50- <param_list name="param2">
51- <value>value2</value>
52- <value>value3</value>
53- <value>value4</value>
54- </param_list>
55- </item>
56- </items>
44+ <items>
45+ <server_host>myHost</server_host>
46+ <server_uri>https://127.0.0.1:8089</server_uri>
47+ <session_key>123102983109283019283</session_key>
48+ <checkpoint_dir>/opt/splunk/var/lib/splunk/modinputs</checkpoint_dir>
49+ <item name="myScheme">
50+ <param name="param1">value1</param>
51+ <param_list name="param2">
52+ <value>value2</value>
53+ <value>value3</value>
54+ <value>value4</value>
55+ </param_list>
56+ </item>
57+ </items>
5758
58- :param stream: stream containing XML to parse
59- :return definition: a ValidationDefinition object
60- """
59+ :param stream: stream containing XML to parse
60+ :return definition: a ValidationDefinition object
61+ """
6162
62- definition = ValidationDefinition ()
63+ definition = ValidationDefinition ()
6364
64- # parse XML from the stream, then get the root node
65- root = ET .parse (stream ).getroot ()
65+ # parse XML from the stream, then get the root node
66+ root = ET .parse (stream ).getroot ()
6667
67- for node in root :
68- # lone item node
69- if node .tag == "item" :
70- # name from item node
71- definition .metadata ["name" ] = node .get ("name" )
72- definition .parameters = parse_xml_data (node , "" )
73- else :
74- # Store anything else in metadata
75- definition .metadata [node .tag ] = node .text
68+ for node in root :
69+ # lone item node
70+ if node .tag == "item" :
71+ # name from item node
72+ definition .metadata ["name" ] = node .get ("name" )
73+ definition .parameters = parse_xml_data (node , "" )
74+ else :
75+ # Store anything else in metadata
76+ definition .metadata [node .tag ] = node .text
7677
77- return definition
78+ return definition
0 commit comments