Skip to content

Commit 6fb667a

Browse files
committed
export_json export only key present in data_schema of each object now
1 parent 869edb5 commit 6fb667a

File tree

4 files changed

+19
-11
lines changed

4 files changed

+19
-11
lines changed

src/log_analyser/objects/character.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,6 @@ def __init__(self, **kwargs):
99
"played_time": list,
1010
"kills": list,
1111
"deads": list,
12-
"offensive_assists": list,
13-
"defensive_assists": list,
1412
"ultimate_charged": list,
1513
"ultimate_use": list}
1614

src/log_analyser/objects/match.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ def add_character(self, data):
5050
if data["character_name"] in self.rounds[self.actual_round].teams[data["team_name"]].players[data["player_name"]].characters:
5151
return -2
5252
else:
53-
self.rounds[self.actual_round].teams[data["team_name"]].players[data["player_name"]].add_character({"name": data["character_name"], "stats": {}, "played_time": [], "kills": [], "deads": [], "offensive_assists": [], "defensive_assists": [], "ultimate_charged": [], "ultimate_use": []})
53+
self.rounds[self.actual_round].teams[data["team_name"]].players[data["player_name"]].add_character({"name": data["character_name"], "stats": {}, "played_time": [], "kills": [], "deads": [], "ultimate_charged": [], "ultimate_use": []})
5454

5555
if len(self.rounds[self.actual_round].teams[data["team_name"]].players[data["player_name"]].characters[data["character_name"]].played_time) > 0:
5656
self.rounds[self.actual_round].teams[data["team_name"]].players[data["player_name"]].characters[data["character_name"]].played_time[-1]["end"] = data["time"]

src/log_analyser/objects/object.py

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ def __init__(self, class_model, **kwargs):
66

77
self.from_json_ok = True
88
self.class_name = self.__class__.__name__
9+
self.class_model = class_model
910

1011
for key, value in kwargs.items():
1112
if key in class_model:
@@ -25,9 +26,15 @@ def __init__(self, class_model, **kwargs):
2526

2627
def export_json_recursive(self, data):
2728
if issubclass(type(data), Object):
29+
2830
dict_class = data.__dict__.copy()
29-
dict_class.pop("from_json_ok")
30-
return data.export_json_recursive(dict_class)
31+
dict_class_final = dict_class.copy()
32+
33+
for key, value in dict_class.items():
34+
if not key in data.class_model:
35+
dict_class_final.pop(key)
36+
37+
return data.export_json_recursive(dict_class_final)
3138
elif isinstance(data, datetime):
3239
return data.strftime("%Y-%m-%d %H:%M:%S")
3340
elif isinstance(data, list):
@@ -40,11 +47,15 @@ def export_json_recursive(self, data):
4047
def export_json(self):
4148

4249
dict_class = self.__dict__.copy()
43-
dict_class.pop("from_json_ok")
44-
for key, value in dict_class.items():
45-
dict_class[key] = self.export_json_recursive(value)
4650

47-
return json.dumps(dict_class, indent=4, sort_keys=True, default=str)
51+
dict_class_final = dict_class.copy()
52+
53+
for key, value in dict_class.items():
54+
if not key in self.class_model:
55+
dict_class_final.pop(key)
56+
else:
57+
dict_class_final[key] = self.export_json_recursive(value)
58+
return json.dumps(dict_class_final, indent=4, sort_keys=True, default=str)
4859

4960
def convert_timefile_to_datetime(self, time_string):
5061

src/main.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@ class DatastrikePythonProcessing:
88
def __init__(self):
99

1010
self.running = True
11-
12-
11+
1312
self.producer_thread = ProducerThread("localhost:29093")
1413

1514
self.consumer_thread = ConsumerThread("localhost:29093")

0 commit comments

Comments
 (0)