mirror of
https://github.com/gryf/slack-backup.git
synced 2025-12-17 11:30:25 +01:00
Moved write_message to Reporter base class
This commit is contained in:
@@ -70,9 +70,12 @@ class Reporter(object):
|
|||||||
"""Return relative log file name """
|
"""Return relative log file name """
|
||||||
return os.path.join(self.out, name + self.ext)
|
return os.path.join(self.out, name + self.ext)
|
||||||
|
|
||||||
def write_msg(self, message, log):
|
def write_msg(self, messages, log):
|
||||||
"""Write message to file"""
|
"""Write message to file"""
|
||||||
raise NotImplementedError()
|
with open(log, "a") as fobj:
|
||||||
|
for message in messages:
|
||||||
|
data = self._process_message(message)
|
||||||
|
fobj.write(data['tpl'].format(**data))
|
||||||
|
|
||||||
def _get_symbol(self, item):
|
def _get_symbol(self, item):
|
||||||
"""Return appropriate item depending on the selected theme"""
|
"""Return appropriate item depending on the selected theme"""
|
||||||
@@ -145,11 +148,10 @@ class TextReporter(Reporter):
|
|||||||
utils.makedirs(self.out)
|
utils.makedirs(self.out)
|
||||||
self._max_len = 0
|
self._max_len = 0
|
||||||
|
|
||||||
return
|
|
||||||
|
|
||||||
def generate(self):
|
def generate(self):
|
||||||
"""Generate raport"""
|
"""Generate raport"""
|
||||||
for channel in self.channels:
|
for channel in self.channels:
|
||||||
|
messages = []
|
||||||
log_path = self.get_log_path(channel.name)
|
log_path = self.get_log_path(channel.name)
|
||||||
self._set_max_len(channel)
|
self._set_max_len(channel)
|
||||||
try:
|
try:
|
||||||
@@ -160,12 +162,9 @@ class TextReporter(Reporter):
|
|||||||
for message in self.q(o.Message).\
|
for message in self.q(o.Message).\
|
||||||
filter(o.Message.channel == channel).\
|
filter(o.Message.channel == channel).\
|
||||||
order_by(o.Message.ts).all():
|
order_by(o.Message.ts).all():
|
||||||
self.write_msg(message, log_path)
|
messages.append(message)
|
||||||
|
|
||||||
def write_msg(self, message, log):
|
self.write_msg(messages, log_path)
|
||||||
"""Write message to file"""
|
|
||||||
with open(log, "a") as fobj:
|
|
||||||
fobj.write(self._format_message(message))
|
|
||||||
|
|
||||||
def _set_max_len(self, channel):
|
def _set_max_len(self, channel):
|
||||||
"""calculate max_len for sepcified channel"""
|
"""calculate max_len for sepcified channel"""
|
||||||
|
|||||||
Reference in New Issue
Block a user