コード例 #1
0
ファイル: AuditLogEntry.cs プロジェクト: CMRI-ProCan/pwiz
        private AuditLogEntry ReadEntries(XmlReader reader)
        {
            if (!reader.IsStartElement(AuditLogEntry.XML_ROOT))
            {
                return(AuditLogEntry.ROOT);
            }

            return(reader.DeserializeElement <AuditLogEntry>()
                   .ChangeParent(ReadEntries(reader)));
        }
コード例 #2
0
        public void ReadXml(XmlReader reader)
        {
            LogIndex      = Interlocked.Increment(ref _logIndexCounter);
            FormatVersion = new DocumentFormat(reader.GetDoubleAttribute(ATTR.format_version));
            var time = DateTime.Parse(reader.GetAttribute(ATTR.time_stamp), CultureInfo.InvariantCulture);

            TimeStamp = DateTime.SpecifyKind(time, DateTimeKind.Utc).ToLocalTime();
            User      = reader.GetAttribute(ATTR.user);

            InsertUndoRedoIntoAllInfo = reader.GetBoolAttribute(ATTR.insert_undo_redo);

            var countType = reader.GetAttribute(ATTR.count_type);

            if (countType == null)
            {
                CountEntryType = null;
            }
            else
            {
                CountEntryType = (MessageType)Enum.Parse(typeof(MessageType), countType);
            }

            reader.ReadStartElement();

            Reason    = reader.IsStartElement(EL.reason) ? reader.ReadElementString() : string.Empty;
            ExtraInfo = reader.IsStartElement(EL.extra_info) ? reader.ReadElementString().UnescapeNonPrintableChars() : string.Empty;

            UndoRedo = reader.DeserializeElement <LogMessage>();
            Summary  = reader.DeserializeElement <LogMessage>();

            var list = new List <LogMessage>();

            while (reader.IsStartElement(EL.message))
            {
                list.Add(reader.DeserializeElement <LogMessage>());
            }

            AllInfo = list;

            reader.ReadEndElement();
        }
コード例 #3
0
        public void ReadXml(XmlReader reader)
        {
            reader.ReadStartElement();
            var auditLogEntries = new List <AuditLogEntry>();

            while (reader.IsStartElement(AuditLogEntry.XML_ROOT))
            {
                var entry = reader.DeserializeElement <AuditLogEntry>();
                auditLogEntries.Add(entry);
            }

            AuditLogEntries = ImmutableList.ValueOf(auditLogEntries);
            reader.ReadEndElement();
        }
コード例 #4
0
        public override void ReadXml(XmlReader reader)
        {
            base.ReadXml(reader);
            AnnotationTargets = AnnotationTargetSet.Parse(reader.GetAttribute(Attr.targets));
            // In older documents, it's possible for the "type" attribute value to be "-1".
            Type = TypeSafeEnum.ValidateOrDefault(reader.GetEnumAttribute(Attr.type, AnnotationType.text),
                                                  AnnotationType.text);
            Lookup = reader.GetAttribute(Attr.lookup);
            var items = new List <string>();

            if (reader.IsEmptyElement)
            {
                reader.Read();
            }
            else
            {
                reader.Read();
                while (true)
                {
                    if (reader.IsStartElement(El.value))
                    {
                        items.Add(reader.ReadElementString());
                    }
                    else if (reader.IsStartElement(El.expression))
                    {
                        Expression = reader.DeserializeElement <AnnotationExpression>();
                    }
                    else
                    {
                        break;
                    }
                }
                reader.ReadEndElement();
            }
            _items = MakeReadOnly(items);
        }
コード例 #5
0
ファイル: SrmSettings.cs プロジェクト: lgatto/proteowizard
        public override void ReadXml(XmlReader reader)
        {
            // Read tag attributes
            base.ReadXml(reader);
            reader.ReadStartElement();
            PeptideSettings = reader.DeserializeElement<PeptideSettings>();
            TransitionSettings = reader.DeserializeElement<TransitionSettings>();

            // 10.23.12 -- The order of <measured_results> and <data_settings> has been switched to enable parsing (in Panorama)
            // of all annotation definitions before reading any replicate annotations in <measured_results>.
            // We want Skyline to be able to read older documents where <measured_results> come before <data_settings>
            if (reader.IsStartElement(new XmlElementHelper<MeasuredResults>().ElementNames[0]))
            {
                MeasuredResults = reader.DeserializeElement<MeasuredResults>();
                DataSettings = reader.DeserializeElement<DataSettings>() ?? DataSettings.DEFAULT;
            }
            else
            {
                DataSettings = reader.DeserializeElement<DataSettings>() ?? DataSettings.DEFAULT;
                MeasuredResults = reader.DeserializeElement<MeasuredResults>();
            }

            DocumentRetentionTimes = reader.DeserializeElement<DocumentRetentionTimes>() ?? DocumentRetentionTimes.EMPTY;
            reader.ReadEndElement();
            ValidateLoad();
        }
コード例 #6
0
        public void ReadXml(XmlReader reader)
        {
            // Consume tag
            if (reader.IsEmptyElement)
                reader.Read();
            else
            {
                reader.ReadStartElement();

                // Read child elements.
                Enzyme = reader.DeserializeElement<Enzyme>();
                DigestSettings = reader.DeserializeElement<DigestSettings>();
                BackgroundProteome = reader.DeserializeElement<BackgroundProteome>();
                Prediction = reader.DeserializeElement<PeptidePrediction>();
                Filter = reader.DeserializeElement<PeptideFilter>();
                Libraries = reader.DeserializeElement<PeptideLibraries>();
                Modifications = reader.DeserializeElement<PeptideModifications>();
                Integration = reader.DeserializeElement<PeptideIntegration>();
                Quantification = reader.DeserializeElement<QuantificationSettings>();
                reader.ReadEndElement();
            }

            Quantification = Quantification ?? QuantificationSettings.DEFAULT;
            // Defer validation to the SrmSettings object
        }
コード例 #7
0
        public void ReadXml(XmlReader reader)
        {
            bool? useMeasuredRTs = reader.GetNullableBoolAttribute(ATTR.use_measured_rts);
            MeasuredRTWindow = reader.GetNullableDoubleAttribute(ATTR.measured_rt_window);
            bool? useLibraryDriftTimes = reader.GetNullableBoolAttribute(ATTR.use_spectral_library_drift_times);
            LibraryDriftTimesResolvingPower = reader.GetNullableDoubleAttribute(ATTR.spectral_library_drift_times_resolving_power);
            // Keep XML values, if written by v0.5 or later
            if (useMeasuredRTs.HasValue)
                UseMeasuredRTs = useMeasuredRTs.Value;
            // Use reasonable defaults for documents saved prior to v0.5
            else
            {
                UseMeasuredRTs = true;
                if (!MeasuredRTWindow.HasValue)
                    MeasuredRTWindow = DEFAULT_MEASURED_RT_WINDOW;
            }

            if (useLibraryDriftTimes.HasValue)
                UseLibraryDriftTimes = useLibraryDriftTimes.Value;
            else
            {
                UseLibraryDriftTimes = false;
                LibraryDriftTimesResolvingPower = null;
            }

            // Consume tag
            if (reader.IsEmptyElement)
                reader.Read();
            else
            {
                reader.ReadStartElement();
                // Read child elements
                RetentionTime = reader.DeserializeElement<RetentionTimeRegression>();
                DriftTimePredictor = reader.DeserializeElement<DriftTimePredictor>();
                reader.ReadEndElement();
            }

            DoValidate();
        }