Class CategoryIntegrationManager
- Namespace
- ZeroInstall.DesktopIntegration
- Assembly
- ZeroInstall.DesktopIntegration.dll
Manages desktop integration via AccessPoints, grouping them into categories.
[MustDisposeResource]
public class CategoryIntegrationManager : IntegrationManager, IDisposable, ICategoryIntegrationManager, IIntegrationManager
- Inheritance
-
CategoryIntegrationManager
- Implements
- Inherited Members
Remarks
To prevent race-conditions there may only be one desktop integration class instance active at any given time. This class acquires a mutex upon calling its constructor and releases it upon calling Dispose().
Constructors
CategoryIntegrationManager(Config, ITaskHandler, bool)
Manages desktop integration via AccessPoints, grouping them into categories.
public CategoryIntegrationManager(Config config, ITaskHandler handler, bool machineWide = false)
Parameters
config
Confighandler
ITaskHandlermachineWide
bool
Remarks
To prevent race-conditions there may only be one desktop integration class instance active at any given time. This class acquires a mutex upon calling its constructor and releases it upon calling Dispose().
Fields
AllCategories
A list of all known AccessPoint categories.
public static readonly string[] AllCategories
Field Value
- string[]
StandardCategories
A list of recommended standard AccessPoint categories.
public static readonly string[] StandardCategories
Field Value
- string[]
Methods
AddAccessPointCategories(AppEntry, Feed, params string[])
Applies a category of AccessPoints for an application.
public void AddAccessPointCategories(AppEntry appEntry, Feed feed, params string[] categories)
Parameters
appEntry
AppEntryThe application being integrated.
feed
FeedThe feed providing additional metadata, icons, etc. for the application.
categories
string[]A list of all AccessPoint categories to be added to the already applied ones.
Exceptions
- ConflictException
One or more of the
categories
would cause a conflict with the existing AccessPoints in AppList.- OperationCanceledException
The user canceled the task.
- IOException
A problem occurred while writing to the filesystem or registry.
- WebException
A problem occurred while downloading additional data (such as icons).
- UnauthorizedAccessException
Write access to the filesystem or registry is not permitted.
RemoveAccessPointCategories(AppEntry, params string[])
Removes a category of already applied AccessPoints for an application.
public void RemoveAccessPointCategories(AppEntry appEntry, params string[] categories)
Parameters
appEntry
AppEntryThe application being integrated.
categories
string[]A list of all AccessPoint categories to be removed from the already applied ones.
Exceptions
- IOException
A problem occurred while writing to the filesystem or registry.
- UnauthorizedAccessException
Write access to the filesystem or registry is not permitted.