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 = out_ftp_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.host = db_item.host item.port = db_item.port item.user = db_item.user item.acct = db_item.acct item.timeout = db_item.timeout item.dircache = db_item.dircache item_list.append(item) return ZATO_OK, etree.tostring(item_list)