public override string ToString()
    {
        var  sb      = new StringBuilder("SuggestDictionaryRevisions(");
        bool __first = true;

        if (ItemRevision != null && __isset.itemRevision)
        {
            if (!__first)
            {
                sb.Append(", ");
            }
            __first = false;
            sb.Append("ItemRevision: ");
            sb.Append(ItemRevision == null ? "<null>" : ItemRevision.ToString());
        }
        if (TagRevisions != null && __isset.tagRevisions)
        {
            if (!__first)
            {
                sb.Append(", ");
            }
            __first = false;
            sb.Append("TagRevisions: ");
            sb.Append(TagRevisions);
        }
        sb.Append(")");
        return(sb.ToString());
    }
Esempio n. 2
0
    public override int GetHashCode()
    {
        int hashcode = 157;

        unchecked {
            if (__isset.itemRevision)
            {
                hashcode = (hashcode * 397) + ItemRevision.GetHashCode();
            }
            if (__isset.tagRevisions)
            {
                hashcode = (hashcode * 397) + TCollections.GetHashCode(TagRevisions);
            }
        }
        return(hashcode);
    }
    public async Task WriteAsync(TProtocol oprot, CancellationToken cancellationToken)
    {
        oprot.IncrementRecursionDepth();
        try
        {
            var struc = new TStruct("SuggestDictionaryRevisions");
            await oprot.WriteStructBeginAsync(struc, cancellationToken);

            var field = new TField();
            if (ItemRevision != null && __isset.itemRevision)
            {
                field.Name = "itemRevision";
                field.Type = TType.Struct;
                field.ID   = 1;
                await oprot.WriteFieldBeginAsync(field, cancellationToken);

                await ItemRevision.WriteAsync(oprot, cancellationToken);

                await oprot.WriteFieldEndAsync(cancellationToken);
            }
            if (TagRevisions != null && __isset.tagRevisions)
            {
                field.Name = "tagRevisions";
                field.Type = TType.List;
                field.ID   = 2;
                await oprot.WriteFieldBeginAsync(field, cancellationToken);

                {
                    await oprot.WriteListBeginAsync(new TList(TType.Struct, TagRevisions.Count), cancellationToken);

                    foreach (SuggestTagDictionaryRevision _iter232 in TagRevisions)
                    {
                        await _iter232.WriteAsync(oprot, cancellationToken);
                    }
                    await oprot.WriteListEndAsync(cancellationToken);
                }
                await oprot.WriteFieldEndAsync(cancellationToken);
            }
            await oprot.WriteFieldStopAsync(cancellationToken);

            await oprot.WriteStructEndAsync(cancellationToken);
        }
        finally
        {
            oprot.DecrementRecursionDepth();
        }
    }
Esempio n. 4
0
        public ItemRevision ToEntity()
        {
            var itemRevision = new ItemRevision
            {
                ItemId           = ItemId,
                RevisionNo       = RevisionNo,
                ModifiedDateTime = ModifiedDateTime,
                Comment          = Comment,
                Title            = Title,
                Body             = Body,
                IsFirst          = IsFirst,
                IsCurrent        = IsCurrent,
            };

            if (string.IsNullOrWhiteSpace(Tags))
            {
                return(itemRevision);
            }

            var xmlTags = new XmlDocument();

            xmlTags.LoadXml(Tags);
            var jsonTags    = Regex.Replace(JsonConvert.SerializeXmlNode(xmlTags), "(?<=\")(@)(?!.*\":\\s )", "", RegexOptions.IgnoreCase);
            var jObjectTags = JObject.Parse(jsonTags)["Tags"]["Tag"];

            if (jObjectTags.Type == JTokenType.Array)
            {
                var tags = JsonConvert.DeserializeObject <IEnumerable <ItemTag> >(jObjectTags.ToString());
                foreach (var tag in tags)
                {
                    itemRevision.ItemTags.Add(tag);
                }
            }
            else
            {
                var tag = JsonConvert.DeserializeObject <ItemTag>(jObjectTags.ToString());
                itemRevision.ItemTags.Add(tag);
            }

            return(itemRevision);
        }
