public string CreateBoatEngine(string model, int horsepower, int displacement, EngineType engineType)
        {
            IBoatEngine engine;

            switch (engineType)
            {
            case EngineType.Jet:
                engine = new JetEngine(model, horsepower, displacement);
                break;

            case EngineType.Sterndrive:
                engine = new SterndriveEngine(model, horsepower, displacement);
                break;

            default:
                throw new NotImplementedException();
            }

            this.Database.Engines.Add(engine);
            return(string.Format(
                       "Engine model {0} with {1} HP and displacement {2} cm3 created successfully.",
                       model,
                       horsepower,
                       displacement));
        }
        /// <summary>
        /// Creates a new boat engine and adds it to the database.
        /// </summary>
        /// <param name="model"> Engine manufacturer model </param>
        /// <param name="horsepower"> Engine power (in HP) </param>
        /// <param name="displacement"> Engine displacement (water draught) </param>
        /// <param name="engineType"> Engine type (Jet or Sterndrive)</param>
        /// <returns> A view with information about the outcome of the operation </returns>
        public string CreateBoatEngine(string model, int horsepower, int displacement, EngineType engineType)
        {
            IBoatEngine engine;
            switch (engineType)
            {
                case EngineType.Jet:
                    engine = new JetEngine(model, horsepower, displacement);
                    break;
                case EngineType.Sterndrive:
                    engine = new SterndriveEngine(model, horsepower, displacement);
                    break;
                default:
                    throw new NotImplementedException();
            }

            this.Database.Engines.Add(engine);
            return string.Format(
                "Engine model {0} with {1} HP and displacement {2} cm3 created successfully.",
                model,
                horsepower,
                displacement);
        }