HealthMonitoring.SelfHost.Controllers.EndpointsController.PostRegisterEndpoint C# (CSharp) Method

PostRegisterEndpoint() private method

private PostRegisterEndpoint ( [ endpoint ) : IHttpActionResult
endpoint [
return IHttpActionResult
        public IHttpActionResult PostRegisterEndpoint([FromBody]EndpointRegistration endpoint)
        {
            endpoint.ValidateModel();

            try
            {
                var existed = _endpointRegistry.GetByNaturalKey(endpoint.MonitorType, endpoint.Address);
                RequestContext.AuthorizeRegistration(endpoint, existed, SecurityRole.Admin);

                var id = _endpointRegistry.RegisterOrUpdate(endpoint.MonitorType, endpoint.Address, endpoint.Group, endpoint.Name, endpoint.Tags, endpoint.MonitorTag, endpoint.Password);
                return Created(new Uri(Request.RequestUri, $"/api/endpoints/{id}"), id);
            }
            catch (UnsupportedMonitorException e)
            {
                return BadRequest(e.Message);
            }
        }