py27 support (I think) and some clean up
This commit is contained in:
parent
a000de0270
commit
59d56d5c83
|
@ -1,42 +1,15 @@
|
||||||
|
|
||||||
from __future__ import division, print_function, unicode_literals
|
from __future__ import division, print_function, unicode_literals
|
||||||
import sys
|
|
||||||
import os
|
|
||||||
import re
|
|
||||||
import smtplib
|
|
||||||
import socket
|
|
||||||
import time
|
|
||||||
import threading
|
import threading
|
||||||
|
|
||||||
try:
|
try:
|
||||||
import queue
|
import queue
|
||||||
except ImportError:
|
except ImportError:
|
||||||
import Queue as queue
|
import Queue as queue
|
||||||
from glob import glob
|
|
||||||
from shutil import copyfile
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
try:
|
from cps import calibre_db
|
||||||
from StringIO import StringIO
|
from cps import logger
|
||||||
from email.MIMEBase import MIMEBase
|
|
||||||
from email.MIMEMultipart import MIMEMultipart
|
|
||||||
from email.MIMEText import MIMEText
|
|
||||||
except ImportError:
|
|
||||||
from io import StringIO
|
|
||||||
from email.mime.base import MIMEBase
|
|
||||||
from email.mime.multipart import MIMEMultipart
|
|
||||||
from email.mime.text import MIMEText
|
|
||||||
|
|
||||||
from email import encoders
|
|
||||||
from email.utils import formatdate
|
|
||||||
from email.utils import make_msgid
|
|
||||||
from email.generator import Generator
|
|
||||||
from flask_babel import gettext as _
|
|
||||||
|
|
||||||
from cps import calibre_db, db
|
|
||||||
from cps import logger, config
|
|
||||||
from cps.subproc_wrapper import process_open
|
|
||||||
from cps import gdriveutils
|
|
||||||
from flask_babel import gettext as _
|
|
||||||
import abc
|
import abc
|
||||||
|
|
||||||
log = logger.create()
|
log = logger.create()
|
||||||
|
@ -86,9 +59,6 @@ class WorkerThread(threading.Thread):
|
||||||
self.doLock = threading.Lock()
|
self.doLock = threading.Lock()
|
||||||
self.queue = ImprovedQueue()
|
self.queue = ImprovedQueue()
|
||||||
|
|
||||||
# todo: figure this stuff out and where it should goes
|
|
||||||
self.asyncSMTP = None
|
|
||||||
|
|
||||||
self.start()
|
self.start()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
@ -121,13 +91,6 @@ class WorkerThread(threading.Thread):
|
||||||
|
|
||||||
self.queue.task_done()
|
self.queue.task_done()
|
||||||
|
|
||||||
def get_send_status(self):
|
|
||||||
raise NotImplementedError
|
|
||||||
# if self.asyncSMTP:
|
|
||||||
# return self.asyncSMTP.getTransferStatus()
|
|
||||||
# else:
|
|
||||||
# return "0 %"
|
|
||||||
|
|
||||||
def _delete_completed_tasks(self):
|
def _delete_completed_tasks(self):
|
||||||
raise NotImplementedError()
|
raise NotImplementedError()
|
||||||
# for index, task in reversed(list(enumerate(self.UIqueue))):
|
# for index, task in reversed(list(enumerate(self.UIqueue))):
|
||||||
|
@ -140,7 +103,8 @@ class WorkerThread(threading.Thread):
|
||||||
# self.current -= 1
|
# self.current -= 1
|
||||||
# self.last = len(self.queue)
|
# self.last = len(self.queue)
|
||||||
|
|
||||||
class CalibreTask(metaclass=abc.ABCMeta):
|
class CalibreTask:
|
||||||
|
__metaclass__ = abc.ABCMeta
|
||||||
|
|
||||||
def __init__(self, message):
|
def __init__(self, message):
|
||||||
self._progress = 0
|
self._progress = 0
|
||||||
|
|
|
@ -14,12 +14,14 @@ from cps import logger, config
|
||||||
from cps.subproc_wrapper import process_open
|
from cps.subproc_wrapper import process_open
|
||||||
from flask_babel import gettext as _
|
from flask_babel import gettext as _
|
||||||
|
|
||||||
|
from cps.tasks.email import TaskEmail
|
||||||
|
from cps import gdriveutils
|
||||||
log = logger.create()
|
log = logger.create()
|
||||||
|
|
||||||
|
|
||||||
class TaskConvert(CalibreTask):
|
class TaskConvert(CalibreTask):
|
||||||
def __init__(self, file_path, bookid, taskMessage, settings, kindle_mail):
|
def __init__(self, file_path, bookid, taskMessage, settings, kindle_mail):
|
||||||
super().__init__(taskMessage)
|
super(TaskConvert, self).__init__(taskMessage)
|
||||||
self.file_path = file_path
|
self.file_path = file_path
|
||||||
self.bookid = bookid
|
self.bookid = bookid
|
||||||
self.settings = settings
|
self.settings = settings
|
||||||
|
@ -31,14 +33,16 @@ class TaskConvert(CalibreTask):
|
||||||
self.worker_thread = worker_thread
|
self.worker_thread = worker_thread
|
||||||
filename = self._convert_ebook_format()
|
filename = self._convert_ebook_format()
|
||||||
# todo: re-enable this (need to set up gdrive to test with)
|
# todo: re-enable this (need to set up gdrive to test with)
|
||||||
# if filename:
|
if filename:
|
||||||
# if config.config_use_google_drive:
|
if config.config_use_google_drive:
|
||||||
# gdriveutils.updateGdriveCalibreFromLocal()
|
gdriveutils.updateGdriveCalibreFromLocal()
|
||||||
# if curr_task == TASK_CONVERT:
|
if self.kindle_mail:
|
||||||
# self.add_email(self.queue[index]['settings']['subject'], self.queue[index]['path'],
|
# if we're sending to kindle after converting, create a one-off task and run it immediately
|
||||||
# filename, self.queue[index]['settings'], self.queue[index]['kindle'],
|
# todo: figure out how to incorporate this into the progress
|
||||||
# self.UIqueue[index]['user'], self.queue[index]['title'],
|
task = TaskEmail(self.settings['subject'], self.results["path"],
|
||||||
# self.queue[index]['settings']['body'], internal=True)
|
filename, self.settings, self.kindle_mail,
|
||||||
|
self.settings['subject'], self.settings['body'], internal=True)
|
||||||
|
task.start()
|
||||||
|
|
||||||
self._handleSuccess()
|
self._handleSuccess()
|
||||||
pass
|
pass
|
||||||
|
|
|
@ -99,7 +99,7 @@ class EmailSSL(EmailBase, smtplib.SMTP_SSL):
|
||||||
|
|
||||||
class TaskEmail(CalibreTask):
|
class TaskEmail(CalibreTask):
|
||||||
def __init__(self, subject, filepath, attachment, settings, recipient, taskMessage, text, internal=False):
|
def __init__(self, subject, filepath, attachment, settings, recipient, taskMessage, text, internal=False):
|
||||||
super().__init__(taskMessage)
|
super(TaskEmail, self).__init__(taskMessage)
|
||||||
self.subject = subject
|
self.subject = subject
|
||||||
self.attachment = attachment
|
self.attachment = attachment
|
||||||
self.settings = settings
|
self.settings = settings
|
||||||
|
|
|
@ -5,7 +5,7 @@ from cps.services.worker import CalibreTask, STAT_FINISH_SUCCESS
|
||||||
|
|
||||||
class TaskUpload(CalibreTask):
|
class TaskUpload(CalibreTask):
|
||||||
def __init__(self, taskMessage):
|
def __init__(self, taskMessage):
|
||||||
super().__init__(taskMessage)
|
super(TaskUpload, self).__init__(taskMessage)
|
||||||
self.start_time = self.end_time = datetime.now()
|
self.start_time = self.end_time = datetime.now()
|
||||||
self.stat = STAT_FINISH_SUCCESS
|
self.stat = STAT_FINISH_SUCCESS
|
||||||
self.progress = 1
|
self.progress = 1
|
||||||
|
|
Loading…
Reference in New Issue
Block a user