async def get(self): data = {'services': []} service = self.http_server.definition.services[self.service_id] data['services'].append( dict((k, getattr(service, k)) for k in UNHANDLED_SERVICE_KEYS if getattr(service, k) is not None)) data['services'][0]['endpoints'] = self.build_unhandled_requests( self.service_id) imaginary_config = copy.deepcopy(self.http_server.definition.data) imaginary_config['services'] = data['services'] unhandled_data_enabled = False service = self.http_server.definition.services[self.service_id] for rule in self.http_server._apps.apps[ service. internal_http_service_id].default_router.rules[0].target.rules: if rule.target == GenericHandler: if rule.target_kwargs['unhandled_data']: unhandled_data_enabled = True break self.set_header('x-%s-unhandled-data' % PROGRAM.lower(), 'true' if unhandled_data_enabled else 'false') if not self.validate(imaginary_config): # pragma: no cover return self.dump(data)
async def get(self): data = {'services': []} for i, service in enumerate(HttpService.services): endpoints = self.build_unhandled_requests(i) if not endpoints: continue new_service = dict((k, getattr(service, k)) for k in UNHANDLED_SERVICE_KEYS if getattr(service, k) is not None) new_service['endpoints'] = endpoints data['services'].append(new_service) if data['services'] and not self.validate(data): # pragma: no cover return unhandled_data_enabled = False break_parent = False for app in self.http_server._apps.apps: if break_parent: break for rule in app.default_router.rules[0].target.rules: if rule.target == GenericHandler: if rule.target_kwargs['unhandled_data']: unhandled_data_enabled = True if unhandled_data_enabled: break_parent = True break self.set_header('x-%s-unhandled-data' % PROGRAM.lower(), 'true' if unhandled_data_enabled else 'false') self.dump(data)