using Domieszki;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Interfejs
{
    public class DomieszkaKlient
    {
        public DomieszkaKlient(IDocelowyInterfejs cel)
        {
            this.cel = cel;
        }

        public void Run()
        {
            cel.ZróbCoś();

            var celJakoDomieszkaA = cel as IDomieszkaInterfejsA;
            if(celJakoDomieszkaA != null)
            {
                celJakoDomieszkaA.MetodaA();
            }

            var celJakoDomieszkaB = cel as IDomieszkaInterfejsB;
            if(celJakoDomieszkaB != null)
            {
                celJakoDomieszkaB.MetodaB(30);
            }

            var celJakoDomieszkaC = cel as IDomieszkaInterfejsC;
            if(celJakoDomieszkaC != null)
            {
                celJakoDomieszkaC.MetodaC("Cześć!");
            }
        }

        private readonly IDocelowyInterfejs cel;
    }
}
