ZeroInstall.DesktopIntegration.IntegrationManager.AddAppInternal C# (CSharp) Method

AddAppInternal() protected method

protected AddAppInternal ( FeedTarget target ) : AppEntry
target ZeroInstall.Store.FeedTarget
return AppEntry
        protected override AppEntry AddAppInternal(FeedTarget target)
        {
            // Prevent double entries
            if (AppList.ContainsEntry(target.Uri)) throw new InvalidOperationException(string.Format(Resources.AppAlreadyInList, target.Feed.Name));

            // Get basic metadata and copy of capabilities from feed
            var appEntry = new AppEntry {InterfaceUri = target.Uri, Name = target.Feed.Name, Timestamp = DateTime.UtcNow};
            appEntry.CapabilityLists.AddRange(target.Feed.CapabilityLists.CloneElements());

            AppList.Entries.Add(appEntry);
            WriteAppDir(appEntry);
            return appEntry;
        }

Same methods

IntegrationManager::AddAppInternal ( string petName, Requirements requirements, Feed feed ) : AppEntry
IntegrationManager::AddAppInternal ( AppEntry prototype, Feed>.Converter feedRetriever ) : void