Example #1
0
        static void Main(string[] args)
        {
            IList <IEngine> vEngines = new List <IEngine>();

            vEngines.Add(new StandardEngine(1300));
            vEngines.Add(new StandardEngine(1600));
            vEngines.Add(new TurboEngine(2000));
            SuperGreenEngine vSuperGreenEngine = new SuperGreenEngine(2500);

            vEngines.Add(new SuperGreenEngineAdapter(vSuperGreenEngine));
            foreach (IEngine vEngine in vEngines)
            {
                WriteLine(vEngine);
            }
            ReadKey();
        }
        public void GreenEngineTest()
        {
            IList <IEngine> engines = new List <IEngine>();

            engines.Add(new StandardEngine(1300));
            engines.Add(new StandardEngine(1600));
            engines.Add(new TurboEngine(2000));

            SuperGreenEngine greenEngine = new SuperGreenEngine(1200);

            engines.Add(new SuperGreenEngineAdapter(greenEngine));

            foreach (var engine in engines)
            {
                System.Console.WriteLine(engine);
            }
        }
Example #3
0
        public static void Main()
        {
            IList<IEngine> engines = new List<IEngine>();

            engines.Add(new StandardEngine(1300));
            engines.Add(new StandardEngine(1600));
            engines.Add(new TurboEngine(2000));

            // Adapt the new engine type
            SuperGreenEngine greenEngine = new SuperGreenEngine(1200);
            engines.Add(new SuperGreenEngineAdapter(greenEngine));

            foreach (var engine in engines)
            {
                Console.WriteLine(engine);
            }
            Console.Read();
        }
Example #4
0
    private SuperGreenEngine greenEngine; // class adapting from

    #endregion Fields

    #region Constructors

    // pass to superclass ctor
    public SuperGreenEngineAdapter(SuperGreenEngine greenEngine)
        : base(greenEngine.EngineSize, false)
    {
        this.greenEngine = greenEngine;
    }