Ejemplo n.º 1
0
    /// <summary>
    /// Displays the deserialized output to a grid.
    /// </summary>
    /// <param name="messageHeaders">Deserialized message header list</param>
    private void DisplayGrid(MessageHeadersListData messageHeaders)
    {
        try
        {
            DataTable headerTable = this.GetHeaderDataTable();

            if (null != messageHeaders && null != messageHeaders.Headers)
            {
                pnlHeader.Visible   = true;
                lblHeaderCount.Text = messageHeaders.HeaderCount.ToString();
                lblIndexCursor.Text = messageHeaders.IndexCursor;

                DataRow row;
                foreach (HeadersData header in messageHeaders.Headers)
                {
                    row = headerTable.NewRow();

                    row["MessageId"] = header.MessageId;
                    row["From"]      = header.From;
                    row["To"]        = header.To != null?string.Join(",", header.To.ToArray()) : string.Empty;

                    row["Received"]  = header.Received;
                    row["Text"]      = header.Text;
                    row["Favourite"] = header.Favorite;
                    row["Read"]      = header.Read;
                    row["Direction"] = header.Direction;
                    row["Type"]      = header.Type;
                    headerTable.Rows.Add(row);
                    if (null != header.Type && header.Type.ToLower() == "mms")
                    {
                        foreach (MMSContentData mmsCont in header.MmsContent)
                        {
                            DataRow mmsDetailsRow = headerTable.NewRow();
                            mmsDetailsRow["PartNumber"]  = mmsCont.PartNumber;
                            mmsDetailsRow["ContentType"] = mmsCont.ContentType;
                            mmsDetailsRow["ContentName"] = mmsCont.ContentName;
                            headerTable.Rows.Add(mmsDetailsRow);
                        }
                    }
                }

                gvMessageHeaders.DataSource = headerTable;
                gvMessageHeaders.DataBind();
            }
        }
        catch (Exception ex)
        {
            this.DrawPanelForFailure(statusPanel, ex.Message);
        }
    }
Ejemplo n.º 2
0
    /// <summary>
    /// Gets message headers based on header count and index cursor.
    /// </summary>
    private void GetMessageHeaders()
    {
        try
        {
            if (null != Session["CSMIM_ACCESS_TOKEN"])
            {
                this.requestFactory.AuthorizeCredential = (OAuthToken)Session["CSMIM_ACCESS_TOKEN"];
            }

            if (this.requestFactory.AuthorizeCredential == null)
            {
                Response.Redirect(this.requestFactory.GetOAuthRedirect().ToString());
            }

            GetMessageHeadersResponse headerResponse = this.requestFactory.GetMessageHeaders(Convert.ToInt32(txtHeaderCount.Text), txtIndexCursor.Text);
            if (null != headerResponse)
            {
                MessageHeadersListData listData = headerResponse.MessageHeadersList;
                if (null != listData)
                {
                    this.DisplayGrid(listData);
                }
            }
        }
        catch (TokenExpiredException te)
        {
            this.DrawPanelForFailure(statusPanel, te.Message);
        }
        catch (UnauthorizedRequest ur)
        {
            this.DrawPanelForFailure(statusPanel, ur.Message);
        }
        catch (InvalidResponseException ie)
        {
            this.DrawPanelForFailure(statusPanel, ie.Body);
        }
        catch (ArgumentNullException are)
        {
            this.DrawPanelForFailure(statusPanel, are.Message);
        }
        catch (ArgumentException ae)
        {
            this.DrawPanelForFailure(statusPanel, ae.Message);
        }
        catch (Exception ex)
        {
            this.DrawPanelForFailure(statusPanel, ex.Message);
        }
    }
    /// <summary>
    /// Displays the deserialized output to a grid.
    /// </summary>
    /// <param name="messageHeaders">Deserialized message header list</param>
    private void DisplayGrid(MessageHeadersListData messageHeaders)
    {
        try
        {
            DataTable headerTable = this.GetHeaderDataTable();

            if (null != messageHeaders && null != messageHeaders.Headers)
            {
                pnlHeader.Visible = true;
                lblHeaderCount.Text = messageHeaders.HeaderCount.ToString();
                lblIndexCursor.Text = messageHeaders.IndexCursor;

                DataRow row;
                foreach (HeadersData header in messageHeaders.Headers)
                {
                    row = headerTable.NewRow();

                    row["MessageId"] = header.MessageId;
                    row["From"] = header.From;
                    row["To"] = header.To != null ? string.Join(",", header.To.ToArray()) : string.Empty;
                    row["Received"] = header.Received;
                    row["Text"] = header.Text;
                    row["Favourite"] = header.Favorite;
                    row["Read"] = header.Read;
                    row["Direction"] = header.Direction;
                    row["Type"] = header.Type;
                    headerTable.Rows.Add(row);
                    if (null != header.Type && header.Type.ToLower() == "mms")
                    {
                        foreach (MMSContentData mmsCont in header.MmsContent)
                        {
                            DataRow mmsDetailsRow = headerTable.NewRow();
                            mmsDetailsRow["PartNumber"] = mmsCont.PartNumber;
                            mmsDetailsRow["ContentType"] = mmsCont.ContentType;
                            mmsDetailsRow["ContentName"] = mmsCont.ContentName;
                            headerTable.Rows.Add(mmsDetailsRow);
                        }
                    }
                }

                gvMessageHeaders.DataSource = headerTable;
                gvMessageHeaders.DataBind();
            }
        }
        catch (Exception ex)
        {
            this.DrawPanelForFailure(statusPanel, ex.Message);
        }
    }