Class UpdaterPlugin
Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
public class UpdaterPlugin : IUpdaterPlugin, IPlugin, IDisposable
- Inheritance
-
UpdaterPlugin
- Implements
- Inherited Members
Constructors
UpdaterPlugin(IContext, UpdaterConfig)
Initializes a new instance of UpdaterPlugin.
public UpdaterPlugin(IContext context, UpdaterConfig config)
Parameters
context
IContextconfig
UpdaterConfig
Properties
Config
The configuration for the updater.
public UpdaterConfig Config { get; }
Property Value
LastCheckedForUpdates
The date and time that the updater last checked for updates.
public DateTime? LastCheckedForUpdates { get; }
Property Value
Name
whim.updater
public string Name { get; }
Property Value
PluginCommands
The commands and keybinds for this plugin. These are registered during PreInitialize().
public IPluginCommands PluginCommands { get; }
Property Value
Remarks
Keybindings can be overridden by the user using SetKeybind(string, IKeybind).
SkippedReleaseTagName
The release that the user has chosen to skip.
public string? SkippedReleaseTagName { get; }
Property Value
Methods
CheckForUpdates(bool)
Checks for updates. If there are updates, shows the updater window.
public Task CheckForUpdates(bool notifyIfNoUpdates = true)
Parameters
notifyIfNoUpdates
bool- Whether to show a notification if there are no updates. Default is
true
.
Returns
Dispose()
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
public void Dispose()
Dispose(bool)
protected virtual void Dispose(bool disposing)
Parameters
disposing
bool
LoadState(JsonElement)
Load the plugin's state from
state
.public void LoadState(JsonElement state)
Parameters
state
JsonElement- The plugin's state.
Remarks
State is loaded after PostInitialize() and the user's configuration has been loaded.
Thus, be careful on how you interact with the user's configuration.
PostInitialize()
This method is to be called by the plugin manager.
Initializes the plugin after the rest of the IContext has been initialized.
Put things which rely on the rest of the context here.
public void PostInitialize()
PreInitialize()
This method is to be called by the plugin manager.
Initializes the plugin before the IContext has been initialized.
Put things like event listeners here or adding proxy layout engines
(see AddProxyLayoutEngine(ProxyLayoutEngineCreator)).
public void PreInitialize()
SaveState()
Save the plugin's state as a JsonElement.
public JsonElement? SaveState()
Returns
- JsonElement?
- The plugin's state.
SkipRelease(string?)
Skips the release with the given tag name.
public void SkipRelease(string? tagName = null)
Parameters
tagName
string- The tag name of the release to skip. If null, skips the latest release.