def main(): global DEBUG_MODE input_ = sys.argv[1] if len(sys.argv) > 2: DEBUG_MODE=True (intervalq,idq,rangeq,sampleq) = snaptron.process_params(input_) #only care about sampleq if len(intervalq) > 0 or len(rangeq['rfilter']) > 0 or snapconf.SNAPTRON_ID_PATT.search(input_): sys.stderr.write("bad input asking for intervals and/or ranges, only take sample queries and/or sample ids, exiting\n") sys.exit(-1) sample_map = load_sample_metadata(snapconf.SAMPLE_MD_FILE) if DEBUG_MODE: sys.stderr.write("loaded %d samples metadata\n" % (len(sample_map))) snaptron_ids = set() #we're just streaming back sample metadata query_samples(sampleq,sample_map,snaptron_ids,stream_sample_metadata=True)
def main(): global DEBUG_MODE input_ = sys.argv[1] if len(sys.argv) > 2: DEBUG_MODE=True (intervalq,rangeq,sampleq,idq) = (None,None,None,None) ra = snaptron.default_region_args sys.stderr.write("INPUT_ %s\n" % input_) if input_[0] == '[' or input_[1] == '[' or input_[2] == '[': (or_intervals,or_ranges,or_samples,or_ids,ra) = snaptron.process_post_params(input_) (intervalq,rangeq,sampleq,idq) = (or_intervals[0],or_ranges[0],or_samples[0],or_ids[0]) else: #just stream back the whole sample metadata file if 'all=1' in input_: #sample_map = load_sample_metadata(snapconf.SAMPLE_MD_FILE) cmd = 'cat' if '.gz' in snapconf.SAMPLE_MD_FILE: cmd = 'zcat' subp = subprocess.Popen('%s %s' % (cmd,snapconf.SAMPLE_MD_FILE),shell=True,stdin=None,stdout=sys.stdout,stderr=sys.stderr) subp.wait() return #update support simple '&' CGI format (intervalq,idq,rangeq,sampleq,ra) = snaptron.process_params(input_) #only care about sampleq if len(intervalq) > 0 or len(rangeq['rfilter']) > 0 or snapconf.SNAPTRON_ID_PATT.search(input_): sys.stderr.write("bad input asking for intervals and/or ranges, only take sample queries and/or sample ids, exiting\n") sys.exit(-1) sample_map = load_sample_metadata(snapconf.SAMPLE_MD_FILE) if DEBUG_MODE: sys.stderr.write("loaded %d samples metadata\n" % (len(sample_map))) #main decision cases if len(idq) > 0: query_by_sample_ids(idq,sample_map,ra) elif len(sampleq) > 0: snaptron_ids = set() #we're just streaming back sample metadata query_samples(sampleq,sample_map,snaptron_ids,ra,stream_sample_metadata=True)
def main(): global DEBUG_MODE input_ = sys.argv[1] if len(sys.argv) > 2: DEBUG_MODE=True (intervalq,rangeq,sampleq,idq) = (None,None,None,None) ra = snaptron.default_region_args sys.stderr.write("INPUT_ %s\n" % input_) if input_[0] == '[' or input_[1] == '[' or input_[2] == '[': (or_intervals,or_ranges,or_samples,or_ids,ra) = snaptron.process_post_params(input_) (intervalq,rangeq,sampleq,idq) = (or_intervals[0],or_ranges[0],or_samples[0],or_ids[0]) else: #just stream back the whole sample metadata file if 'all=1' in input_: #sample_map = load_sample_metadata(snapconf.SAMPLE_MD_FILE) cmd = 'cat' if '.gz' in snapconf.SAMPLE_MD_FILE: cmd = 'zcat' subp = subprocess.Popen('%s %s' % (cmd,snapconf.SAMPLE_MD_FILE),shell=True,stdin=None,stdout=sys.stdout,stderr=sys.stderr) subp.wait() return #update support simple '&' CGI format (intervalq,idq,rangeq,sampleq,ra) = snaptron.process_params(input_) #only care about sampleq if len(intervalq) > 0 or len(rangeq['rfilter']) > 0 or snapconf.SNAPTRON_ID_PATT.search(input_): sys.stderr.write("bad input asking for intervals and/or ranges, only take sample queries and/or sample ids, exiting\n") sys.exit(-1) sample_map = load_sample_metadata(snapconf.SAMPLE_MD_FILE) if DEBUG_MODE: sys.stderr.write("loaded %d samples metadata\n" % (len(sample_map))) #main decision cases if len(idq) > 0: query_by_sample_ids(idq,sample_map,ra) elif len(sampleq) > 0: snaptron_ids = set() #we're just streaming back sample metadata query_samples(sampleq,sample_map,snaptron_ids,ra,stream_sample_metadata=True)