private void AttributeToXml(Attribute attribute)
        {
            if (!attribute.HasChanged)
            {
                return;
            }

            if (attribute.Definition.AttributeType == AttributeType.Relation)
            {
                _writer.WriteStartElement(RelationElement);
                _writer.WriteAttributeString(NameAttribute, attribute.Definition.Name);
                RelationAttributeToXml(attribute);
                _writer.WriteEndElement();
            }
            else if (attribute.Definition.IsMultiValue)
            {
                _writer.WriteStartElement(AttributeElement);
                _writer.WriteAttributeString(NameAttribute, attribute.Definition.Name);
                MultiValueAttributeToXml(attribute);
                _writer.WriteEndElement();
            }
            else
            {
                var content = ValueToXmlString(attribute.Definition, attribute.Value);
                _writer.WriteStartElement(AttributeElement);
                _writer.WriteAttributeString(NameAttribute, attribute.Definition.Name);
                if (attribute.HasChanged)
                {
                    _writer.WriteAttributeString(Act, ActSet);
                }
                _writer.WriteString(content);
                _writer.WriteEndElement();
            }
        }
        private void MultiValueAttributeToXml(Attribute attribute)
        {
            if (!attribute.HasChanged || !attribute.Definition.IsMultiValue)
            {
                return;
            }

            WriteMultiValueAttributeValues(attribute.AddedValues, ActAdd);
            WriteMultiValueAttributeValues(attribute.RemovedValues, ActRemove);
        }
 private void RelationAttributeToXml(Attribute attribute)
 {
     if (attribute.HasChanged && attribute.Definition.IsMultiValue)
     {
         WriteAttributeValues(attribute.AddedValues, ActAdd);
         WriteAttributeValues(attribute.RemovedValues, ActRemove);
     }
     else
     {
         if (attribute.HasChanged)
         {
             _writer.WriteAttributeString(Act, ActSet);
         }
         WriteAttributeValues(attribute.Values, null);
     }
 }
Exemple #4
0
        private void RelationAttributeToXml(Attribute attribute)
        {
            if (attribute.HasChanged && attribute.Definition.IsMultiValue)
            {
                WriteAttributeValues(attribute.AddedValues, "add");
                WriteAttributeValues(attribute.RemovedValues, "remove");
            }
            else
            {
                if (attribute.HasChanged)
                {
                    writer.WriteAttributeString("act", "set");
                }

                WriteAttributeValues(attribute.Values, null);
            }
        }
Exemple #5
0
        private void AttributeToXml(Attribute attribute)
        {
            if (changesOnly && !attribute.HasChanged)
            {
                return;
            }

            if (attribute.Definition.AttributeType == AttributeType.Relation)
            {
                writer.WriteStartElement("Relation");
                writer.WriteAttributeString("name", attribute.Definition.Name);
                RelationAttributeToXml(attribute);
                writer.WriteEndElement();
            }
            else if (attribute.Definition.IsMultiValue)
            {
                writer.WriteStartElement("Attribute");
                writer.WriteAttributeString("name", attribute.Definition.Name);
                ValuesToXml(attribute.Definition, attribute.Values, "Value");
                writer.WriteEndElement();
            }
            else
            {
                var content = ValueToXmlString(attribute.Definition, attribute.Value);
                writer.WriteStartElement("Attribute");
                writer.WriteAttributeString("name", attribute.Definition.Name);

                if (attribute.HasChanged)
                {
                    writer.WriteAttributeString("act", "set");
                }

                writer.WriteString(content);
                writer.WriteEndElement();
            }
        }
Exemple #6
0
 public void WriteAttribute(Attribute attrib)
 {
     AttributeToXml(attrib);
 }
Exemple #7
0
 private void WriteAttributeReference(Attribute attrib)
 {
     AttributeToXml(attrib);
 }
 public void WriteAttribute(Attribute attrib)
 {
     AttributeToXml(attrib);
 }
        private void RelationAttributeToXml(Attribute attribute)
        {
            if (attribute.HasChanged && attribute.Definition.IsMultiValue)
            {
                WriteAttributeValues(attribute.AddedValues, "add");
                WriteAttributeValues(attribute.RemovedValues, "remove");
            }
            else
            {
                if (attribute.HasChanged)
                {
                    writer.WriteAttributeString("act", "set");
                }

                WriteAttributeValues(attribute.Values, null);
            }
        }
        private void AttributeToXml(Attribute attribute)
        {
            if (changesOnly && !attribute.HasChanged)
            {
                return;
            }

            if (attribute.Definition.AttributeType == AttributeType.Relation)
            {
                writer.WriteStartElement("Relation");
                writer.WriteAttributeString("name", attribute.Definition.Name);
                RelationAttributeToXml(attribute);
                writer.WriteEndElement();
            }
            else if (attribute.Definition.IsMultiValue)
            {
                writer.WriteStartElement("Attribute");
                writer.WriteAttributeString("name", attribute.Definition.Name);
                ValuesToXml(attribute.Definition, attribute.Values, "Value");
                writer.WriteEndElement();
            }
            else
            {
                var content = ValueToXmlString(attribute.Definition, attribute.Value);
                writer.WriteStartElement("Attribute");
                writer.WriteAttributeString("name", attribute.Definition.Name);

                if (attribute.HasChanged)
                {
                    writer.WriteAttributeString("act", "set");
                }

                writer.WriteString(content);
                writer.WriteEndElement();
            }
        }
 private void WriteAttributeReference(Attribute attrib)
 {
     AttributeToXml(attrib);
 }