aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/bin
diff options
context:
space:
mode:
authorEgor Tensin <Egor.Tensin@gmail.com>2017-01-28 03:19:25 +0300
committerEgor Tensin <Egor.Tensin@gmail.com>2017-01-28 03:19:25 +0300
commite49227975fd10e9f130f46116f905351c17167c4 (patch)
treec2b5f75a5e6a7ec5dbf4eaf080f46a96e3e29ac0 /bin
parentadd abstract classes for db readers/writers (diff)
downloadvk-scripts-e49227975fd10e9f130f46116f905351c17167c4.tar.gz
vk-scripts-e49227975fd10e9f130f46116f905351c17167c4.zip
refactoring
Diffstat (limited to '')
-rw-r--r--bin/mutual_friends.py6
-rw-r--r--bin/online_sessions.py8
-rw-r--r--bin/utils/output.py16
3 files changed, 15 insertions, 15 deletions
diff --git a/bin/mutual_friends.py b/bin/mutual_friends.py
index 3b0576f..1d231b0 100644
--- a/bin/mutual_friends.py
+++ b/bin/mutual_friends.py
@@ -32,7 +32,7 @@ class OutputSinkMutualFriends(metaclass=abc.ABCMeta):
class OutputSinkCSV(OutputSinkMutualFriends):
def __init__(self, fd=sys.stdout):
- self._writer = output.OutputWriterCSV(fd)
+ self._writer = output.FileWriterCSV(fd)
def write_mutual_friends(self, friend_list):
for user in friend_list:
@@ -40,7 +40,7 @@ class OutputSinkCSV(OutputSinkMutualFriends):
class OutputSinkJSON(OutputSinkMutualFriends):
def __init__(self, fd=sys.stdout):
- self._writer = output.OutputWriterJSON(fd)
+ self._writer = output.FileWriterJSON(fd)
def write_mutual_friends(self, friend_list):
self._writer.write(friend_list)
@@ -54,7 +54,7 @@ class OutputFormat(Enum):
@staticmethod
def open_file(path=None):
- return output.open_text_file(path)
+ return output.open_output_text_file(path)
def create_sink(self, fd=sys.stdout):
if self is OutputFormat.CSV:
diff --git a/bin/online_sessions.py b/bin/online_sessions.py
index be3a4f2..f5707c0 100644
--- a/bin/online_sessions.py
+++ b/bin/online_sessions.py
@@ -70,7 +70,7 @@ class OutputConverterCSV:
class OutputSinkCSV(OutputSinkOnlineSessions):
def __init__(self, fd=sys.stdout):
- self._writer = output.OutputWriterCSV(fd)
+ self._writer = output.FileWriterCSV(fd)
_CONVERT_KEY = {
GroupBy.USER: OutputConverterCSV.convert_user,
@@ -127,7 +127,7 @@ class OutputConverterJSON:
class OutputSinkJSON(OutputSinkOnlineSessions):
def __init__(self, fd=sys.stdout):
- self._writer = output.OutputWriterJSON(fd)
+ self._writer = output.FileWriterJSON(fd)
_DURATION_FIELD = 'duration'
@@ -257,9 +257,9 @@ class OutputFormat(Enum):
def open_file(self, path=None):
if self is OutputFormat.PLOT:
- return output.open_binary_file(path)
+ return output.open_output_binary_file(path)
else:
- return output.open_text_file(path)
+ return output.open_output_text_file(path)
def _parse_group_by(s):
try:
diff --git a/bin/utils/output.py b/bin/utils/output.py
index 8954c8b..70c1a3a 100644
--- a/bin/utils/output.py
+++ b/bin/utils/output.py
@@ -8,7 +8,7 @@ import csv
import json
import sys
-class OutputWriterJSON:
+class FileWriterJSON:
def __init__(self, fd=sys.stdout):
self._fd = fd
@@ -16,7 +16,7 @@ class OutputWriterJSON:
self._fd.write(json.dumps(something, indent=3, ensure_ascii=False))
self._fd.write('\n')
-class OutputWriterCSV:
+class FileWriterCSV:
def __init__(self, fd=sys.stdout):
self._writer = csv.writer(fd, lineterminator='\n')
@@ -24,8 +24,8 @@ class OutputWriterCSV:
self._writer.writerow(row)
@contextmanager
-def _open_file(path=None, **kwargs):
- fd = sys.stdout
+def _open_file(path=None, default=None, **kwargs):
+ fd = default
if path is None:
pass
else:
@@ -36,8 +36,8 @@ def _open_file(path=None, **kwargs):
if fd is not sys.stdout:
fd.close()
-def open_text_file(path=None):
- return _open_file(path, mode='w', encoding='utf-8')
+def open_output_text_file(path=None):
+ return _open_file(path, default=sys.stdout, mode='w', encoding='utf-8')
-def open_binary_file(path=None):
- return _open_file(path, mode='wb')
+def open_output_binary_file(path=None):
+ return _open_file(path, default=sys.stdout, mode='wb')