def get_data(self, session): return_internal = is_boolean(self.server.fs_server_config.misc.return_internal_objects) internal_del = is_boolean(self.server.fs_server_config.misc.internal_services_may_be_deleted) out = [] sl = service_list(session, self.request.input.cluster_id, return_internal, False) name_filter = self.request.input.get('name_filter') if name_filter: name_filter = [elem.strip().lower() for elem in name_filter.strip().split() if elem] else: name_filter = [_no_such_service_name] # So it matches nothing for item in sl: if self.request.input.name_filter != '*': skip_item = False for filter in name_filter: if not filter in item.name.lower(): skip_item = True if skip_item: continue item.may_be_deleted = internal_del if item.is_internal else True item.usage = self.server.kvdb.conn.get('{}{}'.format(KVDB.SERVICE_USAGE, item.name)) or 0 out.append(item) return out
def get_data(self, session): out = [] sl = service_list(session, self.request.input.cluster_id, False) internal_del = is_boolean( self.server.fs_server_config.misc.internal_services_may_be_deleted) name_filter = [ elem.strip().lower() for elem in self.request.input.get( 'name_filter', '').strip().split() ] if not name_filter: name_filter = [_no_such_service_name] # So it matches nothing for item in sl: if self.request.input.name_filter != '*': skip_item = False for filter in name_filter: if not filter in item.name.lower(): skip_item = True if skip_item: continue item.may_be_deleted = internal_del if item.is_internal else True item.usage = self.server.kvdb.conn.get('{}{}'.format( KVDB.SERVICE_USAGE, item.name)) or 0 out.append(item) return out
def get_data(self, session): out = [] sl = service_list(session, self.request.input.cluster_id, False) internal_del = is_boolean(self.server.fs_server_config.misc.internal_services_may_be_deleted) for item in sl: item.may_be_deleted = internal_del if item.is_internal else True item.usage = self.server.kvdb.conn.get('{}{}'.format(KVDB.SERVICE_USAGE, item.name)) or 0 out.append(item) return out
def handle(self, *args, **kwargs): params = _get_params(kwargs.get('payload'), ['cluster_id'], 'data.') with closing(self.server.odb.session()) as session: item_list = Element('item_list') db_items = service_list(session, params['cluster_id']) for db_item in db_items: item = Element('item') item.id = db_item.id item.name = db_item.name item.is_active = db_item.is_active item.impl_name = db_item.impl_name item.is_internal = db_item.is_internal item.usage_count = 'TODO getlist' item_list.append(item) return ZATO_OK, etree.tostring(item_list)
def get_service_list(self, cluster_id, needs_columns=False): """ Returns a list of services defined on the given cluster. """ with closing(self.session()) as session: return query.service_list(session, cluster_id, needs_columns)