コード例 #1
0
    private void InitializeFields()
    {
        DataClassesDataContext dc          = new DataClassesDataContext();
        List <Suscription>     allRequests = SubscriptionWrapper.getByUserId(((UserAccount)Session["loggedUser"]).UserID);

        int count = allRequests.Count;

        controls = new List <Controls_RequestControl>(count);
        table.Controls.Clear();

        for (int index = 0; index < count; index++)
        {
            Suscription suscription = allRequests[index];
            TableRow    rowNew      = new TableRow();
            table.Controls.Add(rowNew);

            var       reqID   = suscription.RequestID;
            Request   request = RequestWrapper.getById(reqID);
            TableCell cellNew = new TableCell();

            //Label lblNew = new Label();
            //lblNew.Text = request.Title + " " + request.StartDate + " " + request.EndDate + " "
            //                        + request.MinUsers + " " + request.MaxUsers + " " + request.City + " "
            //                        + request.State + " " + request.Sector + " " + request.Street + " "
            //                        + request.Status + "<br />";

            UserControl uc = (UserControl)Page.LoadControl("../Controls/RequestControl.ascx");
            ((Controls_RequestControl)uc).Request = request;
            Button subscribeButton = (Button)((Controls_RequestControl)uc).FindControl("subscribeButton");
            subscribeButton.Visible = false;
            controls.Add((Controls_RequestControl)uc);
            cellNew.Controls.Add((Controls_RequestControl)uc);
            rowNew.Controls.Add(cellNew);
        }
    }
コード例 #2
0
        public Task ReadAsync(
            ISubscription subscription,
            long fromIndexInclusive,
            long toIndexInclusive,
            CancellationToken cancellationToken
            )
        {
            // @@REVIEW: micro optimization for reading only last index? (fromIndexInclusive == toIndexInclusive == Int32.MaxValue)
            var readConsumer = subscription;

            if (toIndexInclusive == long.MaxValue)
            {
                _version     = 0;
                readConsumer = new SubscriptionWrapper(subscription)
                {
                    BeforeOnNext = (data) => { _version = data.Index; }
                };
            }

            return(Persistence.ReadForwardAsync(
                       Id,
                       fromIndexInclusive,
                       readConsumer,
                       toIndexInclusive,
                       limit: Int32.MaxValue,
                       cancellationToken: cancellationToken
                       ));
        }
コード例 #3
0
    private void InitializeFields()
    {
        DataClassesDataContext dc          = new DataClassesDataContext();
        List <Suscription>     allRequests = SubscriptionWrapper.getAllSuscriptions(3);

        table.Controls.Clear();
        foreach (Suscription suscription in allRequests)
        {
            TableRow rowNew = new TableRow();
            table.Controls.Add(rowNew);

            var       reqID   = suscription.RequestID;
            Request   request = RequestWrapper.getById(reqID);
            TableCell cellNew = new TableCell();
            Label     lblNew  = new Label();

            lblNew.Text = request.Title + " " + request.StartDate + " " + request.EndDate + " "
                          + request.MinUsers + " " + request.MaxUsers + " " + request.City + " "
                          + request.State + " " + request.Sector + " " + request.Street + " "
                          + request.Status + "<br />";

            cellNew.Controls.Add(lblNew);
            rowNew.Controls.Add(cellNew);
        }
    }
コード例 #4
0
    protected void subscribeButton_Click(object sender, EventArgs e)
    {
        SubscriptionWrapper sub = new SubscriptionWrapper();

        sub.RequestID = request.ID;
        sub.UserID    = ((UserAccount)Session["loggedUser"]).UserID;

        sub.Save();
    }
コード例 #5
0
 public TestSubscriptionControl(MainForm mainForm,
                                WriteToLogDelegate writeToLog,
                                Func <Task> stopLog,
                                Action startLog,
                                ServiceBusHelper serviceBusHelper,
                                SubscriptionWrapper subscriptionWrapper)
     : base(mainForm, writeToLog, stopLog, startLog, serviceBusHelper)
 {
     this.subscriptionWrapper = subscriptionWrapper;
     InitializeComponent();
     InitializeControls();
 }
コード例 #6
0
        public ActionResult <PushSubscription> Post([FromBody] PushSubscription subscription)
        {
            var rid = (HttpContext.User.Identity as ClaimsIdentity).FindFirst("userId").Value;
            var wrp = new SubscriptionWrapper {
                Subscription = subscription
            };

            if (rid != null)
            {
                wrp.Owner = rid;
            }
            return(_pushService.Insert(wrp));
        }
コード例 #7
0
    protected void Page_Load(object sender, EventArgs e)
    {
        Product prod = ProductWrapper.getById(request.ProductID);

        this.titleLabel.Text       = request.Title;
        this.descriptionLabel.Text = prod.Description;
        this.startDate.Text        = request.EndDate.ToString();
        this.endDate.Text          = request.EndDate.ToString();

        List <Suscription> subs = SubscriptionWrapper.getByRequestId(request.ID);

        this.subscribers.Text = subs.Count.ToString();
    }
コード例 #8
0
        public async Task ReadAllByOperationIdAsync(
            string operationId,
            ISubscription subscription,
            CancellationToken cancellationToken)
        {
            await _networkSimulator.Wait().ConfigureAwait(false);

            var filter = new SubscriptionWrapper(subscription)
            {
                ChunkFilter = chunk => chunk.OperationId == operationId
            };

            await ReadAllAsync(0, filter, int.MaxValue, cancellationToken).ConfigureAwait(false);
        }
コード例 #9
0
 public SelectEntityForm(string dialogTitle,
                         string groupTitle,
                         string labelText,
                         SubscriptionWrapper subscriptionWrapperSource,
                         bool subscriptions    = false,
                         bool eventHubs        = false,
                         bool notificationHubs = false,
                         bool relays           = false) : this(dialogTitle,
                                                               groupTitle,
                                                               labelText,
                                                               subscriptions,
                                                               eventHubs,
                                                               notificationHubs,
                                                               relays)
 {
     this.subscriptionWrapperSource = subscriptionWrapperSource;
 }
コード例 #10
0
        public ContainerForm(ServiceBusHelper serviceBusHelper, MainForm mainForm, FormTypeEnum formType, SubscriptionWrapper subscriptionWrapper)
        {
            try
            {
                InitializeComponent();
                Task.Factory.StartNew(AsyncWriteToLog).ContinueWith(t =>
                {
                    if (t.IsFaulted && t.Exception != null)
                    {
                        WriteToLog(t.Exception.Message);
                    }
                });
                this.mainForm        = mainForm;
                mainSplitterDistance = mainSplitContainer.SplitterDistance;
                SuspendLayout();
                panelMain.SuspendDrawing();
                panelMain.Controls.Clear();
                panelMain.BackColor = SystemColors.GradientInactiveCaption;

                if (formType == FormTypeEnum.Listener)
                {
                    var listenerControl = new ListenerControl(WriteToLog, StopLog, StartLog, new ServiceBusHelper(WriteToLog, serviceBusHelper), subscriptionWrapper.SubscriptionDescription)
                    {
                        Location = new Point(1, panelMain.HeaderHeight + 1),
                        Size     = new Size(panelMain.Size.Width - 3, subscriptionWrapper.SubscriptionDescription.RequiresSession ? 544 : 520),
                        Anchor   = AnchorStyles.Bottom | AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right
                    };
                    listenerControl.Focus();

                    Text = string.Format(SubscriptionListenerFormat, subscriptionWrapper.SubscriptionDescription.Name);
                    mainSplitContainer.SplitterDistance = subscriptionWrapper.SubscriptionDescription.RequiresSession ? 570 : listenerControl.Size.Height + 26;
                    panelMain.HeaderText = string.Format(HeaderTextSubscriptionListenerFormat, subscriptionWrapper.SubscriptionDescription.Name);
                    panelMain.Controls.Add(listenerControl);
                }
                else
                {
                    testSubscriptionControl = new TestSubscriptionControl(mainForm, WriteToLog, StopLog, StartLog, new ServiceBusHelper(WriteToLog, serviceBusHelper), subscriptionWrapper)
                    {
                        Location = new Point(1, panelMain.HeaderHeight + 1),
                        Size     = new Size(panelMain.Size.Width - 3, panelMain.Size.Height - 26),
                        Anchor   = AnchorStyles.Bottom | AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right
                    };

                    testSubscriptionControl.btnCancel.Click -= testSubscriptionControl.btnCancel_Click;
                    testSubscriptionControl.btnCancel.Click += BtnCancelOnClick;
                    testSubscriptionControl.Focus();

                    Text = string.Format(TestSubscriptionFormat, subscriptionWrapper.SubscriptionDescription.Name);

                    panelMain.HeaderText = string.Format(HeaderTextTestSubscriptionFormat, subscriptionWrapper.SubscriptionDescription.Name);
                    panelMain.Controls.Add(testSubscriptionControl);
                }
                SetStyle(ControlStyles.ResizeRedraw, true);
            }
            finally
            {
                panelMain.ResumeDrawing();
                ResumeLayout();
            }
        }
