コード例 #1
0
        public async Task <ExternalProvider> UpdateAsync(ExternalProvider entity, CancellationToken cancellationToken = default)
        {
            await _manager.UpdateAsync(CreateSchemeDefinition(entity), cancellationToken).ConfigureAwait(false);

            await _providerClient.ProviderUpdatedAsync(entity.Id, cancellationToken).ConfigureAwait(false);

            return(entity);
        }
コード例 #2
0
        public async Task <ExternalProvider> UpdateAsync(ExternalProvider entity, CancellationToken cancellationToken = default)
        {
            var definition = await GetEntity(entity.Id).ConfigureAwait(false);

            var handlerType = _serializer.DeserializeType(entity.SerializedHandlerType);

            definition.DisplayName = entity.DisplayName;
            definition.StoreClaims = entity.StoreClaims;
            definition.MapDefaultOutboundClaimType = entity.MapDefaultOutboundClaimType;

            definition.HandlerType = handlerType;
            definition.Options     = _serializer.DeserializeOptions(entity.SerializedOptions, handlerType.GetAuthenticationSchemeOptionsType());

            SanetizeCallbackPath(entity, definition.Options);

            await _manager.UpdateAsync(definition, cancellationToken).ConfigureAwait(false);

            if (_providerClient != null)
            {
                await _providerClient.ProviderUpdatedAsync(entity.Id, cancellationToken).ConfigureAwait(false);
            }
            return(entity);
        }
コード例 #3
0
        public async Task <ExternalProvider> UpdateAsync(ExternalProvider entity, CancellationToken cancellationToken = default)
        {
            var definition = await GetEntity(entity.Id).ConfigureAwait(false);

            definition.DisplayName = entity.DisplayName;
            definition.StoreClaims = entity.StoreClaims;
            definition.MapDefaultOutboundClaimType = entity.MapDefaultOutboundClaimType;
            definition.SerializedHandlerType       = entity.SerializedHandlerType;
            definition.SerializedOptions           = entity.SerializedOptions;

            SanetizeCallbackPath(entity, definition.Options);

            definition.HandlerType = null;
            definition.Options     = null;

            await _session.SaveChangesAsync(cancellationToken).ConfigureAwait(false);

            if (_providerClient != null)
            {
                await _providerClient.ProviderUpdatedAsync(entity.Id, cancellationToken).ConfigureAwait(false);
            }
            return(entity);
        }