You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
1.6 KiB
57 lines
1.6 KiB
8 years ago
|
import time
|
||
|
from multiprocessing import Process
|
||
|
from cookiespool.tester import *
|
||
|
from cookiespool.config import *
|
||
|
from cookiespool.api import app
|
||
|
import os
|
||
|
import signal
|
||
|
|
||
|
|
||
|
class Scheduler(object):
|
||
|
@staticmethod
|
||
|
def valid_cookie(cycle=CYCLE):
|
||
|
while True:
|
||
|
print('Checking Cookies')
|
||
|
try:
|
||
|
for name, cls in TESTER_MAP.items():
|
||
|
tester = eval(cls + '()')
|
||
|
tester.run()
|
||
|
print('Tester Finished')
|
||
|
del tester
|
||
|
time.sleep(cycle)
|
||
|
except Exception as e:
|
||
|
print(e.args)
|
||
|
|
||
|
@staticmethod
|
||
|
def generate_cookie(cycle=CYCLE):
|
||
|
while True:
|
||
|
print('Generating Cookies')
|
||
|
try:
|
||
|
for name, cls in GENERATOR_MAP.items():
|
||
|
generator = eval(cls + '()')
|
||
|
generator.run()
|
||
|
print('Generator Finished')
|
||
|
generator.close()
|
||
|
print('Deleted Generator')
|
||
|
time.sleep(cycle)
|
||
|
except Exception as e:
|
||
|
print(e.args)
|
||
|
|
||
|
@staticmethod
|
||
|
def api():
|
||
|
app.run(host=API_HOST, port=API_PORT)
|
||
|
|
||
|
def run(self):
|
||
|
if GENERATOR_PROCESS:
|
||
|
generate_process = Process(target=Scheduler.generate_cookie)
|
||
|
generate_process.start()
|
||
|
|
||
|
if VALID_PROCESS:
|
||
|
valid_process = Process(target=Scheduler.valid_cookie)
|
||
|
valid_process.start()
|
||
|
|
||
|
if API_PROCESS:
|
||
|
api_process = Process(target=Scheduler.api)
|
||
|
api_process.start()
|
||
|
|