コード例 #1
0
        public static void Serialize(KSoft.IO.XmlElementStream s, FA mode, BXmlSerializerInterface xsi,
                                     Collections.BTypeNames list, BListXmlParams @params, bool forceNoRootElementStreaming = false)
        {
            Contract.Requires(s != null);
            Contract.Requires(xsi != null);
            Contract.Requires(list != null);
            Contract.Requires(@params != null);

            if (forceNoRootElementStreaming)
            {
                @params.SetForceNoRootElementStreaming(true);
            }
            using (var xs =
#if NO_TLS_STREAMING
                       new BTypeNamesXmlSerializer(@params, list)
#else
                       BDatabaseXmlSerializerBase.sBTypeNamesXmlSerializer.Value.Reset(@params, list)
#endif
                   )
            {
                xs.StreamXml(s, mode, xsi);
            }
            if (forceNoRootElementStreaming)
            {
                @params.SetForceNoRootElementStreaming(false);
            }
        }
コード例 #2
0
        public BListArrayXmlSerializer(BListXmlParams @params, Collections.BListArray <T> list)
        {
            Contract.Requires <ArgumentNullException>(@params != null);
            Contract.Requires <ArgumentNullException>(list != null);

            mParams = @params;
            mList   = list;
        }
コード例 #3
0
        public BBitSetXmlSerializer(BListXmlParams @params, Collections.BBitSet bits)
        {
            Contract.Requires <ArgumentNullException>(@params != null);
            Contract.Requires <ArgumentNullException>(bits != null);
            Contract.Requires(@Params.UseElementName, "Collection only supports element name filtering");

            Params = @params;
            Bits   = bits;
        }
コード例 #4
0
        public BTypeNamesXmlSerializer Reset(BListXmlParams @params, Collections.BTypeNames list)
        {
            Contract.Requires <ArgumentNullException>(@params != null);
            Contract.Requires <ArgumentNullException>(list != null);

            mParams = @params;
            mList   = list;

            return(this);
        }
コード例 #5
0
        public BListAutoIdXmlSerializer <T> Reset(BListXmlParams @params, Collections.BListAutoId <T> list)
        {
            Contract.Requires <ArgumentNullException>(@params != null);
            Contract.Requires <ArgumentNullException>(list != null);

            mParams = @params;
            mList   = list;

            return(this);
        }
コード例 #6
0
        public static void Write(KSoft.IO.XmlElementStream s, BListXmlParams p,
                                 Collections.IProtoEnumWithUndefined undefined)
        {
            if (undefined.MemberUndefinedCount == 0)
            {
                return;
            }

            string element_name = "Undefined" + p.ElementName;

            foreach (string str in undefined.UndefinedMembers)
            {
                using (s.EnterCursorBookmark(element_name))
                    s.WriteAttribute(p.DataName, str);
            }
        }
コード例 #7
0
        public static void Serialize <T>(KSoft.IO.XmlElementStream s, FA mode, BXmlSerializerInterface xsi,
                                         Collections.BListArray <T> list, BListXmlParams @params)
            where T : IO.IPhxXmlStreamable, new()
        {
            Contract.Requires(s != null);
            Contract.Requires(xsi != null);
            Contract.Requires(list != null);
            Contract.Requires(@params != null);

            using (var xs =
#if NO_TLS_STREAMING
                       new BListArrayXmlSerializer <T>(@params, list)
#else
                       BDatabaseXmlSerializerBase._BListArray <T> .sXmlSerializer.Value.Reset(@params, list)
#endif
                   )
            {
                xs.StreamXml(s, mode, xsi);
            }
        }
コード例 #8
0
        public static void Serialize <T>(KSoft.IO.XmlElementStream s, FA mode, BXmlSerializerInterface xsi,
                                         Collections.BListAutoId <T> list, BListXmlParams @params, bool forceNoRootElementStreaming = false)
            where T : class, Collections.IListAutoIdObject, new()
        {
            Contract.Requires(s != null);
            Contract.Requires(xsi != null);
            Contract.Requires(list != null);
            Contract.Requires(@params != null);

            if (forceNoRootElementStreaming)
            {
                @params.SetForceNoRootElementStreaming(true);
            }
            using (var xs = CreateXmlSerializer(list, @params))
            {
                xs.StreamXml(s, mode, xsi);
            }
            if (forceNoRootElementStreaming)
            {
                @params.SetForceNoRootElementStreaming(false);
            }
        }
コード例 #9
0
 protected override void FinishTlsStreaming()
 {
     mParams = null;
     mList   = null;
 }
コード例 #10
0
        public static IBListAutoIdXmlSerializer CreateXmlSerializer <T>(Collections.BListAutoId <T> list, BListXmlParams @params)
            where T : class, Collections.IListAutoIdObject, new()
        {
            Contract.Requires(list != null);
            Contract.Requires(@params != null);

            var xs =
#if NO_TLS_STREAMING
                new BListAutoIdXmlSerializer <T>(@params, list);
#else
                BDatabaseXmlSerializerBase._BListAutoId <T> .sXmlSerializer.Value.Reset(@params, list);
#endif

            return(xs);
        }