Injected Properties
OctoPrint’s plugin subsystem will inject a bunch of properties into each mixin implementation. An overview of these properties follows.
self._identifier
The plugin’s identifier.
self._plugin_name
The plugin’s name, as taken from either the
__plugin_name__
control property or the package info.self._plugin_version
The plugin’s version, as taken from either the
__plugin_version__
control property or the package info.self._plugin_info
The
octoprint.plugin.core.PluginInfo
object associated with the plugin.self._basefolder
The plugin’s base folder where it’s installed. Can be used to refer to files relative to the plugin’s installation location, e.g. included scripts, templates or assets.
self._datafolder
The plugin’s additional data folder path. Can be used to store additional files needed for the plugin’s operation (cache, data files etc). Plugins should not access this property directly but instead utilize
get_plugin_data_folder()
which will make sure the path actually does exist and if not create it before returning it.self._logger
A
logging.Logger
instance logging to the log targetoctoprint.plugin.<plugin identifier>
.self._settings
The plugin’s personalized settings manager, injected only into plugins that include the
SettingsPlugin
mixin. An instance ofoctoprint.plugin.PluginSettings
.self._plugin_manager
OctoPrint’s plugin manager object, an instance of
octoprint.plugin.core.PluginManager
.self._printer_profile_manager
OctoPrint’s printer profile manager, an instance of
octoprint.printer.profile.PrinterProfileManager
.self._event_bus
OctoPrint’s event bus, an instance of
octoprint.events.EventManager
.self._analysis_queue
OctoPrint’s analysis queue for analyzing GCODEs or other files, an instance of
octoprint.filemanager.analysis.AnalysisQueue
.self._slicing_manager
OctoPrint’s slicing manager, an instance of
octoprint.slicing.SlicingManager
.self._file_manager
OctoPrint’s file manager, an instance of
octoprint.filemanager.FileManager
.self._printer
OctoPrint’s printer management object, an instance of
octoprint.printer.PrinterInterface
.self._user_manager
OctoPrint’s user manager, an instance of
octoprint.access.users.UserManager
.self._connectivity_checker
OctoPrint’s connectivity checker, an instance of
octoprint.util.ConnectivityChecker
.
See also
Plugin
andOctoPrintPlugin
Class documentation also containing the properties shared among all mixin implementations.
- Available Mixins
Some mixin types trigger the injection of additional properties.