Exemplo n.º 1
0
 private async Task <string> SendBy(Package package, PackageCategoryEnum category)
 {
     if (category == PackageCategoryEnum.Small)
     {
         return(await SendByPost(package));
     }
     else if (category == PackageCategoryEnum.Normal)
     {
         return(await SendByCar(package));
     }
     else if (category == PackageCategoryEnum.Big)
     {
         return(await SendByPlance(package));
     }
     else
     {
         throw new ArgumentException("Не правильно передана категория");
     }
 }
Exemplo n.º 2
0
        private async Task <string> SendBy(Package package, PackageCategoryEnum category)
        {
            if (category == PackageCategoryEnum.Small)
            {
                provider = new CarProvider();
            }
            else if (category == PackageCategoryEnum.Normal)
            {
                provider = new CarProvider();
            }
            else if (category == PackageCategoryEnum.Big)
            {
                provider = new PlaneProvider();
            }
            else
            {
                throw new ArgumentException("Не правильно передана категория");
            }

            return(await provider.Send(package));
        }
Exemplo n.º 3
0
        public async Task <string> SendPackage(Package package, PackageCategoryEnum category)
        {
            IProvider provider;

            if (category == PackageCategoryEnum.Small)
            {
                provider = _postProvider;
            }
            else if (category == PackageCategoryEnum.Normal)
            {
                provider = _carProvider;
            }
            else if (category == PackageCategoryEnum.Big)
            {
                provider = _planeProvider;
            }
            else
            {
                throw new NotImplementedException();
            }

            return(await provider.Send(package));
        }