예제 #1
0
        /// <inheritdoc />
        public async Task <BoolResult> StartupAsync(Context context)
        {
            StartupStarted = true;

            BoolResult result;

            try
            {
                result = await _artifactHttpClientFactory.StartupAsync(context);

                if (!result.Succeeded)
                {
                    return(result);
                }

                if (_useDedupStore)
                {
                    _artifactHttpClient = await _artifactHttpClientFactory.CreateDedupStoreHttpClientAsync(context).ConfigureAwait(false);
                }
                else
                {
                    _artifactHttpClient = await _artifactHttpClientFactory.CreateBlobStoreHttpClientAsync(context).ConfigureAwait(false);
                }
            }
            catch (Exception e)
            {
                result = new BoolResult(e);
            }

            StartupCompleted = true;
            return(result);
        }
예제 #2
0
        /// <inheritdoc />
        protected override async Task <BoolResult> StartupCoreAsync(OperationContext context)
        {
            BoolResult result;

            try
            {
                result = await _configuration.ArtifactHttpClientFactory.StartupAsync(context);

                if (!result.Succeeded)
                {
                    return(result);
                }

                _artifactHttpClient = _configuration.UseDedupStore
                    ? (IArtifactHttpClient)await _configuration.ArtifactHttpClientFactory.CreateDedupStoreHttpClientAsync(context).ConfigureAwait(false)
                    : await _configuration.ArtifactHttpClientFactory.CreateBlobStoreHttpClientAsync(context).ConfigureAwait(false);
            }
            catch (Exception e)
            {
                result = new BoolResult(e);
            }

            return(result);
        }