Example #1
0
 // Builder uses a complex series of steps
 public void Construct(IVehicleBuilder vehicleBuilder)
 {
     vehicleBuilder.BuildFrame();
     vehicleBuilder.BuildEngine();
     vehicleBuilder.BuildWheels();
     vehicleBuilder.BuildDoors();
 }
 public VehicleProduct ConstructVehicleProduct(IVehicleBuilder builder)
 {
     builder.AddEngine();
     builder.AddWheel();
     builder.AddFrame();
     return(builder.GetProduct());
 }
Example #3
0
 public void Build(IVehicleBuilder builder)
 {
     builder.BuildEngine();
     builder.InstallWheels();
     builder.PaintVehicle();
     builder.PremierePackage();
 }
 public void Construct(IVehicleBuilder builder)
 {
     builder.BuildFrame();
     builder.BuildEngine();
     builder.BuildWheels();
     builder.BuildDoors();
 }
        /// <summary>
        /// Begins construction of a new vehicle.
        /// </summary>
        /// <param name="builder">A <see cref="IVehicleBuilder"/>.</param>
        public static void BuildCar(IVehicleBuilder builder)
        {
            builder.InitializeVehicle();

            builder.BuildEngine();
            builder.BuildExhaust();
            builder.BuildInterior();
            builder.BuildSuspension();
        }
        public VehicleCreator(IVehicleBuilder vehicleBuilder)
        {
            if (vehicleBuilder == null)
            {
                throw new ArgumentNullException("vehicleBuilder", "You did not pass a vehicleBuilder");
            }

            _vehicleBuilder = vehicleBuilder;
        }
Example #7
0
 public Vehicle BuildVehicle(IVehicleBuilder builder)
 {
     builder.BuildVehicle();
     builder.BuildDoors();
     builder.BuildEngine();
     builder.BuildSeats();
     builder.BuildWheels();
     return(builder.GetVehicle());
 }
Example #8
0
        public void BuildTruckSucceeds()
        {
            IVehicleBuilder builder = VehicleService.GetBuilder(VehicleType.Truck);

            VehicleService.BuildCar(builder);
            IVehicle vehicle = builder.GetVehicle();

            Assert.IsTrue(vehicle.GetEngine() == "V8");
            Assert.IsTrue(vehicle.GetExhaust() == "Dual exhaust");
            Assert.IsTrue(vehicle.GetInterior() == "Extended cab");
            Assert.IsTrue(vehicle.GetSuspension() == "Lift kit");
        }
Example #9
0
        public void BuildSedanSucceeds()
        {
            IVehicleBuilder builder = VehicleService.GetBuilder(VehicleType.Sedan);

            VehicleService.BuildCar(builder);
            IVehicle vehicle = builder.GetVehicle();

            Assert.IsTrue(vehicle.GetEngine() == "V4");
            Assert.IsTrue(vehicle.GetExhaust() == "Single exhaust");
            Assert.IsTrue(vehicle.GetInterior() == "Sedan interior");
            Assert.IsTrue(vehicle.GetSuspension() == "Standard suspension");
        }
Example #10
0
        public void BuildConvertibleSucceeds()
        {
            IVehicleBuilder builder = VehicleService.GetBuilder(VehicleType.Convertible);

            VehicleService.BuildCar(builder);
            IVehicle vehicle = builder.GetVehicle();

            Assert.IsTrue(vehicle.GetEngine() == "V6");
            Assert.IsTrue(vehicle.GetExhaust() == "Dual exhaust");
            Assert.IsTrue(vehicle.GetInterior() == "Flip top");
            Assert.IsTrue(vehicle.GetSuspension() == "Sports package");
        }
Example #11
0
        public JVBBSqlVehicleStorageTests()
        {
            this.connectionString = ConfigurationManager.AppSettings[CONNECTION_STRING_KEY];

            string scripsFolder = ConfigurationManager.AppSettings[SCRIPTS_FOLDER_KEY];

            this.creationScript = ConfigurationManager.AppSettings[CREATION_SCRIPT_FILE_KEY];
            this.creationScript = Path.Combine(Environment.CurrentDirectory, scripsFolder, this.creationScript);

            this.destructionScript = ConfigurationManager.AppSettings[DESTRUCTION_SCRIPT_FILE_KEY];
            this.destructionScript = Path.Combine(Environment.CurrentDirectory, scripsFolder, this.destructionScript);

            this.fakeStorage        = new ArrayVehicleStorage();
            this.enrollmentProvider = new DefaultEnrollmentProvider();
            this.vehicleBuilder     = new VehicleBuilder(this.enrollmentProvider);
        }
