def send_data(self): headers_barcodes = [ELEMENT_RUN_ELEMENT_ID, ELEMENT_RUN_NAME, ELEMENT_LANE, ELEMENT_PC_PASS_FILTER, ELEMENT_PROJECT, ELEMENT_LIBRARY_INTERNAL_ID, ELEMENT_SAMPLE_INTERNAL_ID, ELEMENT_BARCODE, ELEMENT_NB_READS_PASS_FILTER, ELEMENT_PC_READ_IN_LANE, ELEMENT_YIELD, ELEMENT_PC_Q30_R1, ELEMENT_PC_Q30_R2] headers_samples = [ELEMENT_PROJECT, ELEMENT_LIBRARY_INTERNAL_ID, ELEMENT_SAMPLE_INTERNAL_ID, ELEMENT_NB_READS_PASS_FILTER, ELEMENT_YIELD, ELEMENT_PC_Q30_R1, ELEMENT_PC_Q30_R2] headers_unexpected = [ELEMENT_RUN_ELEMENT_ID, ELEMENT_RUN_NAME, ELEMENT_LANE, ELEMENT_BARCODE, ELEMENT_NB_READS_PASS_FILTER, ELEMENT_PC_READ_IN_LANE] cfg = Configuration() #Send run elements array_json = format_info(self.barcodes_info.values(), headers_barcodes, style='array') url=cfg.query('rest_api','url') + 'run_elements/' for payload in array_json: if not post_entry(url, payload): id = payload.pop(ELEMENT_RUN_ELEMENT_ID.key) patch_entry(url, payload, **{ELEMENT_RUN_ELEMENT_ID.key:id}) #Send unexpected barcodes array_json = format_info(self.unexpected_barcode_info.values(), headers_unexpected, style='array') url=cfg.query('rest_api','url') + 'unexpected_barcodes/' for payload in array_json: if not post_entry(url, payload): id = payload.pop(ELEMENT_RUN_ELEMENT_ID.key) patch_entry(url, payload, **{ELEMENT_RUN_ELEMENT_ID.key:id}) #Send samples information array_json = format_info(self.libraries_info.values(), headers_samples, style='array') url=cfg.query('rest_api','url') + 'samples/' for payload in array_json: lib_id = {ELEMENT_LIBRARY_INTERNAL_ID.key:payload.get(ELEMENT_LIBRARY_INTERNAL_ID.key)} if not post_entry(url, payload): patch_entry(url, payload, **lib_id)
def send_data(self): cfg = Configuration() headers_samples = [ELEMENT_PROJECT, ELEMENT_LIBRARY_INTERNAL_ID, ELEMENT_SAMPLE_INTERNAL_ID, ELEMENT_NB_READS_PASS_FILTER, ELEMENT_YIELD, ELEMENT_PC_Q30_R1, ELEMENT_PC_Q30_R2] array_json = format_info(self.all_info, headers_samples, style='array') url=cfg.query('rest_api','url') + 'samples/' for payload in array_json: if not post_entry(url, payload): id = payload.pop(ELEMENT_LIBRARY_INTERNAL_ID.key) patch_entry(url, payload, **{ELEMENT_LIBRARY_INTERNAL_ID.key:id})
def write_report_json(self): return format_info(self.all_info, self.headers, style='json')
def write_report_wiki(self): page_lines=[] page_lines.append('h1. Mapping Statistics') page_lines.extend(format_info(self.all_info, self.headers, style='wiki')) return '\n'.join(page_lines)
def _generate_unexpected_per_lane_table(self, lane): return format_info([barcode for barcode in self.unexpected_barcode_info.values() if barcode[ELEMENT_LANE] == lane], self.headers_unexpected)
def _generate_sample_per_lane_table(self, lane): return format_info([barcode for barcode in self.barcodes_info.values() if barcode[ELEMENT_LANE] == lane], self.headers_barcodes)
def _generate_sample_summary_table(self): return format_info([self.libraries_info[library] for library in sorted(self.libraries_info)], self.headers_samples)
def _generate_lane_summary_table(self): return format_info([self.lanes_info[lane] for lane in sorted(self.lanes_info)], self.headers_lane)