Ejemplo n.º 1
0
 def get(self):
     id = int(self.request.url.rsplit('/', 3)[1])
     org = Organization.get_by_id(id)
     key = self.request.url.rsplit('/', 1)[1]
     heart = Heart.get_by_key_name(key, parent=org)
     flatlines = Flatline.all().ancestor(heart).order("-start").fetch(10)
     self.response.headers['Content-Type'] = 'application/json'
     self.response.out.write(json.dumps({'title': heart.title or heart.key().id_or_name(), 'time_zone': heart.time_zone, 'cron': heart.cron, 'threshold': heart.threshold, 'last_pulse': str(heart.last_pulse), 'flatlines': map(lambda f: {'start': str(f.start), 'end': str(f.end), 'active': str(f.active)}, flatlines)}))
Ejemplo n.º 2
0
 def delete(self):
     id = int(self.request.url.rsplit('/', 3)[1])
     org = Organization.get_by_id(id)
     key = self.request.url.rsplit('/', 1)[1]
     heart = Heart.get_by_key_name(key, parent=org)
     flatlines = Flatline.all(keys_only=True).ancestor(heart).order("-start")
     heart.delete()
     for f in flatlines:
         db.delete(f)
Ejemplo n.º 3
0
 def put(self):
     payload = json.loads(self.request.body)
     id = int(self.request.url.rsplit('/', 3)[1])
     org = Organization.get_by_id(id)
     key = self.request.url.rsplit('/', 1)[1]
     heart = Heart.get_by_key_name(key, parent=org)
     heart.title = str(payload['title'])
     heart.threshold = int(payload['threshold'])
     heart.cron = str(payload['cron'])
     heart.time_zone = str(payload['time_zone'])
     croniter(heart.cron)
     heart.put()
Ejemplo n.º 4
0
 def put(self):
     payload = json.loads(self.request.body)
     id = int(self.request.url.rsplit('/', 3)[1])
     org = Organization.get_by_id(id)
     key = self.request.url.rsplit('/', 1)[1]
     heart = Heart.get_by_key_name(key, parent=org)
     heart.title = str(payload['title'])
     heart.check_deactivation(int(payload['threshold']))
     heart.threshold = int(payload['threshold'])
     heart.maintenance_day = datetime.strptime(payload['maintenance_day'], '%Y-%m-%d').date() if len( payload['maintenance_day'] ) > 0 else None
     heart.cron = str(payload['cron'])
     heart.time_zone = str(payload['time_zone'])
     croniter(heart.cron)
     heart.check_maintenance()
     heart.put()
Ejemplo n.º 5
0
    def get(self):
        id = int(self.request.url.rsplit('/', 3)[1])
        org = Organization.get_by_id(id)
        key = self.request.url.rsplit('/', 1)[1]
        
        heart = Heart.get_by_key_name(key, parent=org)
        flatlines = Flatline.all().ancestor(heart).order("-active").order("-start").order("-end").fetch(10)

        response = {'organization': indextransform(org),
                    'title': heart.title or heart.key().id_or_name(), 
                    'time_zone': heart.time_zone, 
                    'cron': heart.cron, 
                    'threshold': heart.threshold, 
                    'last_pulse': str(heart.last_pulse or ''), 
                    'maintenance_day': str(heart.maintenance_day or ''), 
                    'flatlines': map(flatlinetransform, flatlines),
                    'calculated_flatline': str(heart.calculate_next_flatline() or '')
                    }

        self.response.headers['Content-Type'] = 'application/json'
        self.response.out.write(json.dumps(response))