Example #1
0
        static void Main(string[] args)
        {
            var video = new Video()
            {
                Title = "Video 1"
            };
            var videoEncoder = new VideoEncoder();                   //publisher
            var mailService  = new MailService();                    //subscriber

            var messageService = new MessageService();               //subscriber

            videoEncoder.VideoEncoded += mailService.OnVideoEncoded; // making the subscription
            videoEncoder.VideoEncoded += messageService.OnVideoEncoded;

            videoEncoder.Encode(video);
        }
Example #2
0
        static void Main(string[] args)
        {
            var video = new Video()
            {
                title = "Kimi no Nawa"
            };
            var videoEncoder   = new VideoEncoder();                    // Publisher
            var mailService    = new MailService();                     // Subscriber (optional karna bisa buat method langsung di kelas ini)
            var messageService = new MessageService();                  // Add new Subscriber

            videoEncoder.VideoEncoded += mailService.OnVideoEncoded;    // Mendaftarkan subscriber
            videoEncoder.VideoEncoded += messageService.OnVideoEncoded; // Mendaftarkan subscriber baru


            videoEncoder.Encode(video);
            Console.WriteLine("Done");
            Console.ReadLine();
        }
Example #3
0
        static void Main(string[] args)
        {
            var video = new Video()
            {
                title = "Video 'A'"
            };
            var videoEncoder = new VideoEncoder();             //publisher

            var mailService        = new MailService();        //subscriber
            var textMessageService = new TextMessageService(); //subscriber


            //OnVideoEncoded is reference to the mail service method...
            //just like multicast delegate
            videoEncoder.VideoEncoded += mailService.OnVideoEncoded;
            videoEncoder.VideoEncoded += textMessageService.OnVideoEncoded;

            videoEncoder.Encode(video);
        }