Example #12
0
        /// <summary>
        /// Provides an <see cref="IVehicleBuilder"/> appropriate for the requested <see cref="VehicleType"/>.
        /// </summary>
        /// <param name="carType">A <see cref="VehicleType"/>.</param>
        /// <returns>A <see cref="IVehicleBuilder"/>.</returns>
        public static IVehicleBuilder GetBuilder(VehicleType carType)
        {
            IVehicleBuilder builder = null;

            switch (carType)
            {
            case VehicleType.Convertible:
                builder = new ConvertibleBuilder();
                break;

            case VehicleType.Sedan:
                builder = new SedanBuilder();
                break;

            case VehicleType.Truck:
                builder = new TruckBuilder();
                break;
            }

            return(builder);
        }
Example #13
0
 private static IDictionary <IEnrollment, IVehicle> readFromFile(string fileFullPath, IVehicleBuilder vehicleBuilder)
 {
     throw new NotImplementedException();
 }
Example #14
0
 public VehicleCreator(IVehicleBuilder obj)
 {
     objBuilder = obj;
 }
Example #15
0
 public FileVehicleStorage(string fileFullPath, IVehicleBuilder vehicleBuilder)
     : base(readFromFile(fileFullPath, vehicleBuilder))
 {
     this.filePath       = fileFullPath;
     this.vehicleBuilder = vehicleBuilder;
 }
Example #16
0
 public void CreateVehicle(IVehicleBuilder builder)
 {
     builder.SetName();
     builder.SetSerialNumber();
     builder.SetMaximumSpeed();
 }
Example #17
0
 public PrvVehicleQuery(string connectionString, IVehicleBuilder vehicleBuilder)
 {
     this.connectionString = connectionString;
     this.vehicleBuilder   = vehicleBuilder;
 }
Example #18
0
 public SqlVehicleStorage(string connectionString, IVehicleBuilder vehicleBuilder)
 {
     this.connectionString = connectionString;
     this.vehicleBuilder   = vehicleBuilder;
 }
Example #19
0
 public VehicleCreator(IVehicleBuilder vehicleObjBuilder)
 {
     vehicleBuilder = vehicleObjBuilder;
 }
Example #20
0
 public T Construct <T>(IVehicleBuilder <T> builder) where T : Vehicle
 {
     return(builder.Build());
 }
Example #21
0
 /// <summary>
 /// Construct returns nothing, another variant when Construct return constructed object
 /// </summary>
 /// <param name="builder"></param>
 public void Construct(IVehicleBuilder builder)
 {
     builder.SetColor("Red");
     builder.SetWheels();
     builder.SetType();
 }
Example #22
0
 public VehicleManufacturer(IVehicleBuilder vehicleBuilder)
 {
     _VehicleBuilder = vehicleBuilder;
 }
Example #23
0
 public void Construct(IVehicleBuilder builder)
 {
     builder.BuildA();
     builder.BuildB();
 }
Example #24
0
 public CarDirector(IVehicleBuilder builder)
 {
     SetBuilder(builder);
 }
Example #25
0
 public VehicleCreator(IVehicleBuilder builder) //<-------Se le inyecta la dependencia
 {
     objBuilder = builder;
 }
Example #26
0
 public VehicleCreator(IVehicleBuilder builder)
 {
     this.builder = builder;
 }
Example #27
0
 public VehicleCreator(IVehicleBuilder builder)
 {
     objBuilder = builder;
 }
Example #28
0
 public VehicleBuilder(IVehicleBuilder vehicleBuilder)
 {
     this.vehicleBuilder = vehicleBuilder;
 }
 public VehicleCreator(IVehicleBuilder builder)
 {
     _objBuilder = builder;
 }
Example #30
0
 public VehicleManufacturer(IVehicleBuilder builder)
 {
     _builder = builder;
 }
 public VehicleCreator(IVehicleBuilder vehicleBuilder)
 {
     _vehicleBuilder = vehicleBuilder;
 }
Example #32
0
 public void SetBuilder(IVehicleBuilder builder)
 {
     this.builder = builder;
 }