awsc.base_control.ResourceLister
- class awsc.base_control.ResourceLister(*args, selector_cb=None, **kwargs)
The meaty ResourceLister is the object that handles all of the resource listing from AWS. Most basic resource listers will be direct subclasses with minor configuration.
- Attributes:
- command_palettelist(str)
A list of commands for opening this particular resource lister. This may be any proper name for the AWS resource, such as queue, a shorthand, such as sqs, or any commonly known alternative name.
- resource_typestr
The human-readable name of the resource type.
- main_providerstr
The provider the list_method uses in boto3.
- categorystr
A human-readable name of the category of AWS resources this lister belongs to, for logging purposes.
- subcategorystr
A human-readable name of the subcategory of AWS resources this lister belongs to, for logging purposes.
- list_methodstr
The method to call to list the resources.
- list_kwargsdict
The kwargs to pass to the list method. May be modified in the initializer for dynamic parameters.
- item_pathstr
The path where an item can be retrieved.
- columnsdict
A map of column specification. Each column’s key is the name of the column, while the value is a dict with the following fields: - path (required): The jq path for the column within the item. - size (required if not hidden): The size of the column. - weight (int, default 0): The weight of the column for sorting the columns in order. - hidden (bool, default false): Whether the column is hidden. - sort_weight (int, optional): If present, the weight of the column for sorting rows. Columns without a sort weight are not used
for sorting.
- primary_keystr
The field which contains the unique identifier of the resource. For most resources, this is the same field every time. Not always, unfortunately.
- describe_commandcallable or str
The command to run for the describe autogenerated action. If str, this is a reference to another, existing hotkey. If callable, the function is called and the return value is pushed as a new frame (so ideally, use an opener classmethod as the thing to pass to this). The describe command will be assigned the d hotkey, as well as the ENTER hotkey is no open command is present.
- describe_kwargsdict
Additional keyword arguments to pass to the describe command.
- describe_selection_argstr, default=”entry”
The name of the keyword argument where the selection of this list control should be passed on describe.
- open_commandcallable or str
The command to run for the open autogenerated action. If str, this is a reference to another, existing hotkey. If callable, the function is called and the return value is pushed as a new frame (so ideally, use an opener classmethod as the thing to pass to this). The open command will be assigned the ENTER hotkey. If not present, the describe_command is instead assigned to the ENTER key.
- open_kwargsdict
Additional keyword arguments to pass to the open command.
- open_selection_argstr, default=”entry”
The name of the keyword argument where the selection of this list control should be passed on open.
Methods
Autocommand(command_class, key[, tooltip, ...])Class decorator that automatically assigns a hotkey to a function upon instantiation of the target class.
Autohotkey(key[, tooltip, is_validated, ...])Decorator that automatically assigns a hotkey to a function upon instantiation.
add_block(block)Adds a new child block to this block.
add_column(column[, min_size, index])Adds a new column to the ListControl.
add_entry(entry)Adds a new entry to the ListControl.
add_hotkey(hotkey, action[, tooltip, ...])Adds a new hotkey to the control.
async_inner(*args, fn[, clear])Inner section of asynch.
asynch(fn, *args[, clear])Async wrapper.
auto_refresh()Automatic refresh function stub for implementation in subclasses.
autohotkey_condition(hotkey)Autohotkey condition callback.
before_paint()Hook function for acting on the block before any blocks are painted for the current frame.
before_paint_critical()Critical section for the pre-paint hook.
bottomright()Returns the coordinates of the bottom right corner of the block.
clear_blocks([tag])Removes all blocks with the matching tag from the child blocks of this block.
command(cmd, **kwargs)Inner section of a command hotkey callback.
command_wrapper(cmd, selection_arg, **kwargs)Wraps a command as a hotkey callback.
confirm_template(*args[, hotkey, hotkey_tooltip])Creates a confirmation sequence.
copy_arn(*args)Copies the ARN of the selection to the clipboard if available.
describe(*args)Describe is a special command automatically assigned to 'd' if describe_command is set.
empty(_)Callback used to generate an empty string.
end(*args)Hotkey callback for KEY_END.
get_data(*args, **kwargs)Data streaming function.
get_data_generic(resource_key, list_method, ...)Generic data retrieval function designed to interact with the AWS API.
handle_finalization_critical()Finalization hook.
handle_new_entries_critical(entries)Critical section for the new entry hook.
home(*args)Hotkey callback for KEY_HOME.
input(key)Input handler hook function.
list_down(*args)Hotkey callback for KEY_DOWN.
list_up(*args)Hotkey callback for KEY_UP.
matches(list_entry, *args)For pre-filtering resource listers, this function decides whether a list entry being generated matches the criteria for being displayed on the control.
on_close()Cleanup hook.
open(*args)Describe is a special command automatically assigned to ENTER if open_command is set.
opener(**kwargs)Session-aware initializer for this class.
pagedown(*args)Hotkey callback for KEY_PAGEDOWN.
pageup(*args)Hotkey callback for KEY_PAGEUP.
paint()Hook function for painting the block.
refresh_data(*args, **kwargs)Performs a full refresh asynchronously, fetching all data again and updating all entries as required.
register()Classmethod to register this class and all of its subclasses with the commander control.
remove_block(block)Removes a specific block from this block.
reparent()Shorthand function for removing a Block from its parent and re-adding it.
select_and_close(*args)Hotkey callback for KEY_ENTER in selector mode.
selector(callback, **kwargs)Session-aware initializer for this class for opening it in selector mode.
selector_template(method, template, title, ...)Templates a SingleSelectionDialog flow, which calls an AWS API method with the provided template at the end of the flow.
sort()Sorts the list of entries.
title_info()Title info callback for this class.
topleft()Returns the coordinates of the top left corner of the block.
validate_hotkey(key)Validates whether a hotkey can be used based on the state of the control.
on_become_frame
- __init__(*args, selector_cb=None, **kwargs)
Initializes a ListControl object.
Methods
__init__(*args[, selector_cb])Initializes a ListControl object.
add_block(block)Adds a new child block to this block.
add_column(column[, min_size, index])Adds a new column to the ListControl.
add_entry(entry)Adds a new entry to the ListControl.
add_hotkey(hotkey, action[, tooltip, ...])Adds a new hotkey to the control.
async_inner(*args, fn[, clear])Inner section of asynch.
asynch(fn, *args[, clear])Async wrapper.
auto_refresh()Automatic refresh function stub for implementation in subclasses.
autohotkey_condition(hotkey)Autohotkey condition callback.
before_paint()Hook function for acting on the block before any blocks are painted for the current frame.
before_paint_critical()Critical section for the pre-paint hook.
bottomright()Returns the coordinates of the bottom right corner of the block.
clear_blocks([tag])Removes all blocks with the matching tag from the child blocks of this block.
command(cmd, **kwargs)Inner section of a command hotkey callback.
command_wrapper(cmd, selection_arg, **kwargs)Wraps a command as a hotkey callback.
confirm_template(*args[, hotkey, hotkey_tooltip])Creates a confirmation sequence.
copy_arn(*args)Copies the ARN of the selection to the clipboard if available.
describe(*args)Describe is a special command automatically assigned to 'd' if describe_command is set.
empty(_)Callback used to generate an empty string.
end(*args)Hotkey callback for KEY_END.
get_data(*args, **kwargs)Data streaming function.
get_data_generic(resource_key, list_method, ...)Generic data retrieval function designed to interact with the AWS API.
handle_finalization_critical()Finalization hook.
handle_new_entries_critical(entries)Critical section for the new entry hook.
home(*args)Hotkey callback for KEY_HOME.
input(key)Input handler hook function.
list_down(*args)Hotkey callback for KEY_DOWN.
list_up(*args)Hotkey callback for KEY_UP.
matches(list_entry, *args)For pre-filtering resource listers, this function decides whether a list entry being generated matches the criteria for being displayed on the control.
on_become_frame()on_close()Cleanup hook.
open(*args)Describe is a special command automatically assigned to ENTER if open_command is set.
opener(**kwargs)Session-aware initializer for this class.
pagedown(*args)Hotkey callback for KEY_PAGEDOWN.
pageup(*args)Hotkey callback for KEY_PAGEUP.
paint()Hook function for painting the block.
refresh_data(*args, **kwargs)Performs a full refresh asynchronously, fetching all data again and updating all entries as required.
register()Classmethod to register this class and all of its subclasses with the commander control.
remove_block(block)Removes a specific block from this block.
reparent()Shorthand function for removing a Block from its parent and re-adding it.
select_and_close(*args)Hotkey callback for KEY_ENTER in selector mode.
selector(callback, **kwargs)Session-aware initializer for this class for opening it in selector mode.
selector_template(method, template, title, ...)Templates a SingleSelectionDialog flow, which calls an AWS API method with the provided template at the end of the flow.
sort()Sorts the list of entries.
title_info()Title info callback for this class.
topleft()Returns the coordinates of the top left corner of the block.
validate_hotkey(key)Validates whether a hotkey can be used based on the state of the control.
Attributes
additional_commandsborderReturns the border of the control.
categorycolumnscommand_palettecornersRead-only property for calculating the four corners of the block.
describe_commanddescribe_kwargsdescribe_selection_argfilterAllows for filtering the list entries without removing them.
filteredRead-only property that returns the list of filtered entris.
heightRead-only property for the height of the block.
innerRead-only property for calculating the four inner corners of the block.
item_pathlist_kwargslist_methodmain_provideropen_commandopen_kwargsopen_selection_argprefixprimary_keyresource_typerowsRead-only property which contains the number of visible rows in the control.
selectionRead-only property which contains the currently selected list entry.
subcategorytitlew_inRead-only property for the inner width of the block.
widthRead-only property for the width of the block.