diff -r 4cf5e664c847 -r 3406d3bf05d4 iro/job.py --- a/iro/job.py Wed Mar 21 19:41:55 2012 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,121 +0,0 @@ -# -*- coding: utf-8 -*- -#Copyright (C) 2009 Sandro Knauß - -#This program is free software; you can redistribute it and/or modify it under the terms -#of the GNU General Public License as published by the Free Software Foundation; -#either version 3 of the License, or any later version. -#This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; -#without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -#See the GNU General Public License for more details. - -#You should have received a copy of the GNU General Public License -#along with this program; if not, see . - -class Job(object): - ''' - Basic class for all jobs - ''' - def __init__(self,providerlist,provider, name): - self.providerlist=providerlist - self.provider=provider - self.name=name - self.status = "init" - self.dStatus={"good":[], "failed":[]} - self.id=None - self.acounting=None - - def setAcounting(self,ac): - self.acounting=ac - - def setId(self, id): - self.id=id - if self.acounting: - self.acounting.setId(id) - - def start(self,indifier=None): - self.indifier=indifier - self.status = "started" - - def stop(self): - self.status = "stopped" - - def setLog(self,log): - self.log=log - - def getStatus(self,detailed=False): - if detailed and self.status == "started" or self.status == "sended": - return self.status, self.dStatus - return self.status,{} - - def setStatus(self,status): - self.status=status - - def getName(self): - return self.name - - def getProvider(self): - return None - - def addGood(self, good): - if self.acounting: - self.acounting.addGood(good) - if type(good) == list: - self.dStatus['good']=self.dStatus['good']+good - else: - self.dStatus['good'].append(good) - - def addFailed(self, failed): - if self.acounting: - self.acounting.addFailed(failed) - if type(failed) == list: - self.dStatus['failed']=self.dStatus['failed']+failed - else: - self.dStatus['failed'].append(failed) - -class MessageJob(Job): - ''' - A specialized class for smsjobs - ''' - def __init__(self,providerlist,provider, name, message,recipients): - self.message=message - self.recipients=recipients - Job.__init__(self,providerlist,provider, name) - - def stop(self): - pass - - def start(self, id=None): - Job.start(self,id) - self.getProvider().setJob(self) - self.message.sendto(self.getProvider(), self.recipients) - self.status="sended" - - def getMessage(self): - return self.message - - def getRecipients(self): - return self.recipients - - -class SMSJob(MessageJob): - def __init__(self,providerlist,provider, name, message,recipients): - MessageJob.__init__(self,providerlist,provider, name, message,recipients) - - def getProvider(self): - return self.providerlist.getProvider("sms", self.provider) - -class FAXJob(MessageJob): - def __init__(self,providerlist,provider, name, message,recipients): - MessageJob.__init__(self,providerlist,provider, name, message,recipients) - - def getProvider(self): - return self.providerlist.getProvider("fax", self.provider) - -class MailJob(MessageJob): - def __init__(self,providerlist,provider, name, message,recipients): - MessageJob.__init__(self,providerlist,provider, name, message,recipients) - - def getProvider(self): - return self.providerlist.getProvider("mail", self.provider) - -