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

namespace DekoratorProfilujący
{
    public class ProfilowanyKomponent : IKomponent
    {
        public ProfilowanyKomponent(IKomponent udekorowanyKomponent, IStoper stoper)
        {
            this.udekorowanyKomponent = udekorowanyKomponent;
            this.stoper = stoper;
        }

        public void JakaśMetoda()
        {
            stoper.Start();
            udekorowanyKomponent.JakaśMetoda();
            stoper.Stop();
        }

        private readonly IKomponent udekorowanyKomponent;
        private readonly IStoper stoper;
    }
}
