Exemplo n.º 1
0
        public DescontoDoProdutoChain(IPromocaoServices promocaoServices)
        {
            _promocaoServices = promocaoServices;

            _descontoPorPromocao = new DescontoPorPromocao(_promocaoServices);
            _descontoPorQuantidadeMaiorQueTres  = new DescontoPorQuantidadeMaiorQueTres();
            _descontoPorQuantidadeMaiorQueCinco = new DescontoPorQuantidadeMaiorQueCinco();

            // Definição da Hierarquia
            _descontoPorPromocao.SetProximo(_descontoPorQuantidadeMaiorQueTres);
            _descontoPorQuantidadeMaiorQueTres.SetProximo(_descontoPorQuantidadeMaiorQueCinco);
        }
 public void SetProximo(IDescontoDoProduto descontoDoProduto) => Proximo = descontoDoProduto;