コード例 #1
0
        AppendLatestStatusInformationFromValueDictionary
        (
            Dictionary <String, Object> oStatusValueDictionary,
            GraphMLXmlDocument oGraphMLXmlDocument,
            TwitterUser oTwitterUser,
            Boolean bIncludeLatestStatus,
            Boolean bExpandLatestStatusUrls
        )
        {
            Debug.Assert(oStatusValueDictionary != null);
            Debug.Assert(oGraphMLXmlDocument != null);
            Debug.Assert(oTwitterUser != null);
            AssertValid();

            TwitterStatus oTwitterStatus;

            if (!TwitterStatus.TryFromStatusValueDictionary(
                    oStatusValueDictionary, bExpandLatestStatusUrls,
                    out oTwitterStatus))
            {
                return;
            }

            XmlNode oVertexXmlNode = oTwitterUser.VertexXmlNode;

            if (bIncludeLatestStatus)
            {
                // Add the status to the vertex XML node.

                oGraphMLXmlDocument.AppendGraphMLAttributeValue(
                    oVertexXmlNode, TwitterGraphMLUtil.VertexLatestStatusID,
                    oTwitterStatus.Text);

                String sLatestStatusUrls = oTwitterStatus.Urls;

                if (!String.IsNullOrEmpty(sLatestStatusUrls))
                {
                    oGraphMLXmlDocument.AppendGraphMLAttributeValue(
                        oVertexXmlNode,
                        TwitterGraphMLUtil.VertexLatestStatusUrlsID,
                        sLatestStatusUrls);

                    oGraphMLXmlDocument.AppendGraphMLAttributeValue(
                        oVertexXmlNode,
                        TwitterGraphMLUtil.VertexLatestStatusDomainsID,
                        TwitterGraphMLUtil.UrlsToDomains(sLatestStatusUrls));
                }

                String sLatestStatusHashtags = oTwitterStatus.Hashtags;

                if (!String.IsNullOrEmpty(sLatestStatusHashtags))
                {
                    oGraphMLXmlDocument.AppendGraphMLAttributeValue(
                        oVertexXmlNode,
                        TwitterGraphMLUtil.VertexLatestStatusHashtagsID,
                        sLatestStatusHashtags);
                }

                if (!String.IsNullOrEmpty(oTwitterStatus.ParsedDateUtc))
                {
                    oGraphMLXmlDocument.AppendGraphMLAttributeValue(
                        oVertexXmlNode,
                        TwitterGraphMLUtil.VertexLatestStatusDateUtcID,
                        oTwitterStatus.ParsedDateUtc);
                }

                TwitterGraphMLUtil.
                AppendLatitudeAndLongitudeGraphMLAttributeValues(
                    oGraphMLXmlDocument, oVertexXmlNode,
                    oTwitterStatus.Latitude, oTwitterStatus.Longitude);

                TwitterGraphMLUtil.AppendInReplyToStatusIDGraphMLAttributeValue(
                    oGraphMLXmlDocument, oVertexXmlNode,
                    oTwitterStatus.InReplyToStatusID);
            }

            oTwitterUser.Statuses.Add(oTwitterStatus);
        }