Пример #1
0
    def export_templates(self, template_id_list):
        templates = self.filter(id__in=template_id_list).select_related(
            'pipeline_template').values()
        pipeline_template_id_list = []
        template = {}
        for tmpl in templates:
            pipeline_template_id_list.append(tmpl['pipeline_template_id'])
            tmpl['pipeline_template_str_id'] = tmpl['pipeline_template_id']
            template[tmpl['id']] = tmpl

        try:
            pipeline_temp_data = PipelineTemplateWebWrapper.export_templates(
                pipeline_template_id_list)
        except SubprocessExpiredError as e:
            raise FlowExportError(e.message)

        all_template_ids = set(pipeline_temp_data['template'].keys())
        additional_template_id = all_template_ids - set(
            pipeline_template_id_list)
        subprocess_temp_list = self.filter(pipeline_template_id__in=additional_template_id) \
            .select_related('pipeline_template') \
            .values()
        for sub_temp in subprocess_temp_list:
            sub_temp['pipeline_template_str_id'] = sub_temp[
                'pipeline_template_id']
            template[sub_temp['id']] = sub_temp

        result = {
            'template': template,
            'pipeline_template_data': pipeline_temp_data
        }
        return result
Пример #2
0
    def export_templates(self, template_id_list):
        templates = list(self.filter(id__in=template_id_list).select_related("pipeline_template").values())
        pipeline_template_id_list = []
        template = {}
        for tmpl in templates:
            pipeline_template_id_list.append(tmpl["pipeline_template_id"])
            tmpl["pipeline_template_str_id"] = tmpl["pipeline_template_id"]
            template[tmpl["id"]] = tmpl

        try:
            pipeline_temp_data = PipelineTemplateWebWrapper.export_templates(pipeline_template_id_list)
        except SubprocessExpiredError as e:
            raise FlowExportError(str(e))

        all_template_ids = set(pipeline_temp_data["template"].keys())
        additional_template_id = all_template_ids - set(pipeline_template_id_list)
        subprocess_temp_list = list(
            self.filter(pipeline_template_id__in=additional_template_id).select_related("pipeline_template").values()
        )
        for sub_temp in subprocess_temp_list:
            sub_temp["pipeline_template_str_id"] = sub_temp["pipeline_template_id"]
            template[sub_temp["id"]] = sub_temp

        result = {
            "template": template,
            "pipeline_template_data": pipeline_temp_data,
            "exporter_version": TEMPLATE_EXPORTER_VERSION,
        }
        return result