5 from django.db.models import F, Q
6 from planetstack.config import Config
7 from observer.syncstep import SyncStep
8 from core.models import Service
9 from requestrouter.models import RequestRouterService
10 from util.logger import Logger, logging
12 parentdir = os.path.join(os.path.dirname(__file__),"..")
13 sys.path.insert(0,parentdir)
15 from rrlib import RequestRouterLibrary
17 logger = Logger(level=logging.INFO)
19 class SyncRequestRouterService(SyncStep, RequestRouterLibrary):
20 provides=[RequestRouterService]
23 def __init__(self, **args):
24 SyncStep.__init__(self, **args)
25 RequestRouterLibrary.__init__(self)
27 def fetch_pending(self):
29 ret = RequestRouterService.objects.filter(Q(enacted__lt=F('updated')) | Q(enacted=None))
35 def sync_record(self, rr_service):
37 print "syncing service!"
38 logger.info("sync'ing rr_service %s" % str(rr_service))
39 self.gen_slice_file(rr_service)