Пример #1
0
        public async Task <Endpoint> CreateEndpoint(string sender)
        {
            await _endpointRepository.CleanupOldestEndpoints();

            var result = new Endpoint
            {
                MaxCalls       = 4,
                Calls          = new List <Call>(),
                CreatedAt      = DateTime.Now,
                Identification = Guid.NewGuid(),
                LastCall       = DateTime.MinValue,
                SenderAddress  = sender
            };

            var endpoints = await _endpointRepository.GetEndpointByHost(sender);

            if (endpoints.Count() >= 10)
            {
                throw new OutOfEndpointsPrHosts();
            }

            return(await _endpointRepository.SaveEndpoint(result));
        }