Use `json.dump` in `FileExfiltrationWriter` (#15095)
To directly write to the open file, instead of writing to an in-memory string first.
This commit is contained in:
parent
91f8de7b56
commit
6def779a1a
|
@ -0,0 +1 @@
|
|||
Refactor writing json data in `FileExfiltrationWriter`.
|
|
@ -149,7 +149,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
|||
|
||||
with open(events_file, "a") as f:
|
||||
for event in events:
|
||||
print(json.dumps(event.get_pdu_json()), file=f)
|
||||
json.dump(event.get_pdu_json(), fp=f)
|
||||
|
||||
def write_state(
|
||||
self, room_id: str, event_id: str, state: StateMap[EventBase]
|
||||
|
@ -162,7 +162,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
|||
|
||||
with open(event_file, "a") as f:
|
||||
for event in state.values():
|
||||
print(json.dumps(event.get_pdu_json()), file=f)
|
||||
json.dump(event.get_pdu_json(), fp=f)
|
||||
|
||||
def write_invite(
|
||||
self, room_id: str, event: EventBase, state: StateMap[EventBase]
|
||||
|
@ -178,7 +178,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
|||
|
||||
with open(invite_state, "a") as f:
|
||||
for event in state.values():
|
||||
print(json.dumps(event), file=f)
|
||||
json.dump(event, fp=f)
|
||||
|
||||
def write_knock(
|
||||
self, room_id: str, event: EventBase, state: StateMap[EventBase]
|
||||
|
@ -194,7 +194,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
|||
|
||||
with open(knock_state, "a") as f:
|
||||
for event in state.values():
|
||||
print(json.dumps(event), file=f)
|
||||
json.dump(event, fp=f)
|
||||
|
||||
def write_profile(self, profile: JsonDict) -> None:
|
||||
user_directory = os.path.join(self.base_directory, "user_data")
|
||||
|
@ -202,7 +202,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
|||
profile_file = os.path.join(user_directory, "profile")
|
||||
|
||||
with open(profile_file, "a") as f:
|
||||
print(json.dumps(profile), file=f)
|
||||
json.dump(profile, fp=f)
|
||||
|
||||
def write_devices(self, devices: List[JsonDict]) -> None:
|
||||
user_directory = os.path.join(self.base_directory, "user_data")
|
||||
|
@ -211,7 +211,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
|||
|
||||
for device in devices:
|
||||
with open(device_file, "a") as f:
|
||||
print(json.dumps(device), file=f)
|
||||
json.dump(device, fp=f)
|
||||
|
||||
def write_connections(self, connections: List[JsonDict]) -> None:
|
||||
user_directory = os.path.join(self.base_directory, "user_data")
|
||||
|
@ -220,7 +220,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
|||
|
||||
for connection in connections:
|
||||
with open(connection_file, "a") as f:
|
||||
print(json.dumps(connection), file=f)
|
||||
json.dump(connection, fp=f)
|
||||
|
||||
def write_account_data(
|
||||
self, file_name: str, account_data: Mapping[str, JsonDict]
|
||||
|
@ -233,7 +233,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
|||
account_data_file = os.path.join(account_data_directory, file_name)
|
||||
|
||||
with open(account_data_file, "a") as f:
|
||||
print(json.dumps(account_data), file=f)
|
||||
json.dump(account_data, fp=f)
|
||||
|
||||
def finished(self) -> str:
|
||||
return self.base_directory
|
||||
|
|
Loading…
Reference in New Issue