static void Main(string[] args) { DisplayA displayA = new DisplayA(); DisplayB displayB = new DisplayB(); DisplayC displayC = new DisplayC(); FacebookClientFactory facebookClientFactory = new FacebookClientFactory(); var facebookClientA = facebookClientFactory.CreateClient(displayA); var facebookClientB = facebookClientFactory.CreateClient(displayB); var facebookClientC = facebookClientFactory.CreateClient(displayC); facebookClientB.Subscribe(facebookClientA); facebookClientC.Subscribe(facebookClientA); facebookClientA.WriteNewWallPost("Post"); facebookClientB.Unsubscribe(facebookClientA); facebookClientA.WriteNewWallPost("Post"); facebookClientC.Unsubscribe(facebookClientA); }
static void Main(string[] args) { IFacebookClientFactory facebookClientFactory = new FacebookClientFactory(); IDisplay consoleDispaler = new DisplayWallPost(); IDisplay consoleDispaler2 = new DisplayWallPost2(); IDisplay consoleDispaler3 = new DisplayWallPost3(); IFacebookClient dolphinsFacebookClient = facebookClientFactory.CreateClient(consoleDispaler); IFacebookClient dolphinsFacebookClient2 = facebookClientFactory.CreateClient(consoleDispaler2); IFacebookClient dolphinsFacebookClient3 = facebookClientFactory.CreateClient(consoleDispaler3); dolphinsFacebookClient2.Subscribe(dolphinsFacebookClient); dolphinsFacebookClient3.Subscribe(dolphinsFacebookClient); dolphinsFacebookClient.WriteNewWallPost("Hey from here"); Console.WriteLine("-----------------------------------------------"); dolphinsFacebookClient2.Unsubscribe(dolphinsFacebookClient); dolphinsFacebookClient3.Unsubscribe(dolphinsFacebookClient); dolphinsFacebookClient.WriteNewWallPost("aftre change"); }