コード例 #11
0
        public async Task <ActionResult> UpdateSubscriber(bool check, SubscriptionsViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var user = await _userManager.GetUserAsync(User);

            if (user == null)
            {
                throw new ApplicationException($"Unable to load user with ID '{_userManager.GetUserId(User)}'.");
            }

            _appDbContext.Entry(user).Collection(x => x.Subs).Load();
            _appDbContext.Entry(user).Collection(x => x.Achivements).Load();
            List <GlobalAchievement> globalAchievementList = _appDbContext.GlobalAchievements.ToList();

            for (int i = 0; i < model.SubscriptionWrapperList.Count; i++)
            {
                SubscriptionWrapper aw = model.SubscriptionWrapperList[i];
                Subscription        targetSubscription = user.Subs.Where(x => x.SubscribingToUserID == aw.SubscribedUserID).SingleOrDefault();

                // Only update if there's a change
                if (targetSubscription == null && check == true)
                {
                    Subscription toSub = new Subscription
                    {
                        SubscribingUserID   = user.Id,
                        SubscribingToUserID = aw.SubscribedUserID
                    };

                    user.Subs.Add(toSub);
                }
                else if (targetSubscription != null && check == false)
                {
                    user.Subs.Remove(user.Subs.Where(x => x.SubscribingToUserID == aw.SubscribedUserID).SingleOrDefault());
                }
            }
            if (user.Subs.Count() >= 2)
            {
                user.AddUserAchievement(globalAchievementList, "Subscribed to 1 person!");
            }
            if (user.Subs.Count() >= 5)
            {
                user.AddUserAchievement(globalAchievementList, "Subscribed to 5 people!");
            }
            if (user.Subs.Count() >= 10)
            {
                user.AddUserAchievement(globalAchievementList, "Subscribed to 10 people!");
            }
            if (user.Subs.Count() >= 20)
            {
                user.AddUserAchievement(globalAchievementList, "Subscribed to 20 people!");
            }


            var setResult = await _userManager.UpdateAsync(user);

            if (!setResult.Succeeded)
            {
                throw new ApplicationException($"Unexpected error occurred setting subscriptions for user with ID '{user.Id}'.");
            }

            StatusMessage = "Your subscriptions have been updated";
            return(RedirectToAction(nameof(Subscriptions)));
        }
コード例 #12
0
 public MessageForm(SubscriptionWrapper subscriptionWrapper, IEnumerable <BrokeredMessage> brokeredMessages,
                    ServiceBusHelper serviceBusHelper, WriteToLogDelegate writeToLog) :
     this(brokeredMessages, serviceBusHelper, writeToLog)
 {
     this.subscriptionWrapper = subscriptionWrapper;
 }
コード例 #13
0
 public MessageForm(SubscriptionWrapper subscriptionWrapper, BrokeredMessage brokeredMessage,
                    ServiceBusHelper serviceBusHelper, WriteToLogDelegate writeToLog) :
     this(brokeredMessage, serviceBusHelper, writeToLog)
 {
     this.subscriptionWrapper = subscriptionWrapper;
 }
コード例 #14
0
 public override void SendMessage(int iOperation, XLANGMessage msg, Correlation[] initCorrelations, Correlation[] followCorrelations, out SubscriptionWrapper subscriptionWrapper, Context cxt, Segment seg, ActivityFlags flags)
 {
     throw new NotImplementedException();
 }
コード例 #15
0
 /// <summary>
 /// Push Subrciption
 /// </summary>
 /// <param name="subscription">Subscrition wrapper</param>
 /// <returns>subscription</returns>
 public PushSubscription Insert(SubscriptionWrapper subscription)
 {
     _collection.InsertOne(subscription);
     return(subscription.Subscription);
 }