// Token: 0x06000BF0 RID: 3056 RVA: 0x00031590 File Offset: 0x0002F790 internal void ExecuteDownload(DownloadApp downloadApp) { if (this.downloadQueue.Count > 0) { UpdateRequestAsset updateRequestAsset = this.downloadQueue.Dequeue(); if (this.CacheSatisfiesRequest(updateRequestAsset, this.extensionUpdates)) { GetUpdates.Tracer.TraceDebug <string>(0L, "GetUpdates.ExecuteDownload: Asset {0} satisfied from cache; getting next asset to download", updateRequestAsset.MarketplaceAssetID); this.ExecuteDownload(downloadApp); return; } GetUpdates.Tracer.TraceDebug <string>(0L, "GetUpdates.ExecuteDownload: Downloading {0}", updateRequestAsset.MarketplaceAssetID); this.currentDownloadAppId = updateRequestAsset.ExtensionID; downloadApp.Execute(updateRequestAsset, this.queryContext.DeploymentId, new BaseAsyncCommand.GetLoggedMailboxIdentifierCallback(this.GetLoggedMailboxIdentifier), new DownloadApp.SuccessCallback(this.DownloadAppSuccessCallback), new BaseAsyncCommand.FailureCallback(this.DownloadAppFailureCallback)); return; } else { GetUpdates.Tracer.TraceDebug(0L, "GetUpdates.ExecuteDownload: Downloads complete."); if (this.extensionUpdates.Count > 0) { this.InstallExtensionUpdates(this.extensionUpdates, this.queryContext); return; } this.ExecuteNextUpdateQuery(); return; } }
// Token: 0x06000BA3 RID: 2979 RVA: 0x0002F744 File Offset: 0x0002D944 public void Execute(IDownloadAppRequestAsset asset, string deploymentId, BaseAsyncCommand.GetLoggedMailboxIdentifierCallback getloggedMailboxIdentifierCallback, DownloadApp.SuccessCallback successCallback, BaseAsyncCommand.FailureCallback failureCallback) { if (asset == null) { throw new ArgumentNullException("asset"); } if (getloggedMailboxIdentifierCallback == null) { throw new ArgumentNullException("getloggedMailboxIdentifierCallback"); } if (successCallback == null) { throw new ArgumentNullException("successCallback"); } if (failureCallback == null) { throw new ArgumentNullException("failureCallback"); } this.getLoggedMailboxIdentifierCallback = getloggedMailboxIdentifierCallback; this.successCallback = successCallback; this.failureCallback = failureCallback; this.downloadRequestAsset = asset; this.periodicKey = asset.MarketplaceAssetID; string uriString = this.urlsCache.DownloadUrl + DownloadApp.CreateQueryString(asset, deploymentId, this.requestId); Uri uri = new Uri(uriString); base.InternalExecute(uri); }