reviewbot.tools.base.registry¶
Tool registration
These functions are used to register and look up known tool classes.
New in version 3.0.
Functions
|
Return the tool class with a given ID. |
Return all registered tool classes. |
|
Load tool classes provided by Review Bot and other packages. |
|
|
Register a tool class for later lookup. |
|
Unregister a tool class by its ID. |
- register_tool_class(tool_cls)[source]¶
Register a tool class for later lookup.
The tool class must have a
tool_idattribute (either directly set, for unit tests, or throughload_tool_classes()), and cannot conflict with another tool.- Parameters:
tool_cls (
type) – A tool class to register (subclass ofreviewbot.tools.base.tool.BaseTool).- Raises:
ValueError – The tool could not be registered, either due to a missing
tool_idor due to a conflict with another tool.
- unregister_tool_class(tool_id)[source]¶
Unregister a tool class by its ID.
- Parameters:
tool_id (
type) – The ID of the tool to unregister.- Raises:
KeyError – The tool could not be found.
- get_tool_class(tool_id)[source]¶
Return the tool class with a given ID.
- Parameters:
tool_id (
unicode) – The ID of the tool to return.- Returns:
The tool class, or
Noneif no tool with that ID exists.- Return type:
type
- get_tool_classes()[source]¶
Return all registered tool classes.
This will be sorted in alphabetical order, based on the ID.
- Returns:
A list of tool classes (subclasses of
reviewbot.tools.base.tool.BaseTool).- Return type:
listoftype
- load_tool_classes()[source]¶
Load tool classes provided by Review Bot and other packages.
This will scan for any Python packages that provide
reviewbot.toolsentrypoints, loading the tools into the tool registry.Any existing tools will be cleared out before this begins, and any errors will be logged.