Skip to content
This repository has been archived by the owner on Feb 12, 2020. It is now read-only.

Commit

Permalink
simplify start service code; get rid of start * services
Browse files Browse the repository at this point in the history
  • Loading branch information
gotcha committed Nov 12, 2012
1 parent 3891a13 commit eb7e8f8
Showing 1 changed file with 9 additions and 42 deletions.
51 changes: 9 additions & 42 deletions src/z3c/taskqueue/startup.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,18 +40,9 @@ def databaseOpened(event, productName='z3c.taskqueue'):
startSpecifications = getStartSpecifications(configuration)

for sitesIdentifier, servicesIdentifier in startSpecifications:
startedAnything = False
sites = getSites(sitesIdentifier, root_folder)
for site in sites:
if servicesIdentifier == '*':
started = startAllServices(site, root_folder)
else:
started = startOneService(site, servicesIdentifier)
startedAnything = startedAnything or started

if sitesIdentifier == "*" and not startedAnything:
msg = 'no services started by directive *@%s'
log.warn(msg % servicesIdentifier)
startOneService(site, servicesIdentifier)


def getRootFolder(event):
Expand Down Expand Up @@ -107,23 +98,6 @@ def getSite(siteName, root_folder):
return site


def startAllServices(site, root_folder):
startedAnything = False
services = getAllServices(site, root_folder)
for service in services:
started = startService(service)
if started:
siteName = getSiteName(site)
msg = 'service %s on site %s started'
log.info(msg % (service.__name__, siteName))
startedAnything = startedAnything or started
if not startedAnything:
msg = 'no services started for site %s'
siteName = getSiteName(site)
log.warn(msg % siteName)
return startedAnything


def getAllServices(site, root_folder):
sm = site.getSiteManager()
services = list(
Expand All @@ -139,14 +113,6 @@ def getAllServices(site, root_folder):
return services


def startService(service):
if not service.isProcessing():
service.startProcessing()
return service.isProcessing()
else:
return False


def getSiteName(site):
siteName = getattr(site, '__name__', '')
if siteName is None:
Expand All @@ -157,14 +123,15 @@ def getSiteName(site):
def startOneService(site, serviceName):
service = getService(site, serviceName)
if service is not None:
started = startService(service)
if started:
siteName = getSiteName(site)
msg = 'service %s on site %s started'
log.info(msg % (serviceName, siteName))
return started
if not service.isProcessing():
service.startProcessing()
if service.isProcessing():
siteName = getSiteName(site)
msg = 'service %s on site %s started'
log.info(msg % (serviceName, siteName))
return service
else:
return False
return None


def getService(site, serviceName):
Expand Down

0 comments on commit eb7e8f8

Please sign in to comment.