def check(self): from omero.cli import CLI from omero.gateway import BlitzGateway cli = CLI() cli.loadplugins() cli.onecmd('login -q') try: gateway = BlitzGateway(client_obj=cli.get_client()) for experiment in self.m["experiments"]: self.check_object(gateway, experiment, "Project") for experiment in self.m["screens"]: self.check_object(gateway, experiment, "Screen") if "map" in self.m: if self.m["experiments"]: study_type = "Project" else: study_type = "Screen" self.check_object(gateway, self.m, study_type) finally: if cli: cli.close() gateway.close()
def main(): parser = Parser() parser.add_login_arguments() parser.add_argument("--orphans", action="store_true") parser.add_argument("--unknown", action="store_true") parser.add_argument("--search", action="store_true") parser.add_argument("--images", action="store_true") parser.add_argument("--copy-from", type=long, default=None) parser.add_argument("--copy-type", default="Image") parser.add_argument("--copy-to", type=long, default=None) parser.add_argument("screen", nargs="?") ns = parser.parse_args() cli = CLI() cli.loadplugins() client = cli.conn(ns) try: query = client.sf.getQueryService() if ns.orphans: orphans(query) elif ns.unknown: unknown(query) elif ns.search: search = client.sf.createSearchService() check_search(query, search) elif not ns.screen: stat_screens(query) else: if ns.copy_to: copy(client, ns.copy_from, ns.copy_type, ns.copy_to) else: for x in stat_plates(query, ns.screen, ns.images): print x finally: cli.close()
def check(obj): from omero.cli import CLI from omero.gateway import BlitzGateway cli = CLI() cli.loadplugins() cli.onecmd('login') try: gateway = BlitzGateway(client_obj=cli.get_client()) remote_obj = gateway.getObject( obj.type, attributes={"name": obj.name}) errors = [] if remote_obj.description != obj.description: errors.append("current:%s\nexpected:%s" % ( remote_obj.description, obj.description)) for al in remote_obj._getAnnotationLinks( ns="openmicroscopy.org/omero/client/mapAnnotation"): mapValue = al.child.mapValue kv_pairs = [(m.name, m.value) for m in mapValue] for i in range(len(kv_pairs)): if kv_pairs[i] != obj.map[i]: errors.append( "current:%s\nexpected:%s" % (kv_pairs[i], obj.map[i])) if not errors: log.info("No annotations mismatch detected") else: for e in errors: log.info("Found some annotations mismatch") print e finally: if cli: cli.close() gateway.close()
def main(): parser = Parser() parser.add_login_arguments() parser.add_argument("--orphans", action="store_true") parser.add_argument("--unknown", action="store_true") parser.add_argument("--search", action="store_true") parser.add_argument("--images", action="store_true") parser.add_argument("--release", default="TODO", help="The name of the release, e.g. 'prod88'") parser.add_argument( "--disable-fsusage", action="store_true", help=("Disable fs usage file size and counts. " "Use this flag if the script is taking too long.")) parser.add_argument( "--format", default="tsv", help=( "Output format, includes 'string', 'csv', 'tsv' (default), and " "'json'. " "'tsv' can be appended to the IDR studies.csv file with no further " "processing. " "All other formats include headers and totals. " "'string' is the most human readable (fixed width columns). ")) parser.add_argument("studies", nargs='*', help="Studies to be processed, default all (idr*)") parser.add_argument('-v', '--verbose', action='count', default=0) ns = parser.parse_args() levels = [logging.WARNING, logging.INFO, logging.DEBUG] level = levels[min(len(levels) - 1, ns.verbose)] logging.basicConfig(level=level, format="%(asctime)s %(levelname)s %(message)s") cli = CLI() cli.loadplugins() client = cli.conn(ns) try: query = client.sf.getQueryService() if ns.orphans: orphans(query) elif ns.unknown: unknown(query, ns.studies) elif ns.search: search = client.sf.createSearchService() check_search(query, search) else: df = stat_top_level(client, ns.studies, release=ns.release, fsusage=(not ns.disable_fsusage), append_totals=(ns.format != 'tsv')) print_stats(df, ns.format) finally: cli.close()
def main(): parser = Parser() parser.add_login_arguments() parser.add_argument("file") parser.add_argument("object") ns = parser.parse_args() cli = CLI() cli.loadplugins() client = cli.conn(ns) try: screen_metadata(client, ns.file, ns.object) finally: cli.close()
def check(self, update=False): from omero.cli import CLI from omero.gateway import BlitzGateway cli = CLI() cli.loadplugins() cli.onecmd('login -q') try: gateway = BlitzGateway(client_obj=cli.get_client()) self.check_study(gateway, update=update) finally: if cli: cli.close() gateway.close()
def run(studyfile, targetstr): try: # `omero shell --login` automatically creates the client object session = client.getSession() cli = None except NameError: cli = CLI() cli.loadplugins() cli.onecmd('login') session = cli.get_client().getSession() try: us = session.getUpdateService() target = ProxyStringType()(targetstr) with open(studyfile) as f: rowkvs = get_pairs(f) links = create_map_annotation([target], rowkvs, ns) ids = us.saveAndReturnIds(links) print 'Created MapAnnotation links: %s' % ids finally: if cli: cli.close()
for ds in project.listChildren(): for img in ds.listChildren(): channels = img.getChannels(noRE=True) lc = channels[channel_index].getLogicalChannel() lc.setName(channel_name) lc.save() if len(sys.argv) < 4: printusage() else: channel_index = int(sys.argv[1]) channel_name = sys.argv[2] target = sys.argv[3].split(':') if target[0] == 'Project': project_id = int(target[1]) else: printusage() cli = CLI() cli.loadplugins() cli.onecmd('login -q') try: conn = BlitzGateway(client_obj=cli.get_client()) rename(conn, project_id, channel_index, channel_name) finally: if cli: cli.close() conn.close()