Zero Install .NET API 2.20.0
ZeroInstall.DesktopIntegration.IIntegrationManager Interface Reference

Manages an AppList and desktop integration via AccessPoints. More...

Inheritance diagram for ZeroInstall.DesktopIntegration.IIntegrationManager:
ZeroInstall.DesktopIntegration.ICategoryIntegrationManager ZeroInstall.DesktopIntegration.IntegrationManagerBase ZeroInstall.DesktopIntegration.CategoryIntegrationManager ZeroInstall.DesktopIntegration.IntegrationManager ZeroInstall.DesktopIntegration.CategoryIntegrationManager ZeroInstall.DesktopIntegration.SyncIntegrationManager

Public Member Functions

AppEntry AddApp (FeedTarget target)
 Creates a new unnamed AppEntry and adds it to the AppList. More...
 
AppEntry AddApp (string petName, Requirements requirements, Feed feed)
 Creates a new named AppEntry and adds it to the AppList. More...
 
void RemoveApp (AppEntry appEntry)
 Removes an AppEntry from the AppList while unapplying any remaining AccessPoints. More...
 
void UpdateApp (AppEntry appEntry, Feed feed)
 Updates an AppEntry with new metadata and capabilities from a Feed. This may unapply and remove some existing AccessPoints. More...
 
void UpdateApp (AppEntry appEntry, Feed feed, Requirements requirements)
 Updates a named AppEntry with new Requirements. More...
 
void AddAccessPoints (AppEntry appEntry, Feed feed, IEnumerable< AccessPoint > accessPoints)
 Applies AccessPoints for an application. More...
 
void RemoveAccessPoints (AppEntry appEntry, IEnumerable< AccessPoint > accessPoints)
 Removes already applied AccessPoints for an application. More...
 
void Repair (Converter< FeedUri, Feed > feedRetriever)
 Reapplies all AccessPoints for all AppEntrys. More...
 

Properties

AppList AppList [get]
 Stores a list of applications and their desktop integrations. Only use for read-access externally! Use this class' methods for any modifications.
 
bool MachineWide [get]
 Apply operations machine-wide instead of just for the current user.
 

Detailed Description

Manages an AppList and desktop integration via AccessPoints.

Member Function Documentation

◆ AddAccessPoints()

void ZeroInstall.DesktopIntegration.IIntegrationManager.AddAccessPoints ( AppEntry  appEntry,
Feed  feed,
IEnumerable< AccessPoint accessPoints 
)

Applies AccessPoints for an application.

Parameters
appEntryThe application being integrated.
feedThe feed providing additional metadata, icons, etc. for the application.
accessPointsThe access points to apply.
Exceptions
OperationCanceledExceptionThe user canceled the task.
ConflictExceptionOne or more of the accessPoints would cause a conflict with the existing AccessPoints in IIntegrationManager.AppList.
WebExceptionA problem occurred while downloading additional data (such as icons).
IOExceptionA problem occurred while writing to the filesystem or registry.
UnauthorizedAccessExceptionWrite access to the filesystem or registry is not permitted.

Implemented in ZeroInstall.DesktopIntegration.IntegrationManagerBase.

◆ AddApp() [1/2]

AppEntry ZeroInstall.DesktopIntegration.IIntegrationManager.AddApp ( FeedTarget  target)

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

Parameters
targetThe application to add.
Returns
The newly created application entry (already added to AppList).
Exceptions
InvalidOperationExceptionThe application is already in the list.
IOExceptionA problem occurred while writing to the filesystem or registry.
UnauthorizedAccessExceptionWrite access to the filesystem or registry is not permitted.

Implemented in ZeroInstall.DesktopIntegration.IntegrationManagerBase.

◆ AddApp() [2/2]

AppEntry ZeroInstall.DesktopIntegration.IIntegrationManager.AddApp ( string  petName,
Requirements  requirements,
Feed  feed 
)

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

Parameters
petNameThe user-defined pet-name of the application.
requirementsThe requirements describing the application to add.
feedThe feed providing additional metadata, capabilities, etc. for the application.
Returns
The newly created application entry (already added to AppList).
Exceptions
InvalidOperationExceptionAn application with the same petName is already in the list.
IOExceptionA problem occurred while writing to the filesystem or registry.
UnauthorizedAccessExceptionWrite access to the filesystem or registry is not permitted.

Implemented in ZeroInstall.DesktopIntegration.IntegrationManagerBase.

◆ RemoveAccessPoints()

void ZeroInstall.DesktopIntegration.IIntegrationManager.RemoveAccessPoints ( AppEntry  appEntry,
IEnumerable< AccessPoint accessPoints 
)

Removes already applied AccessPoints for an application.

Parameters
appEntryThe application being integrated.
accessPointsThe access points to unapply.
Exceptions
IOExceptionA problem occurred while writing to the filesystem or registry.
UnauthorizedAccessExceptionWrite access to the filesystem or registry is not permitted.

Implemented in ZeroInstall.DesktopIntegration.IntegrationManagerBase.

◆ RemoveApp()

void ZeroInstall.DesktopIntegration.IIntegrationManager.RemoveApp ( AppEntry  appEntry)

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

Parameters
appEntryThe application to remove.
Exceptions
IOExceptionA problem occurred while writing to the filesystem or registry.
UnauthorizedAccessExceptionWrite access to the filesystem or registry is not permitted.

Implemented in ZeroInstall.DesktopIntegration.IntegrationManagerBase.

◆ Repair()

void ZeroInstall.DesktopIntegration.IIntegrationManager.Repair ( Converter< FeedUri, Feed feedRetriever)

Reapplies all AccessPoints for all AppEntrys.

Parameters
feedRetrieverCallback method used to retrieve additional Feeds on demand.
Exceptions
OperationCanceledExceptionThe user canceled the task.
ConflictExceptionThe IIntegrationManager.AppList has inner conflicts.
WebExceptionA problem occurred while downloading additional data (such as icons).
IOExceptionA problem occurred while writing to the filesystem or registry.
UnauthorizedAccessExceptionWrite access to the filesystem or registry is not permitted.

Implemented in ZeroInstall.DesktopIntegration.IntegrationManagerBase.

◆ UpdateApp() [1/2]

void ZeroInstall.DesktopIntegration.IIntegrationManager.UpdateApp ( AppEntry  appEntry,
Feed  feed 
)

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

Parameters
appEntryThe application entry to update.
feedThe feed providing additional metadata, capabilities, etc. for the application.

Implemented in ZeroInstall.DesktopIntegration.IntegrationManagerBase.

◆ UpdateApp() [2/2]

void ZeroInstall.DesktopIntegration.IIntegrationManager.UpdateApp ( AppEntry  appEntry,
Feed  feed,
Requirements  requirements 
)

Updates a named AppEntry with new Requirements.

Parameters
appEntryThe application entry to update.
feedThe feed providing additional metadata, capabilities, etc. for the application.
requirementsThe new requirements to apply to the app.

Implemented in ZeroInstall.DesktopIntegration.IntegrationManagerBase.


The documentation for this interface was generated from the following file: