Ejemplo n.º 1
0
        static void Main()
        {
            //Create publishers
            IPublisherService sozcu      = new Sozcu("Sozcu");
            IPublisherService cumhuriyet = new Cumhuriyet("Cumhuriyet");

            //Create subscribers
            AnatoliaNewsAgency    anatoliaNewsAgency    = new AnatoliaNewsAgency("Anatolia NA");
            EuropeNewsAssociation europeNewsAssociation = new EuropeNewsAssociation("ENA");

            //Register subscribers to the publishers' events
            sozcu.OnBreakingNewsReleased += anatoliaNewsAgency.BreakingNews;
            sozcu.OnBreakingNewsReleased += europeNewsAssociation.ENA_BreakingNewsReleases;
            sozcu.OnWorldNewsReleased    += anatoliaNewsAgency.WorldNews;
            sozcu.OnWorldNewsReleased    += europeNewsAssociation.ENA_WorldNewsReleases;
            sozcu.OnEconomyNewsReleased  += anatoliaNewsAgency.EconomyNews;
            sozcu.OnEconomyNewsReleased  += europeNewsAssociation.ENA_EconomyNewsReleases;
            sozcu.OnSportsNewsReleased   += anatoliaNewsAgency.SportsNews;
            sozcu.OnSportsNewsReleased   += europeNewsAssociation.ENA_SportsNewsReleases;
            sozcu.OnMagazineNewsReleased += anatoliaNewsAgency.MagazineNews;
            sozcu.OnMagazineNewsReleased += europeNewsAssociation.ENA_MagazineNewsReleases;

            cumhuriyet.OnBreakingNewsReleased += anatoliaNewsAgency.BreakingNews;
            cumhuriyet.OnBreakingNewsReleased += europeNewsAssociation.ENA_BreakingNewsReleases;
            cumhuriyet.OnWorldNewsReleased    += anatoliaNewsAgency.WorldNews;
            cumhuriyet.OnWorldNewsReleased    += europeNewsAssociation.ENA_WorldNewsReleases;
            cumhuriyet.OnEconomyNewsReleased  += anatoliaNewsAgency.EconomyNews;
            cumhuriyet.OnEconomyNewsReleased  += europeNewsAssociation.ENA_EconomyNewsReleases;
            cumhuriyet.OnSportsNewsReleased   += anatoliaNewsAgency.SportsNews;
            cumhuriyet.OnSportsNewsReleased   += europeNewsAssociation.ENA_SportsNewsReleases;
            cumhuriyet.OnMagazineNewsReleased += anatoliaNewsAgency.MagazineNews;
            cumhuriyet.OnMagazineNewsReleased += europeNewsAssociation.ENA_MagazineNewsReleases;

            ((PublisherBase)sozcu).NewPublishOnBreakingNews("TIA Portal 15 Released.", "CEO announced new release.");
        }
Ejemplo n.º 2
0
        static void Main()
        {
            INewsPublishService publisher = new EuroNewsAgency();
            var subscriber1 = new Cumhuriyet();
            var subscriber2 = new Bloomberg();

            publisher.OnBreakingNews += subscriber1.BreakingNewsSubscription;
            publisher.OnEconomyNews  += subscriber1.EconomyNewsSubscription;
            publisher.OnSportsNews   += subscriber1.SportsNewsSubscription;

            publisher.OnEconomyNews += subscriber2.EconomyNews;

            ((EuroNewsAgency)publisher).BreakingNewsRelease("New laws in EU", "Germany releases new laws for refugees.");
            ((EuroNewsAgency)publisher).EconomyNewsRelease("EUR/TRY currency rate", "Currency rate difference increased to 6,27 TL");
        }