static void Main(string[] args) { //sample 2 var messagePublisher = new MessageSubject(); var postTitle = new Post() { Message = "this is new post" }; var emailObserver = new EmailObserver(); var telegramObserver = new TelegramObserver(); var smsObserver = new SMSObserver(); messagePublisher.MessagePublisher += emailObserver.onEmailObserver; messagePublisher.MessagePublisher += telegramObserver.onTelegramObsever; messagePublisher.MessagePublisher += smsObserver.onSMSObsever; messagePublisher.onPublisher(postTitle); //=================================================================== //sample 1 //var person = new Person(); //person.FallsIll += CallDoctor; //person.CatchACold(); Console.ReadKey(); }
static void Main(string[] args) { var emailObserver = new EmailObserver(); var smsObserver = new SMSObserver(); DocketData subject = new DocketData(); subject.RegisterObserver(emailObserver); subject.RegisterObserver(smsObserver); Docket efhDocket = new Docket() { DocketId = 1, DocketNumber = "123", DocketText = "Docket filed for the case Energy Future Holdings", FileDate = new DateTime(2017, 6, 28) }; subject.NewDocketAdded(efhDocket); Docket daiDocket = new Docket() { DocketId = 2, DocketNumber = "456", DocketText = "Docket filed for the case Delta Airlines", FileDate = new DateTime(2017, 6, 29) }; subject.NewDocketAdded(daiDocket); subject.RemoveObserver(emailObserver); Docket cscDocket = new Docket() { DocketId = 3, DocketNumber = "89", DocketText = "Docket filed for the case Corporation Services", FileDate = new DateTime(2017, 7, 29) }; subject.NewDocketAdded(cscDocket); Console.ReadLine(); }