tapis_cli.search package

Methods and classes for building CLI-driven search and filtering

Submodules

tapis_cli.search.argdef module

class tapis_cli.search.argdef.Argdef(param_name, param_type, verbosity, mod_types, default_mod, choices, override_option, searchable)

Bases: tuple

choices

Alias for field number 5

default_mod

Alias for field number 4

mod_types

Alias for field number 3

override_option

Alias for field number 6

param_name

Alias for field number 0

param_type

Alias for field number 1

searchable

Alias for field number 7

verbosity

Alias for field number 2

tapis_cli.search.argdef.optionize(fieldKeyName)

Transforms a string into an argparse option

tapis_cli.search.argdef.propertize(fieldKeyName)

Transforms a string into an Python parameter name

tapis_cli.search.argdef.tapisize(fieldKeyName)

Transforms a string into a Tapis query parameter

tapis_cli.search.argdef.spinal_to_camel(optionName)

tapis_cli.search.argmod module

Enumeration of valid modifiers for search arguments

tapis_cli.search.argtype module

Enumeration of valid types for search arguments

tapis_cli.search.argtype.param_type_repr(param_type)
tapis_cli.search.argtype.format_allows_param_type(argdef, formatter='table')

Filter (mostly structured) un-formattable arguments

This method implements a handful fo empirically-determined policies to filter out parameter types that cannot be easily displayed in flattened formats like ‘table’ or ‘value’.

tapis_cli.search.arrowspan module

class tapis_cli.search.arrowspan.ArrowSpan(year: int, month: int, day: int, hour: int = 0, minute: int = 0, second: int = 0, microsecond: int = 0, tzinfo: Union[datetime.tzinfo, str, None] = None, **kwargs)

Bases: arrow.arrow.Arrow

Subclass of Arrow with upgraded span() capability used to generate MongoDB date ranges for queries

DAY = 'day'
HOUR = 'hour'
MINUTE = 'minute'
MONTH = 'month'
SPANS = ['year', 'month', 'week', 'day', 'hour', 'minute']
WEEK = 'week'
YEAR = 'year'
default_span = 'day'
original_value = None
setup(value)
smart_ceil(span_value=None)
smart_floor(span_value=None)
smart_span(span_value=None)

tapis_cli.search.mongoql module

class tapis_cli.search.mongoql.MongoQuery

Bases: dict

class tapis_cli.search.mongoql.SearchMongoQuery(field_type=<class 'str'>, **kwargs)

Bases: tapis_cli.search.searcharg.SearchArg

query_after(value)
query_before(value)
query_end(value)
query_eq(value)
query_gt(value)
query_gte(value)
query_in(values)
query_like(value)
query_lt(value)
query_lte(value)
query_nend(value)
query_neq(value)
query_nin(values)
query_nlike(value)
query_nstart(value)
query_on(value)
query_start(value)

tapis_cli.search.param module

class tapis_cli.search.param.WebParam

Bases: dict

class tapis_cli.search.param.SearchWebParam(field_type=<class 'str'>, **kwargs)

Bases: tapis_cli.search.searcharg.SearchArg

Renders param.mod=value for passing to a web service

query_after(value)
query_before(value)
query_end(value)
query_eq(value)
query_gt(value)
query_gte(value)
query_in(values)
query_like(value)
query_lt(value)
query_lte(value)
query_neq(value)
query_nin(values)
query_nlike(value)
query_on(value)
query_start(value)
class tapis_cli.search.param.SearchWebParamEqualsOnly(field_type=<class 'str'>, **kwargs)

Bases: tapis_cli.search.searcharg.SearchArg

Renders param=value for passing to a web service

query_eq(value)

tapis_cli.search.searcharg module

class tapis_cli.search.searcharg.Argument(argument, attributes)

Bases: tuple

argument

Alias for field number 0

attributes

Alias for field number 1

class tapis_cli.search.searcharg.SearchArg(field_type=<class 'str'>, **kwargs)

Bases: object

Uses metadata to generate argparse and param views of a search term

PARAMS = [('argument', False, 'argument', 'str', None), ('field', False, 'field', 'str', None), ('destination', False, 'destination', None, None), ('choices', False, 'choices', None, None), ('mods', False, 'mods', 'list', ['eq']), ('default_mod', False, 'default_mod', 'str', 'eq')]
cast(value, field_type=None)

Cast a value into a defined Python type

get_argparse()

Generate an argparse argument for a MongoDB collection field

get_param(values)

Render a query from the argument’s metadata and value(s)

classmethod parse_datetime(value, span=None)

Transform a human date or time string to a Python UTC datetime

to_values(value, delim=', ')

Transform a value into a list of values