コード例 #1
0
ファイル: wizard_helper.py プロジェクト: ISA-tools/COPO
    def save_samples(self, generated_samples, sample_type):
        bulk = Sample().get_collection_handle().initialize_unordered_bulk_op()
        for sample in generated_samples:
            auto_fields = dict()
            auto_fields[Sample().get_qualified_field("name")] = sample["name"]
            auto_fields[Sample().get_qualified_field("sample_type")] = sample_type

            # set qualified path for attributes
            for k, v in sample["attributes"].items():
                if k:
                    auto_fields[Sample().get_qualified_field(k)] = v

            kwargs = dict()
            kwargs["target_id"] = str()
            kwargs["validate_only"] = True # preventing save per record in order to do bulk save

            record = Sample(profile_id=self.profile_id).save_record(auto_fields, **kwargs)
            bulk.insert(record)
        bulk.execute()

        return True