Example #1
0
 /// <summary>
 /// Creates a new device finder instance
 /// </summary>
 public DeviceFinder(DeviceFinderOptions options)
 {
     this._options = options.Clone();
     this._ranges  = new LinkedList <DeviceRange>();
     this._ranges.AddLast(new DeviceRange(false, 1, ObjectId.MaxInstance));
     this._observers = new SubscriptionList <DeviceTableEntry>();
 }
Example #2
0
        private async Task QuerySubscription()
        {
            UserContentProvider user = new UserContentProvider();

            if (pageIndex == 0)
            {
                if (SubscriptionList == null)
                {
                    SubscriptionList = new ObservableCollection <SubscriptionNotesResult>();
                }
                else
                {
                    SubscriptionList.Clear();
                }
            }

            int index = 0;

            if (SubscriptionList.Count != 0)
            {
                index = SubscriptionList[SubscriptionList.Count - 1].ReceivedAt - 1;
            }
            List <SubscriptionNotesResult> result = await user.QuerySubscriptionNotes(index, GlobalValue.CurrentUserContext.UserId, GlobalValue.CurrentUserContext.MobileToken);

            result.ForEach(x => SubscriptionList.Add(x));
            pageIndex++;
        }
Example #3
0
        public async void ExecuteDeleteSubscriptionCommand(object parameter)
        {
            Busy        = true;
            BusyContent = "Deleting subscription";

            try
            {
                await Task.Factory.StartNew(() =>
                {
                    var SpisService = new SpisService();
                    SpisService.RemoveSubscription(Id, new List <SpisSubscriptionObject>
                    {
                        SelectedSubscription
                    });
                });

                SubscriptionList.Remove(SelectedSubscription);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            finally
            {
                Busy = false;
            }
        }
        /// <summary>
        /// Returns list of Subscriptions based on the current input in <see cref="SubscriptionList"/>
        /// </summary>
        private List <Subscription> GetUpdatedSubscriptions()
        {
            List <Subscription> updatedSubscriptions = new List <Subscription>();

            foreach (SubscriptionSettingViewModel item in SubscriptionList.ToList())
            {
                var existingSub = Sys.Settings.Subscriptions.FirstOrDefault(s => s.Url == item.Url);

                if (existingSub == null)
                {
                    existingSub = new Subscription()
                    {
                        Name = item.Name, Url = item.Url
                    };
                }
                else
                {
                    existingSub.Name = item.Name;
                }

                updatedSubscriptions.Add(existingSub);
            }

            return(updatedSubscriptions);
        }
Example #5
0
 public void OnSubscriptionStoreItemClicked(int subscriptionIndex)
 {
     _subscriptionToSubscribe = SubscriptionList.GetSubscriptionByIndex(subscriptionIndex);
     confirmPanel.SetActive(true);
     confirmText.text = "Would you like to subscribe to " + _subscriptionToSubscribe.Name + " with " +
                        _subscriptionToSubscribe.Price + "/month ?";
 }
Example #6
0
        public SubscriptionList SyncPurchaseOrder(string userId)
        {
            UserSubscriptionLogic   userSubLogic = new UserSubscriptionLogic();
            List <UserSubscription> subsList     = new List <UserSubscription>();
            PurchaseOrderLogic      logic        = new PurchaseOrderLogic();
            SubscriptionList        userSsubList = new SubscriptionList();

            userSubLogic.UserManager = UserManager;
            userSubLogic.RoleManager = RoleManager;

            userSsubList.UserId = userId;
            var poList = logic.GetPOToBeSynchedByUser(userId);

            foreach (var poItem in poList)
            {
                foreach (var item in poItem.OrderItems)
                {
                    UserSubscription usersubs = new UserSubscription()
                    {
                        UserId             = userId,
                        SubscriptionTypeId = item.SubscriptionId,
                        ActivationDate     = DateTime.Now.Date,
                        Quantity           = item.Quantity
                    };
                    subsList.Add(usersubs);
                }
                var dataList = userSubLogic.CreateUserSubscriptionList(subsList, userId);
                poItem.IsSynched = true;
                logic.UpdatePurchaseOrder(poItem.Id, poItem);
                userSsubList.Subscriptions.AddRange(dataList.Subscriptions);
            }
            return(userSsubList);
        }
        public SubscriptionList RenewSubscription(RenewSubscriptionList subList, string userId)
        {
            var user = UserManager.FindByIdAsync(userId).Result;
            List <Subscription> subscriptionListWithLicense = new List <Subscription>();
            var subIdList   = subList.SubscriptionList.Select(s => s.Id).ToList();
            var userSubList = Work.UserSubscriptionRepository.GetData(u => u.UserId == userId && subIdList.Contains(u.SubscriptionTypeId)).ToList();

            foreach (var sub in userSubList)
            {
                sub.RenewalDate = subList.RenewalDate;
                sub.ExpireDate  = sub.ExpireDate.AddDays(sub.Subtype.ActiveDays);
                Work.UserSubscriptionRepository.Update(sub);
            }
            Work.UserSubscriptionRepository.Save();
            foreach (var sub in userSubList)
            {
                var subTemp = AutoMapper.Mapper.Map <UserSubscription>(sub);
                var subObj  = GetSubscriptionWithLicense(subTemp, user.OrganizationId);
                subscriptionListWithLicense.Add(subObj);
            }
            SubscriptionList subListObj = new SubscriptionList();

            subListObj.UserId        = userId;
            subListObj.Subscriptions = subscriptionListWithLicense;
            return(subListObj);
        }
        public void Unsubscribe(string id, string name)
        {
            name = name.ToLowerInvariant();

            if (!this.consumers.ContainsKey(id))
            {
                return;
            }

            this.log.LogInformation("The {id} is unsubscribing to \"{name}\" event.", id, name);

            SubscriptionList consumer = this.consumers[id];

            if (consumer.Events.Contains(name))
            {
                consumer.Events.Remove(name);
            }

            if (consumer.Events.Count == 0)
            {
                this.consumers.TryRemove(name, out _);
            }

            // If there are no longer any subscribers to this event, remove the subscription to it.
            if (!this.consumers.Any(c => c.Value.Events.Contains(name)))
            {
                UnsubscribeToEvent(name);
            }
        }
Example #9
0
        public static void UpdateSubscriptionOnpremise(SubscriptionList subs, bool isRenewal = false)
        {
            string userId = string.Empty;

            userId = LicenseSessionState.Instance.User.UserId;
            List <UserSubscriptionData> subscriptionData = new List <UserSubscriptionData>();

            foreach (var subDtls in subs.Subscriptions)
            {
                //Code to save the user Subscription details to Database.
                UserSubscriptionData userSubscription = new UserSubscriptionData()
                {
                    SubscriptionDate = subDtls.SubscriptionDate,
                    RenewalDate      = subDtls.RenewalDate,
                    SubscriptionId   = subDtls.SubscriptionTypeId,
                    UserId           = userId,
                    Quantity         = subDtls.OrderdQuantity,
                    Subscription     = subDtls,
                    LicenseKeys      = subDtls.LicenseKeyProductMapping
                };
                subscriptionData.Add(userSubscription);
            }
            HttpClient client = WebApiServiceLogic.CreateClient(ServiceType.OnPremiseWebApi);
            string     url    = string.Empty;

            if (isRenewal)
            {
                url = "api/UserSubscription/UpdateSubscriptionRenewal/" + LicenseSessionState.Instance.User.UserId;
            }
            else
            {
                url = "api/UserSubscription/SyncSubscription";
            }
            var response = client.PostAsJsonAsync(url, subscriptionData).Result;
        }
Example #10
0
        protected override void OnLoad(System.EventArgs e)
        {
            base.OnLoad(e);

            if (!IsPostBack)
            {
                if (!HttpContext.Current.User.Identity.IsAuthenticated)
                {
                    return;
                }
                SubscriptionArea.Visible = true;
                string email = EPiServerProfile.Current.Email;
                if (!string.IsNullOrEmpty(email))
                {
                    Email.Text    = email;
                    Email.Enabled = false;
                    EmailFormatValidator.Enabled   = false;
                    EmailRequiredValidator.Enabled = false;
                }

                foreach (ListItem item in Interval.Items)
                {
                    item.Selected = Int32.Parse(item.Value) == Subscription.Interval;
                }
                SubscriptionList.DataBind();
            }
        }
Example #11
0
        public async void ExecuteAddSubscriptionCommand(object parameter)
        {
            Busy        = true;
            BusyContent = "Adding subscription";

            try
            {
                var subscription = new SpisSubscriptionObject
                {
                    AmssEndpointURL = new Uri(AmssUrl),
                    MbEndpointURL   = new Uri(MbUrl),
                    IdentityId      = SelectedAcl.IdentityId,
                    IdentityName    = SelectedAcl.IdentityName
                };

                await Task.Factory.StartNew(() =>
                {
                    var SpisService = new SpisService();
                    SpisService.AddSubscription(Id, new List <SpisSubscriptionObject>
                    {
                        subscription
                    });
                });

                SubscriptionList.Add(subscription);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            finally
            {
                Busy = false;
            }
        }
Example #12
0
        private static void SubscribePreviousConnection(Guid key, MqttClientAuthenticateResult result)
        {
            if (!result.IsSessionPresent)
            {
                return;
            }

            for (int i = 0; i < result.UserProperties.Count; i++)
            {
                MqttUserProperty prop = result.UserProperties[i];
                if (prop.Name == "subscriptions")
                {
                    using (var ms = new MemoryStream(Encoding.Unicode.GetBytes(prop.Value)))
                    {
                        DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(SubscriptionList));
                        SubscriptionList           list       = (SubscriptionList)serializer.ReadObject(ms);
                        foreach (PreviousSubscription subscription in list)
                        {
                            MqttClient client = GetClient(key);
                            string     gxproc = client.GetProc(subscription.topic);
                            if (!string.IsNullOrEmpty(gxproc))
                            {
                                Subscribe(key, subscription.topic, gxproc, subscription.qos);
                            }
                        }
                    }
                }
            }
        }
Example #13
0
 /// <summary>
 /// Constructs a new Host instance
 /// </summary>
 public Host(HostOptions options)
 {
     this._options        = options.Clone();
     this._devices        = new DeviceTable();
     this._deviceSearches = new LinkedList <DeviceSearch>();
     this._txManager      = new TransactionManager(this);
     this._unconfirmedRequestObservers = new SubscriptionList <InboundUnconfirmedRequest>();
 }
Example #14
0
        /// <summary>
        /// Performing the licence purchase action.
        /// </summary>
        /// <param name="parm"></param>
        private void OnPurchase(object parm)
        {
            if (!string.IsNullOrEmpty(CardName) && !string.IsNullOrEmpty(CardNumber) && !string.IsNullOrEmpty(SelectedMonth) &&
                !string.IsNullOrEmpty(SelectedYear.ToString()) && !string.IsNullOrEmpty(CardCVV.ToString()))
            {
                //Add to cart
                CartItems item = new CartItems();
                item.SubscriptionTypeId = Convert.ToInt32(AppState.Instance.SelectedSubscription.Id);
                item.Quantity           = 1;
                item.DateCreated        = DateTime.Now;
                item.UserId             = AppState.Instance.User.ServerUserId;
                HttpClient client0 = AppState.CreateClient(ServiceType.CentralizeWebApi.ToString());
                client0.DefaultRequestHeaders.Add("Authorization", "Bearer " + AppState.Instance.CentralizedToken.access_token);
                var response = client0.PostAsJsonAsync("api/Cart/Create", item).Result;
                client0.Dispose();
                // ===================

                SubscriptionList userSubscriptionList = null;
                var        serviceType = System.Configuration.ConfigurationManager.AppSettings.Get("ServiceType");
                HttpClient client      = AppState.CreateClient(ServiceType.CentralizeWebApi.ToString());
                client.DefaultRequestHeaders.Add("Authorization", "Bearer " + AppState.Instance.CentralizedToken.access_token);
                response = client.PostAsync("api/cart/OnlinePayment/" + AppState.Instance.User.ServerUserId, null).Result;
                if (response.IsSuccessStatusCode)
                {
                    var jsondata = response.Content.ReadAsStringAsync().Result;
                    if (!string.IsNullOrEmpty(jsondata))
                    {
                        userSubscriptionList = JsonConvert.DeserializeObject <SubscriptionList>(jsondata);
                        string userId = string.Empty;
                        userId = AppState.Instance.User.UserId;
                        List <UserSubscriptionData> subscriptionData = new List <UserSubscriptionData>();
                        foreach (var subDtls in userSubscriptionList.Subscriptions)
                        {
                            //Code to save the user Subscription details to Database.
                            UserSubscriptionData userSubscription = new UserSubscriptionData();
                            userSubscription.SubscriptionDate = subDtls.SubscriptionDate;
                            userSubscription.SubscriptionId   = subDtls.SubscriptionTypeId;
                            userSubscription.UserId           = userId;
                            userSubscription.Quantity         = subDtls.OrderdQuantity;
                            userSubscription.Subscription     = subDtls;
                            userSubscription.LicenseKeys      = subDtls.LicenseKeyProductMapping;
                            subscriptionData.Add(userSubscription);
                        }
                        client.Dispose();
                        HttpClient client1 = AppState.CreateClient(ServiceType.OnPremiseWebApi.ToString());
                        client1.DefaultRequestHeaders.Add("Authorization", "Bearer " + AppState.Instance.OnPremiseToken.access_token);
                        var response1 = client1.PostAsJsonAsync("api/UserSubscription/SyncSubscription", subscriptionData).Result;
                        client1.Dispose();
                    }
                }
                var kvp = new Dictionary <string, string>();
                kvp.Add("Amount", AppState.Instance.SelectedSubscription.Price.ToString());
                NavigateNextPage("RedirectToAmountPaymentPage", kvp);
            }
        }
        public void GetXmlTest()
        {
            string expected = @"<?xml version=""1.0"" encoding=""utf-8""?>
<function controlid=""unittest"">
    <get_applications />
</function>";

            SubscriptionList apiFunction = new SubscriptionList("unittest");

            this.CompareXml(expected, apiFunction);
        }
Example #16
0
        public virtual void Subscribe(Core.IPeer peer, string topic)
        {
            var existingSub = allSubscriptions.FirstOrDefault(x => x.thePeer == peer);

            if (existingSub == null)
            {
                existingSub         = new SubscriptionList();
                existingSub.thePeer = peer;
                allSubscriptions.Add(existingSub);
            }

            existingSub.activeSubscriptions.Add(topic);
        }
Example #17
0
        /// <summary>
        /// performing the license purchase  action
        /// </summary>
        /// <param name="param">param</param>
        private void RedirectToPayment(object param)
        {
            int         id      = Convert.ToInt32(param);
            LicenseType typeObj = SubscriptionList.FirstOrDefault(l => l.TypeId == id);

            //LicenseLogic logic = new LicenseLogic();
            SingletonLicense.Instance.SelectedSubscription = typeObj;
            //logic.ActivateSubscription();
            if (NavigateNextPage != null)
            {
                NavigateNextPage(null, null);
            }
        }
        /// <summary>
        /// performing the license purchase  action
        /// </summary>
        /// <param name="param">param</param>
        private void RedirectToPayment(object param)
        {
            int id      = Convert.ToInt32(param);
            var typeObj = SubscriptionList.FirstOrDefault(l => l.Id == id);

            AppState.Instance.SelectedSubscription = typeObj;



            if (NavigateNextPage != null)
            {
                NavigateNextPage("CreditAndDebitCardDetails", null);
            }
        }
Example #19
0
            public SubscriptionList GetSubscriptionList(TKey key)
            {
                lock (_lock)
                {
                    SubscriptionList list;
                    if (!_subscriptions.TryGetValue(key, out list))
                    {
                        list = new SubscriptionList();
                        _subscriptions.Add(key, list);
                    }

                    return(list);
                }
            }
Example #20
0
        public void TestSubscriptionListNotification()
        {
            SubscriptionList sl = new SubscriptionList();
            int changes         = 0;

            sl.SubscriptionAdded += (Subscription s) =>
            {
                ++changes;
            };
            sl.Add(new WebSubscription()
            {
                URI = "http://www.example.com/rss"
            });
            Assert.AreEqual(1, changes);
        }
Example #21
0
        public void TestRdfFeedItems()
        {
            SubscriptionList sl  = new SubscriptionList();
            WebSubscription  sub = new WebSubscription()
            {
                Parent = sl
            };

            sub.Load();
            Dictionary <string, int> propertyChanges = DetectSubscriptionChanges(sub);

            using (FileStream fs = new FileStream("rss-rdf-sample.xml", FileMode.Open)) {
                sub.UpdateFromStreamReader(new StreamReader(fs), SynchronousDispatch, RejectError);
            }
            ValidateRdf(sub);
        }
Example #22
0
        public static async Task UpdateUserSubscription()
        {
            SubscriptionList userSubscriptionList = null;
            HttpClient       client = WebApiServiceLogic.CreateClient(ServiceType.CentralizeWebApi);
            var response            = await client.PostAsync("api/cart/OnlinePayment/" + LicenseSessionState.Instance.User.ServerUserId, null);

            if (response.IsSuccessStatusCode)
            {
                var jsondata = response.Content.ReadAsStringAsync().Result;
                if (!string.IsNullOrEmpty(jsondata))
                {
                    userSubscriptionList = JsonConvert.DeserializeObject <SubscriptionList>(jsondata);
                    UpdateSubscriptionOnpremise(userSubscriptionList);
                }
            }
        }
Example #23
0
 public SubscriptionListViewModel(SubscriptionList sl, ListBox SubscriptionsWidget, ItemsControl EntriesWidget)
 {
     this._Subscriptions              = sl;
     this.SubscriptionsWidget         = SubscriptionsWidget;
     this.EntriesWidget               = EntriesWidget;
     this.SubscriptionsWidget.Loaded += (sender, e) =>
     {
         UpdateSortOrder();
         UpdateFilter();
     };
     Subscriptions = new ObservableCollection <SubscriptionViewModel>();
     foreach (Subscription sub in _Subscriptions.Subscriptions)
     {
         Subscriptions.Add(new SubscriptionViewModel(sub));
     }
     _Subscriptions.SubscriptionAdded   += SubscriptionAdded;
     _Subscriptions.SubscriptionRemoved += SubscriptionRemoved;
 }
Example #24
0
 public MainWindow(SubscriptionList sl)
 {
     InitializeComponent();
     if (sl == null)
     {
         try {
             sl = SubscriptionList.LoadDefault();
         }
         catch (Exception e) {
             Error(e);
             this.Close();
         }
     }
     _Subscriptions = sl;
     _Subscriptions.BackgroundRegister(Dispatch, Error);
     Subscriptions    = new SubscriptionListViewModel(_Subscriptions, SubscriptionsWidget, EntriesWidget);
     this.DataContext = this;
 }
Example #25
0
            public SubscriptionList this[string typeFullName]
            {
                get
                {
                    lock (_lock)
                    {
                        SubscriptionList list;

                        if (!_lists.TryGetValue(typeFullName, out list))
                        {
                            list = new SubscriptionList();
                            _lists.Add(typeFullName, list);
                        }

                        return(list);
                    }
                }
            }
Example #26
0
        public void TestAtomFeedDetails()
        {
            SubscriptionList sl  = new SubscriptionList();
            WebSubscription  sub = new WebSubscription()
            {
                Parent = sl
            };

            sub.Load();
            Dictionary <string, int> propertyChanges = DetectSubscriptionChanges(sub);

            using (FileStream fs = new FileStream("atomsample.xml", FileMode.Open)) {
                sub.UpdateFromStreamReader(new StreamReader(fs), SynchronousDispatch, RejectError);
            }
            Assert.AreEqual(1, propertyChanges["Title"]);
            Assert.AreEqual(1, propertyChanges["PublicURI"]);
            Assert.AreEqual("Example Feed", sub.Title);
            Assert.AreEqual("http://example.org/", sub.PublicURI);
        }
Example #27
0
        public void TestAtomFeedSerialization()
        {
            SubscriptionList sl  = new SubscriptionList();
            WebSubscription  sub = new WebSubscription()
            {
                Parent = sl
            };

            sub.Load();
            using (FileStream fs = new FileStream("atomsample.xml", FileMode.Open)) {
                sub.UpdateFromStreamReader(new StreamReader(fs), SynchronousDispatch, RejectError);
            }
            foreach (KeyValuePair <string, Entry> kvp in sub.Entries)
            {
                if (kvp.Value.Serial % 2 == 1)
                {
                    kvp.Value.Read = true;
                }
            }
            sub.Save("data.xml");

            WebSubscription sub2 = new WebSubscription()
            {
                Parent = sl
            };
            Dictionary <string, int> propertyChanges = DetectSubscriptionChanges(sub2);

            sub2.Load("data.xml");
            Assert.AreEqual(1, propertyChanges["Entries"]);
            ValidateAtom(sub2);
            foreach (KeyValuePair <string, Entry> kvp in sub2.Entries)
            {
                if (kvp.Value.Serial % 2 == 1)
                {
                    Assert.AreEqual(true, kvp.Value.Read);
                }
                else
                {
                    Assert.AreEqual(false, kvp.Value.Read);
                }
            }
        }
        internal void MoveSelectedSubscription(SubscriptionSettingViewModel selected, int toAdd)
        {
            int currentIndex = SubscriptionList.IndexOf(selected);

            if (currentIndex < 0)
            {
                // not found in  list
                return;
            }

            int newIndex = currentIndex + toAdd;

            if (newIndex == currentIndex || newIndex < 0 || newIndex >= SubscriptionList.Count)
            {
                return;
            }

            SubscriptionList.Move(currentIndex, newIndex);
            SubscriptionsChanged = true;
        }
Example #29
0
 public void TestGoogle()
 {
     using (FileStream fs = new FileStream("GoogleSubscriptions.xml", FileMode.Open)) {
         SubscriptionList subs = new SubscriptionList();
         subs.Subscriptions.Extend(new GoogleSubscriptions(fs).GetSubscriptions());
         Assert.AreEqual(3, subs.Subscriptions.Count);
         Assert.AreNotEqual(null, subs.Subscriptions[0] as WebSubscription);
         Assert.AreNotEqual(null, subs.Subscriptions[1] as WebSubscription);
         Assert.AreNotEqual(null, subs.Subscriptions[2] as WebSubscription);
         Assert.AreEqual("Embedded in Academia", (subs.Subscriptions[0] as WebSubscription).Title);
         Assert.AreEqual("http://blog.regehr.org/feed", (subs.Subscriptions[0] as WebSubscription).URI);
         Assert.AreEqual("http://blog.regehr.org", (subs.Subscriptions[0] as WebSubscription).PublicURI);
         Assert.AreEqual("john hawks weblog", (subs.Subscriptions[1] as WebSubscription).Title);
         Assert.AreEqual("http://johnhawks.net/rss.xml", (subs.Subscriptions[1] as WebSubscription).URI);
         Assert.AreEqual("http://johnhawks.net", (subs.Subscriptions[1] as WebSubscription).PublicURI);
         Assert.AreEqual("LWN.net", (subs.Subscriptions[2] as WebSubscription).Title);
         Assert.AreEqual("http://lwn.net/headlines/rss", (subs.Subscriptions[2] as WebSubscription).URI);
         Assert.AreEqual("http://lwn.net", (subs.Subscriptions[2] as WebSubscription).PublicURI);
     }
 }
        /// <summary>
        /// Adds or Edits subscription and closes subscription popup
        /// </summary>
        internal bool SaveSubscription()
        {
            if (!NewUrlText.StartsWith("iros://"))
            {
                StatusMessage = ResourceHelper.Get(StringKey.UrlMustBeInIrosFormat);
                return(false);
            }

            if (!SubscriptionList.Any(s => s.Url == NewUrlText))
            {
                IsResolvingName          = true;
                SubscriptionNameHintText = ResourceHelper.Get(StringKey.ResolvingCatalogName);
                ResolveCatalogNameFromUrl(NewUrlText, resolvedName =>
                {
                    NewNameText = resolvedName;
                    App.Current.Dispatcher.Invoke(() =>
                    {
                        SubscriptionList.Add(new SubscriptionSettingViewModel(NewUrlText, NewNameText));
                        CloseSubscriptionPopup();
                        IsResolvingName = false;
                        ListDataChanged?.Invoke();
                    });
                });
            }
            else if (IsEditingSubscription)
            {
                SubscriptionSettingViewModel toEdit = SubscriptionList.FirstOrDefault(s => s.Url == NewUrlText);
                toEdit.Name = NewNameText;
                CloseSubscriptionPopup();
                ListDataChanged?.Invoke();
            }
            else
            {
                // if user is trying to add a url that already exists in list then just close popup
                CloseSubscriptionPopup();
                return(true);
            }

            SubscriptionsChanged = true;
            return(true);
        }
Example #31
0
 private void SetSubstriptionList(string output)
 {
     if (output != null)
     {
         try
         {
             m_sl = JsonConvert.DeserializeObject<SubscriptionList>(output);
             FixFavicons();
             DownloadFavicons();
             if (m_UnreadProcessReady.Signal()) DownloadToReadCompleted(this, EventArgs.Empty);
         }
         catch (Exception e)
         {
             Console.WriteLine("SUBSCRIPTION: " + e.Message);
             Console.WriteLine("SUBSCRIPTION: " + output);
         }
     }
     else
     {
         m_Error = "SetSubscriptionList returned null";
     }
 }
Example #32
0
        private void SubscriptionsCallback()
        {
            var web = (HttpWebRequest)WebRequest.Create(string.Format("https://api.vkontakte.ru/method/subscriptions.get?uid={0}&access_token={1}", _uid, Client.Instance.Access_token.token));
            web.Method = "POST";
            web.ContentType = "application/x-www-form-urlencoded";
            web.BeginGetResponse(delegate(IAsyncResult e)
                                     {
                                         var request = (HttpWebRequest)e.AsyncState;
                                         var response = (HttpWebResponse)request.EndGetResponse(e);

                                         var responseReader = new StreamReader(response.GetResponseStream());
                                         try
                                         {
                                             var responseString = responseReader.ReadToEnd();
                                             var o = JObject.Parse(responseString);
                                             try
                                             {
                                                 _sl = new SubscriptionList();
                                                 if ((int)o["response"]["count"] > 0)
                                                 {
                                                     var responseArray = (JArray)o["response"]["users"];
                                                     foreach (var profile in responseArray.Select(user => new MyProfile {Uid = (int) user}))
                                                     {
                                                         _sl.Add(profile);
                                                     }
                                                     Dispatcher.BeginInvoke(() =>
                                                     {
                                                         ListProfileSubscriptionsCallback();
                                                         progressBar1.IsIndeterminate = false;
                                                     });
                                                 }
                                                 else
                                                 {
                                                     Dispatcher.BeginInvoke(() =>
                                                     {
                                                         NoSubscriptions.Text = "подписок нет";
                                                         progressBar1.IsIndeterminate = false;
                                                     });
                                                 }
                                             }
                                             catch
                                             {
                                                 if ((int)o["error"]["error_code"] == 260)
                                                 {
                                                     Dispatcher.BeginInvoke(() =>
                                                     {
                                                         NoSubscriptions.Text = "пользователь закрыл доступ к списку подписок";
                                                         progressBar1.IsIndeterminate = false;
                                                     });
                                                 }
                                             }

                                         }
                                         catch (Exception ex)
                                         {
                                             Dispatcher.BeginInvoke(() => { MessageBox.Show(ex.Message); progressBar1.IsIndeterminate = false; });
                                         }
                                     }, web);
            if (progressBar1.IsIndeterminate == false)
            {
                progressBar1.IsIndeterminate = true;
            }
        }