Esempio n. 5
0
 public void Write(TProtocol oprot)
 {
     oprot.IncrementRecursionDepth();
     try
     {
         TStruct struc = new TStruct("SuggestDictionaryRevisions");
         oprot.WriteStructBegin(struc);
         TField field = new TField();
         if (ItemRevision != null && __isset.itemRevision)
         {
             field.Name = "itemRevision";
             field.Type = TType.Struct;
             field.ID   = 1;
             oprot.WriteFieldBegin(field);
             ItemRevision.Write(oprot);
             oprot.WriteFieldEnd();
         }
         if (TagRevisions != null && __isset.tagRevisions)
         {
             field.Name = "tagRevisions";
             field.Type = TType.List;
             field.ID   = 2;
             oprot.WriteFieldBegin(field);
             {
                 oprot.WriteListBegin(new TList(TType.Struct, TagRevisions.Count));
                 foreach (SuggestTagDictionaryRevision _iter320 in TagRevisions)
                 {
                     _iter320.Write(oprot);
                 }
                 oprot.WriteListEnd();
             }
             oprot.WriteFieldEnd();
         }
         oprot.WriteFieldStop();
         oprot.WriteStructEnd();
     }
     finally
     {
         oprot.DecrementRecursionDepth();
     }
 }
Esempio n. 6
0
        public ItemRevision ToEntity()
        {
            var itemRevision = new ItemRevision
            {
                ItemId = ItemId,
                RevisionNo = RevisionNo,
                ModifiedDateTime = ModifiedDateTime,
                Comment = Comment,
                Title = Title,
                Body = Body,
                IsFirst = IsFirst,
                IsCurrent = IsCurrent,
            };

            if (!string.IsNullOrWhiteSpace(Author))
            {
                var xmlAuthor = new XmlDocument();
                xmlAuthor.LoadXml(Author);
                var jsonAuthor = Regex.Replace(JsonConvert.SerializeXmlNode(xmlAuthor), "(?<=\")(@)(?!.*\":\\s )",
                    "",
                    RegexOptions.IgnoreCase);
                var jObjectAuthor = JObject.Parse(jsonAuthor)["Author"];
                var author = JsonConvert.DeserializeObject<User>(jObjectAuthor.ToString());
                itemRevision.Author = author;
            }
            else
            {
                itemRevision.Author = User.Unknown;
            }

            if (!string.IsNullOrWhiteSpace(Editor))
            {
                var xmlEditor = new XmlDocument();
                xmlEditor.LoadXml(Editor);
                var jsonEditor = Regex.Replace(JsonConvert.SerializeXmlNode(xmlEditor), "(?<=\")(@)(?!.*\":\\s )",
                    "",
                    RegexOptions.IgnoreCase);
                var jObjectEditor = JObject.Parse(jsonEditor)["Editor"];
                var editor = JsonConvert.DeserializeObject<User>(jObjectEditor.ToString());
                itemRevision.Editor = editor;
            }
            else
            {
                itemRevision.Editor = User.Unknown;
            }

            if (!string.IsNullOrWhiteSpace(Tags))
            {
                var xmlTags = new XmlDocument();
                xmlTags.LoadXml(Tags);
                var jsonTags = Regex.Replace(JsonConvert.SerializeXmlNode(xmlTags), "(?<=\")(@)(?!.*\":\\s )", "",
                    RegexOptions.IgnoreCase);
                var jObjectTags = JObject.Parse(jsonTags)["Tags"]["Tag"];
                if (jObjectTags.Type == JTokenType.Array)
                {
                    var tags = JsonConvert.DeserializeObject<IEnumerable<ItemTag>>(jObjectTags.ToString());
                    foreach (var tag in tags)
                    {
                        itemRevision.ItemTags.Add(tag);
                    }
                }
                else
                {
                    var tag = JsonConvert.DeserializeObject<ItemTag>(jObjectTags.ToString());
                    itemRevision.ItemTags.Add(tag);
                }
            }

            return itemRevision;
        }