Show / Hide Table of Contents

Interface IIntegrationManager

Manages an AppList and desktop integration via AccessPoints.

Namespace: ZeroInstall.DesktopIntegration
Assembly: ZeroInstall.DesktopIntegration.dll
Syntax
public interface IIntegrationManager

Properties

AppList

Stores a list of applications and their desktop integrations. Only use for read-access externally! Use this class' methods for any modifications.

Declaration
AppList AppList { get; }
Property Value
Type Description
AppList

MachineWide

Apply operations machine-wide instead of just for the current user.

Declaration
bool MachineWide { get; }
Property Value
Type Description
Boolean

Methods

AddAccessPoints(AppEntry, Feed, IEnumerable<AccessPoint>)

Applies AccessPoints for an application.

Declaration
void AddAccessPoints(AppEntry appEntry, Feed feed, IEnumerable<AccessPoint> accessPoints)
Parameters
Type Name Description
AppEntry appEntry

The application being integrated.

Feed feed

The feed providing additional metadata, icons, etc. for the application.

IEnumerable<AccessPoint> accessPoints

The access points to apply.

Exceptions
Type Condition
OperationCanceledException

The user canceled the task.

ConflictException

One or more of the accessPoints would cause a conflict with the existing AccessPoints in AppList.

WebException

A problem occurred while downloading additional data (such as icons).

IOException

A problem occurred while writing to the filesystem or registry.

UnauthorizedAccessException

Write access to the filesystem or registry is not permitted.

AddApp(String, Requirements, Feed)

Creates a new named AppEntry and adds it to the AppList.

Declaration
AppEntry AddApp(string petName, Requirements requirements, Feed feed)
Parameters
Type Name Description
String petName

The user-defined pet-name of the application.

Requirements requirements

The requirements describing the application to add.

Feed feed

The feed providing additional metadata, capabilities, etc. for the application.

Returns
Type Description
AppEntry

The newly created application entry (already added to AppList).

Exceptions
Type Condition
InvalidOperationException

An application with the same petName is already in the list.

IOException

A problem occurred while writing to the filesystem or registry.

UnauthorizedAccessException

Write access to the filesystem or registry is not permitted.

AddApp(FeedTarget)

Creates a new unnamed AppEntry and adds it to the AppList.

Declaration
AppEntry AddApp(FeedTarget target)
Parameters
Type Name Description
FeedTarget target

The application to add.

Returns
Type Description
AppEntry

The newly created application entry (already added to AppList).

Exceptions
Type Condition
InvalidOperationException

The application is already in the list.

IOException

A problem occurred while writing to the filesystem or registry.

UnauthorizedAccessException

Write access to the filesystem or registry is not permitted.

RemoveAccessPoints(AppEntry, IEnumerable<AccessPoint>)

Removes already applied AccessPoints for an application.

Declaration
void RemoveAccessPoints(AppEntry appEntry, IEnumerable<AccessPoint> accessPoints)
Parameters
Type Name Description
AppEntry appEntry

The application being integrated.

IEnumerable<AccessPoint> accessPoints

The access points to unapply.

Exceptions
Type Condition
IOException

A problem occurred while writing to the filesystem or registry.

UnauthorizedAccessException

Write access to the filesystem or registry is not permitted.

RemoveApp(AppEntry)

Removes an AppEntry from the AppList while unapplying any remaining AccessPoints.

Declaration
void RemoveApp(AppEntry appEntry)
Parameters
Type Name Description
AppEntry appEntry

The application to remove.

Exceptions
Type Condition
IOException

A problem occurred while writing to the filesystem or registry.

UnauthorizedAccessException

Write access to the filesystem or registry is not permitted.

Repair(Converter<FeedUri, Feed>)

Reapplies all AccessPoints for all AppEntrys.

Declaration
void Repair(Converter<FeedUri, Feed> feedRetriever)
Parameters
Type Name Description
Converter<FeedUri, Feed> feedRetriever

Callback method used to retrieve additional Feeds on demand.

Exceptions
Type Condition
OperationCanceledException

The user canceled the task.

ConflictException

The AppList has inner conflicts.

WebException

A problem occurred while downloading additional data (such as icons).

IOException

A problem occurred while writing to the filesystem or registry.

UnauthorizedAccessException

Write access to the filesystem or registry is not permitted.

UpdateApp(AppEntry, Feed)

Updates an AppEntry with new metadata and capabilities from a Feed. This may unapply and remove some existing AccessPoints.

Declaration
void UpdateApp(AppEntry appEntry, Feed feed)
Parameters
Type Name Description
AppEntry appEntry

The application entry to update.

Feed feed

The feed providing additional metadata, capabilities, etc. for the application.

UpdateApp(AppEntry, Feed, Requirements)

Updates a named AppEntry with new Requirements.

Declaration
void UpdateApp(AppEntry appEntry, Feed feed, Requirements requirements)
Parameters
Type Name Description
AppEntry appEntry

The application entry to update.

Feed feed

The feed providing additional metadata, capabilities, etc. for the application.

Requirements requirements

The new requirements to apply to the app.

In This Article
Back to top Copyright Bastian Eicher et al