Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ImportAccessorMapping()

void System.Xml.Serialization.SoapReflectionImporter.ImportAccessorMapping ( MemberMapping accessor,
FieldModel model,
SoapAttributes a,
string ns,
XmlSchemaForm form,
RecursionLimiter limiter )
inlineprivate

Definition at line 709 of file SoapReflectionImporter.cs.

710 {
711 Type fieldType = model.FieldType;
712 string name = model.Name;
714 if (accessor.TypeDesc.IsVoid)
715 {
717 }
718 SoapAttributeFlags soapFlags = a.GetSoapFlags();
719 if ((soapFlags & SoapAttributeFlags.Attribute) == SoapAttributeFlags.Attribute)
720 {
721 if (!accessor.TypeDesc.IsPrimitive && !accessor.TypeDesc.IsEnum)
722 {
724 }
725 if ((soapFlags & SoapAttributeFlags.Attribute) != soapFlags)
726 {
728 }
729 AttributeAccessor attributeAccessor = new AttributeAccessor();
730 attributeAccessor.Name = Accessor.EscapeQName((a.SoapAttribute == null || a.SoapAttribute.AttributeName.Length == 0) ? name : a.SoapAttribute.AttributeName);
731 attributeAccessor.Namespace = ((a.SoapAttribute == null || a.SoapAttribute.Namespace == null) ? ns : a.SoapAttribute.Namespace);
733 attributeAccessor.Mapping = ImportTypeMapping(_modelScope.GetTypeModel(fieldType), (a.SoapAttribute == null) ? string.Empty : a.SoapAttribute.DataType, limiter);
736 accessor.Elements = Array.Empty<ElementAccessor>();
737 }
738 else
739 {
740 if ((soapFlags & SoapAttributeFlags.Element) != soapFlags)
741 {
743 }
744 ElementAccessor elementAccessor = new ElementAccessor();
746 elementAccessor.Name = XmlConvert.EncodeLocalName((a.SoapElement == null || a.SoapElement.ElementName.Length == 0) ? name : a.SoapElement.ElementName);
749 elementAccessor.Mapping = ImportTypeMapping(_modelScope.GetTypeModel(fieldType), (a.SoapElement == null) ? string.Empty : a.SoapElement.DataType, limiter);
750 if (a.SoapElement != null)
751 {
752 elementAccessor.IsNullable = a.SoapElement.IsNullable;
753 }
754 accessor.Elements = new ElementAccessor[1] { elementAccessor };
755 }
756 }
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
static string XmlIllegalSoapAttribute
Definition SR.cs:1466
static string XmlInvalidVoid
Definition SR.cs:1598
static string XmlInvalidElementAttribute
Definition SR.cs:1596
Definition SR.cs:7
TypeModel GetTypeModel(Type type)
Definition ModelScope.cs:22
object GetDefaultValue(TypeDesc fieldTypeDesc, SoapAttributes a)
TypeDesc GetTypeDesc(string name, string ns)
Definition TypeScope.cs:224

References System.Xml.Serialization.SoapReflectionImporter._modelScope, System.Xml.Serialization.SoapReflectionImporter._typeScope, System.Xml.Dictionary, System.Xml.XmlConvert.EncodeLocalName(), System.Xml.Serialization.Accessor.EscapeQName(), System.SR.Format(), System.Xml.Serialization.SoapReflectionImporter.GetDefaultValue(), System.Xml.Serialization.TypeScope.GetTypeDesc(), System.Xml.Serialization.ModelScope.GetTypeModel(), System.Xml.Serialization.SoapReflectionImporter.ImportTypeMapping(), System.SR.XmlIllegalSoapAttribute, System.SR.XmlInvalidElementAttribute, and System.SR.XmlInvalidVoid.

Referenced by System.Xml.Serialization.SoapReflectionImporter.ImportFieldMapping(), and System.Xml.Serialization.SoapReflectionImporter.ImportMemberMapping().