public Abstract_NewsFeed GetNewsFeed(string NewsFeedName)
        {
            Abstract_NewsFeed NewsFeed = null;

            foreach (Abstract_NewsFeed newsFeed in this.NewsFeedList)
            {
                if (newsFeed.FeedName == NewsFeedName)
                {
                    NewsFeed = newsFeed;
                    break;
                }
            }
            return(NewsFeed);
        }
        public void SubscribePhoneToServer(Server server, Abstract_Phone phone, string NewsFeedName)
        {
            Abstract_NewsFeed NewsFeed = server.GetNewsFeed(NewsFeedName);

            if (NewsFeed != null)
            {
                Abstract_PhoneReference PhoneReference = server.GetPhoneReference(phone.id);
                if (PhoneReference == null)
                {
                    PhoneReference = server.CreateNewPhoneReference(phone);
                }
                server.SubscribePhoneToFeed(PhoneReference, NewsFeed);
            }
            else
            {
                phone.Notification("A " + NewsFeedName + " newsfeed does not exist.");
            }
        }
Esempio n. 3
0
        public SubscriberFactory(Abstract_PhoneReference phoneReference, Abstract_NewsFeed NewsFeedObject)
        {
            IObservable <bool> NewsFeedObserver = (IObservable <bool>)NewsFeedObject;

            switch (NewsFeedObject.FeedName)
            {
            case "Business":
            {
                phoneReference.subsciptions = new Subscription_Business(phoneReference.subsciptions, NewsFeedObject);
                phoneReference.subsciptions.Subscribe(NewsFeedObserver);
                break;
            }

            case "Sports":
            {
                phoneReference.subsciptions = new Subscription_Sports(phoneReference.subsciptions, NewsFeedObject);
                phoneReference.subsciptions.Subscribe(NewsFeedObserver);
                break;
            }
            }
        }
Esempio n. 4
0
 public Abstract_Subscription(Abstract_Subscription outerLayer, Abstract_NewsFeed NewsFeedObject)
 {
     this.OuterLayer      = outerLayer;
     this.UpdateAvailable = false;
     this.NewsFeed        = NewsFeedObject;
 }
 public Subscription_Sports(Abstract_Subscription subscription, Abstract_NewsFeed NewsFeedObject) : base(subscription, NewsFeedObject)
 {
     this.NewsFeedName = "Sports";
 }
 public void SubscribePhoneToFeed(Abstract_PhoneReference phoneReference, Abstract_NewsFeed NewsFeed)
 {
     SubscriberFactory subscriber = new SubscriberFactory(phoneReference, NewsFeed);
 }
 public Subscription_Business(Abstract_Subscription subscription, Abstract_NewsFeed NewsFeedObject) : base(subscription, NewsFeedObject)
 {
     this.NewsFeedName = "Business";
 }