예제 #1
0
        public async Task <IActionResult> RegisterAsync(ServiceInstanceData instanceData)
        {
            _logger.LogInformation($"RegisterAsync {JsonConvert.SerializeObject(instanceData)}");
            if (!isDataValid(instanceData))
            {
                return(await Task.FromResult(BadRequest("Invalid instance data.")));
            }

            if (_repository.Contains(instanceData.InstanceId))
            {
                return(await Task.FromResult(Ok("Already registered")));
            }

            _repository.Add(instanceData);
            return(await Task.FromResult(Ok("Registered")));
        }
예제 #2
0
 private bool isDataValid(ServiceInstanceData data)
 => !string.IsNullOrEmpty(data.ServiceName) &&
 !string.IsNullOrEmpty(data.InstanceId) &&
 !string.IsNullOrEmpty(data.InstanceAddress) &&
 (!data.HasHealthCheck || !string.IsNullOrEmpty(data.HealthCheckAddress));