Merge pull request #57 from avandermeer/master
fix for empty parentheses in ProfileGenericParser
This commit is contained in:
		
						commit
						2391f38c4a
					
				| @ -225,6 +225,11 @@ class ProfileGenericParser(DSMRObjectParser): | |||||||
|         self.parsers_for_unidentified = parsers_for_unidentified |         self.parsers_for_unidentified = parsers_for_unidentified | ||||||
| 
 | 
 | ||||||
|     def _is_line_wellformed(self, line, values): |     def _is_line_wellformed(self, line, values): | ||||||
|  |          | ||||||
|  |         # allow empty parentheses (indicated by empty string) | ||||||
|  |         if values and (len(values) == 1) and (values[0] == ''): | ||||||
|  |             return True | ||||||
|  | 
 | ||||||
|         if values and (len(values) >= 2) and (values[0].isdigit()): |         if values and (len(values) >= 2) and (values[0].isdigit()): | ||||||
|             buffer_length = int(values[0]) |             buffer_length = int(values[0]) | ||||||
|             return (buffer_length <= 10) and (len(values) == (buffer_length * 2 + 2)) |             return (buffer_length <= 10) and (len(values) == (buffer_length * 2 + 2)) | ||||||
| @ -232,6 +237,10 @@ class ProfileGenericParser(DSMRObjectParser): | |||||||
|             return False |             return False | ||||||
| 
 | 
 | ||||||
|     def _parse_values(self, values): |     def _parse_values(self, values): | ||||||
|  |         # in case of empty parentheses return | ||||||
|  |         if values and (len(values) == 1) and (values[0] == None): | ||||||
|  |             return super()._parse_values(values) #calling parent | ||||||
|  | 
 | ||||||
|         buffer_length = int(values[0]) |         buffer_length = int(values[0]) | ||||||
|         buffer_value_obis_ID = values[1] |         buffer_value_obis_ID = values[1] | ||||||
|         if (buffer_length > 0): |         if (buffer_length > 0): | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user