def Run(self, args): """This is what gets called when the user runs this command. Args: args: an argparse namespace, All the arguments that were provided to this command invocation. Returns: A list of variants that meet the search criteria. """ genomics_util.ValidateLimitFlag(args.limit) genomics_util.ValidateLimitFlag(args.limit_calls, 'limit_calls') apitools_client = self.context[lib.GENOMICS_APITOOLS_CLIENT_KEY] req_class = (self.context[ lib.GENOMICS_MESSAGES_MODULE_KEY].SearchVariantsRequest) request = req_class(variantSetIds=[args.variant_set_id], callSetIds=args.call_set_ids, referenceName=args.reference_name, start=args.start, end=args.end, maxCalls=args.limit_calls) return apitools_base.list_pager.YieldFromList( apitools_client.variants, request, limit=args.limit, method='Search', batch_size_attribute='pageSize', batch_size=args.limit, # Use limit if any, else server default. field='variants')
def Run(self, args): """Run 'operations list'. Args: args: argparse.Namespace, The arguments that this command was invoked with. Returns: The list of operations for this project. Raises: HttpException: An http error response was received while executing api request. """ genomics_util.ValidateLimitFlag(args.limit) apitools_client = self.context[lib.GENOMICS_APITOOLS_CLIENT_KEY] genomics_messages = self.context[lib.GENOMICS_MESSAGES_MODULE_KEY] if args.where: args.where += ' AND ' args.where += 'projectId=%s' % genomics_util.GetProjectId() request = genomics_messages.GenomicsOperationsListRequest( name='operations', filter=args.where) return list_pager.YieldFromList( apitools_client.operations, request, limit=args.limit, batch_size_attribute='pageSize', batch_size=args.limit, # Use limit if any, else server default. field='operations')
def Run(self, args): """Run 'datasets list'. Args: args: argparse.Namespace, The arguments that this command was invoked with. Returns: The list of datasets for this project. Raises: HttpException: An http error response was received while executing api request. """ genomics_util.ValidateLimitFlag(args.limit) apitools_client = self.context[lib.GENOMICS_APITOOLS_CLIENT_KEY] req_class = (self.context[ lib.GENOMICS_MESSAGES_MODULE_KEY].GenomicsDatasetsListRequest) request = req_class(projectId=genomics_util.GetProjectId()) return list_pager.YieldFromList( apitools_client.datasets, request, limit=args.limit, batch_size_attribute='pageSize', batch_size=args.limit, # Use limit if any, else server default. field='datasets')
def Run(self, args): """Run 'callsets list'. Args: args: argparse.Namespace, The arguments that this command was invoked with. Returns: The list of callsets matching the given variant set ids. Raises: HttpException: An http error response was received while executing api request. """ genomics_util.ValidateLimitFlag(args.limit) apitools_client = self.context[lib.GENOMICS_APITOOLS_CLIENT_KEY] req_class = (self.context[ lib.GENOMICS_MESSAGES_MODULE_KEY].SearchCallSetsRequest) request = req_class(name=args.name, variantSetIds=args.variant_set_ids) return apitools_base.list_pager.YieldFromList( apitools_client.callsets, request, method='Search', limit=args.limit, batch_size_attribute='pageSize', batch_size=args.limit, # Use limit if any, else server default. field='callSets')
def Run(self, args): """Run 'references list'. Args: args: argparse.Namespace, The arguments that this command was invoked with. Returns: The list of matching references. Raises: HttpException: An http error response was received while executing api request. """ genomics_util.ValidateLimitFlag(args.limit) apitools_client = self.context[lib.GENOMICS_APITOOLS_CLIENT_KEY] req_class = (self.context[ lib.GENOMICS_MESSAGES_MODULE_KEY].SearchReferencesRequest) request = req_class(md5checksums=args.md5checksums, accessions=args.accessions, referenceSetId=args.reference_set_id) return list_pager.YieldFromList( apitools_client.references, request, method='Search', limit=args.limit, batch_size_attribute='pageSize', batch_size=args.limit, # Use limit if any, else server default. field='references')
def Run(self, args): """This is what gets called when the user runs this command. Args: args: an argparse namespace, All the arguments that were provided to this command invocation. Returns: A list of reads that meet the search criteria. """ genomics_util.ValidateLimitFlag(args.limit) apitools_client = self.context[lib.GENOMICS_APITOOLS_CLIENT_KEY] messages = self.context[lib.GENOMICS_MESSAGES_MODULE_KEY] fields = genomics_util.GetQueryFields(self.GetReferencedKeyNames(args), 'alignments') if fields: global_params = messages.StandardQueryParameters(fields=fields) else: global_params = None pager = list_pager.YieldFromList( apitools_client.reads, messages.SearchReadsRequest( readGroupSetIds=[args.read_group_set_id], referenceName=args.reference_name, start=args.start, end=args.end), global_params=global_params, limit=args.limit, method='Search', batch_size_attribute='pageSize', batch_size=args.page_size, field='alignments') return genomics_util.ReraiseHttpExceptionPager(pager)
def Run(self, args): """This is what gets called when the user runs this command. Args: args: an argparse namespace, All the arguments that were provided to this command invocation. Returns: A list of variants that meet the search criteria. """ genomics_util.ValidateLimitFlag(args.limit) genomics_util.ValidateLimitFlag(args.limit_calls, 'limit-calls') apitools_client = self.context[lib.GENOMICS_APITOOLS_CLIENT_KEY] messages = self.context[lib.GENOMICS_MESSAGES_MODULE_KEY] # Filter down to just the displayed fields, if we know we're using the # default format. This appears to only be the case when --format is unset. global_params = None if not args.format: global_params = messages.StandardQueryParameters( fields=_API_FIELDS) variant_set_id = [args.variant_set_id] if args.variant_set_id else [] pager = list_pager.YieldFromList( apitools_client.variants, messages.SearchVariantsRequest(variantSetIds=variant_set_id, callSetIds=args.call_set_ids, referenceName=args.reference_name, start=args.start, end=args.end, maxCalls=args.limit_calls), global_params=global_params, limit=args.limit, method='Search', batch_size_attribute='pageSize', batch_size=args.limit, # Use limit if any, else server default. field='variants') return genomics_util.ReraiseHttpExceptionPager(pager, self.RewriteError)
def Run(self, args): """Run 'readgroupsets list'. Args: args: argparse.Namespace, The arguments that this command was invoked with. Returns: The list of read group sets matching the given dataset ids. Raises: HttpException: An http error response was received while executing api request. """ genomics_util.ValidateLimitFlag(args.limit) apitools_client = self.context[lib.GENOMICS_APITOOLS_CLIENT_KEY] req_class = (self.context[ lib.GENOMICS_MESSAGES_MODULE_KEY].SearchReadGroupSetsRequest) messages = self.context[lib.GENOMICS_MESSAGES_MODULE_KEY] fields = genomics_util.GetQueryFields(self.GetReferencedKeyNames(args), 'readGroupSets') if fields: global_params = messages.StandardQueryParameters(fields=fields) else: global_params = None page_size = args.page_size if args.limit and args.limit < page_size: page_size = args.limit pager = list_pager.YieldFromList(apitools_client.readgroupsets, req_class( name=args.name, datasetIds=args.dataset_ids), method='Search', global_params=global_params, limit=args.limit, batch_size_attribute='pageSize', batch_size=page_size, field='readGroupSets') return genomics_util.ReraiseHttpExceptionPager(pager)