FIX: Pylint reduce
[csit.git] / resources / libraries / python / parsers / JsonParser.py
index 0e78679..c7a28bc 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (c) 2016 Cisco and/or its affiliates.
+# Copyright (c) 2021 Cisco and/or its affiliates.
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at:
 """Used to parse JSON files or JSON data strings to dictionaries"""
 
 import json
-from os import uname
 
+from io import open
 
-class JsonParser(object):
+
+class JsonParser:
     """Parses JSON data string or files containing JSON data strings"""
     def __init__(self):
         pass
@@ -30,26 +31,9 @@ class JsonParser(object):
 
         :param json_data: Data in JSON format.
         :type json_data: str
-        :return: JSON data parsed as python list.
+        :returns: JSON data parsed as python list.
         :rtype: list
         """
-        if "4.2.0-42-generic" in uname():
-            # TODO: remove ugly workaround
-            # On Ubuntu14.04 the VAT console returns "error:misc" even after
-            # some commands execute correctly. This causes problems
-            # with parsing JSON data.
-            known_errors = ["sw_interface_dump error: Misc",
-                            "lisp_eid_table_dump error: Misc",
-                            "show_lisp_status error: Misc",
-                            "lisp_map_resolver_dump error: Misc",
-                            "show_lisp_pitr error: Misc",
-                            "snat_static_mapping_dump error: Misc",
-                           ]
-            for item in known_errors:
-                if item in json_data:
-                    json_data = json_data.replace(item, "")
-                    print("Removing API error: *{0}* "
-                          "from JSON output.".format(item))
         parsed_data = json.loads(json_data)
         return parsed_data
 
@@ -62,9 +46,9 @@ class JsonParser(object):
 
         :param json_file: File with JSON type data.
         :type json_file: str
-        :return: JSON data parsed as python list.
+        :returns: JSON data parsed as python list.
         :rtype: list
         """
-        input_data = open(json_file).read()
+        input_data = open(json_file, u"rt").read()
         parsed_data = JsonParser.parse_data(input_data)
         return parsed_data