private void AssignLocalId(OperationContainer operation) { if (operation.Resource.LocalId != null) { ResourceContext resourceContext = _resourceContextProvider.GetResourceContext(operation.Resource.GetType()); _localIdTracker.Assign(operation.Resource.LocalId, resourceContext.PublicName, "placeholder"); } }
private void AssignLocalId(OperationContainer operation) { if (operation.Resource.LocalId != null) { var resourceContext = _resourceContextProvider.GetResourceContext(operation.Resource.GetType()); _localIdTracker.Assign(operation.Resource.LocalId, resourceContext.PublicName, string.Empty); } }
/// <inheritdoc /> public virtual async Task <OperationContainer> ProcessAsync(OperationContainer operation, CancellationToken cancellationToken) { ArgumentGuard.NotNull(operation, nameof(operation)); TResource newResource = await _service.CreateAsync((TResource)operation.Resource, cancellationToken); if (operation.Resource.LocalId != null) { string serverId = newResource != null ? newResource.StringId : operation.Resource.StringId; ResourceContext resourceContext = _resourceContextProvider.GetResourceContext <TResource>(); _localIdTracker.Assign(operation.Resource.LocalId, resourceContext.PublicName, serverId); } return(newResource == null ? null : operation.WithResource(newResource)); }