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); }
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); }
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); }