Exemple #1
0
        public ICalculaVariacionVelocidad CrearInstancia(EnumEstacionesAnio estacionesAnio)
        {
            ICalculaVariacionVelocidad   variacionVelocidad = null;
            IObtenedorVariacionVelocidad obtenedorVariacionVelocidad;

            switch (estacionesAnio)
            {
            case EnumEstacionesAnio.Invierno:
                obtenedorVariacionVelocidad = _factoryGenericContainer.GetInstance <IObtenedorVariacionVelocidad>("ObtenedorVelocidadInvierno");
                variacionVelocidad          = new CalculaVariacionVelocidad(obtenedorVariacionVelocidad);
                break;

            case EnumEstacionesAnio.Otonio:
                obtenedorVariacionVelocidad = _factoryGenericContainer.GetInstance <IObtenedorVariacionVelocidad>("ObtenedorVelocidadOtonio");
                variacionVelocidad          = new CalculaVariacionVelocidad(obtenedorVariacionVelocidad);
                break;

            case EnumEstacionesAnio.Verano:
                obtenedorVariacionVelocidad = _factoryGenericContainer.GetInstance <IObtenedorVariacionVelocidad>("ObtenedorVelocidadVerano");
                variacionVelocidad          = new CalculaVariacionVelocidad(obtenedorVariacionVelocidad);
                break;
            }

            return(variacionVelocidad);
        }
 public CalculaFechaEntregaMaritimo(IObtenedorTiempoReparto obtenedorTiempoReparto,
                                    ICalcularTiempoEntrega calcularTiempoEntrega, ICalculaVariacionVelocidad calculaVariacionVelocidad)
 {
     this.obtenedorTiempoReparto = obtenedorTiempoReparto ??
                                   throw new ArgumentNullException(nameof(obtenedorTiempoReparto));
     this.calcularTiempoEntrega =
         calcularTiempoEntrega ?? throw new ArgumentNullException(nameof(calcularTiempoEntrega));
     this.calculaVariacionVelocidad = calculaVariacionVelocidad ??
                                      throw new ArgumentNullException(nameof(calculaVariacionVelocidad));
 }