public XmlSerializableXVersionedObject(XVersionedObject <T> versionedComposition)
 {
     this.Uid               = versionedComposition.Uid;
     this.OwnerId           = versionedComposition.OwnerId;
     this.TimeCreated       = versionedComposition.TimeCreated;
     this.TotalVersionCount = versionedComposition.TotalVersionCount;
     this.Versions          = versionedComposition.Versions;
 }
Beispiel #2
0
        /// <summary>
        /// Add versioned composition extract object to compositions collection
        /// </summary>
        /// <param name="versionedComposition"></param>
        public void AddComposition(XVersionedObject<Composition.Composition> versionedComposition)
        {
            DesignByContract.Check.Require(versionedComposition != null, "VersionedComposition must not be null");

            if (this.compositions == null)
                this.compositions = new List<XVersionedObject<Composition.Composition>>();

            this.compositions.Add(versionedComposition);
        }
Beispiel #3
0
        /// <summary>
        /// Add versioned composition extract object to compositions collection
        /// </summary>
        /// <param name="versionedComposition"></param>
        public void AddComposition(XVersionedObject <Composition.Composition> versionedComposition)
        {
            DesignByContract.Check.Require(versionedComposition != null, "VersionedComposition must not be null");

            if (this.compositions == null)
            {
                this.compositions = new List <XVersionedObject <Composition.Composition> >();
            }

            this.compositions.Add(versionedComposition);
        }
Beispiel #4
0
        public void ReadXml <T>(XmlReader reader, XVersionedObject <T> versionedObject) where T : class
        {
            reader.ReadStartElement();
            reader.MoveToContent();

            // <xs:element name="uid" type="HIER_OBJECT_ID"/>
            versionedObject.Uid = new HierObjectId();
            ((System.Xml.Serialization.IXmlSerializable)versionedObject.Uid).ReadXml(reader);

            //<xs:element name="owner_id" type="OBJECT_REF"/>
            versionedObject.OwnerId = new ObjectRef();
            ((System.Xml.Serialization.IXmlSerializable)versionedObject.OwnerId).ReadXml(reader);

            // <xs:element name="time_created" type="DV_DATE_TIME"/>
            versionedObject.TimeCreated = new DvDateTime();
            ((System.Xml.Serialization.IXmlSerializable)versionedObject.TimeCreated).ReadXml(reader);

            //<xs:element name="total_version_count" type="xs:int"/>
            versionedObject.TotalVersionCount
                = reader.ReadElementContentAsInt("total_version_count", RmXmlSerializer.OpenEhrNamespace);
            reader.MoveToContent();

            //<xs:element name="extract_version_count" type="xs:int"/>
            int extractCount
                = reader.ReadElementContentAsInt("extract_version_count", RmXmlSerializer.OpenEhrNamespace);

            reader.MoveToContent();

            // TODO: <xs:element name="revision_history" type="REVISION_HISTORY" minOccurs="0"/>

            //<xs:element name="versions" type="ORIGINAL_VERSION" minOccurs="0" maxOccurs="unbounded"/>
            if (reader.LocalName == "versions")
            {
                versionedObject.Versions = new AssumedTypes.List <OriginalVersion <T> >();

                while (reader.LocalName == "versions")
                {
                    OriginalVersion <T> version = new OriginalVersion <T>();
                    ((System.Xml.Serialization.IXmlSerializable)version).ReadXml(reader);
                    versionedObject.Versions.Add(version);
                }
            }

            reader.ReadEndElement();
            reader.MoveToContent();
        }
Beispiel #5
0
        public void WriteXml <T>(XmlWriter writer, XVersionedObject <T> versionedObject) where T : class
        {
            // <xs:element name="uid" type="HIER_OBJECT_ID"/>
            writer.WriteStartElement("uid", RmXmlSerializer.OpenEhrNamespace);
            ((System.Xml.Serialization.IXmlSerializable)versionedObject.Uid).WriteXml(writer);
            writer.WriteEndElement();

            //<xs:element name="owner_id" type="OBJECT_REF"/>
            writer.WriteStartElement("owner_id", RmXmlSerializer.OpenEhrNamespace);
            RmXmlSerializer.WriteXml(writer, versionedObject.OwnerId);
            writer.WriteEndElement();

            // <xs:element name="time_created" type="DV_DATE_TIME"/>
            writer.WriteStartElement("time_created", RmXmlSerializer.OpenEhrNamespace);
            ((System.Xml.Serialization.IXmlSerializable)versionedObject.TimeCreated).WriteXml(writer);
            writer.WriteEndElement();

            //<xs:element name="total_version_count" type="xs:int"/>
            writer.WriteStartElement("total_version_count", RmXmlSerializer.OpenEhrNamespace);
            writer.WriteValue(versionedObject.TotalVersionCount);
            writer.WriteEndElement();

            //<xs:element name="extract_version_count" type="xs:int"/>
            writer.WriteStartElement("extract_version_count", RmXmlSerializer.OpenEhrNamespace);
            writer.WriteValue(versionedObject.ExtractVersionCount);
            writer.WriteEndElement();

            // TODO: <xs:element name="revision_history" type="REVISION_HISTORY" minOccurs="0"/>

            //<xs:element name="versions" type="ORIGINAL_VERSION" minOccurs="0" maxOccurs="unbounded"/>
            if (versionedObject.Versions != null)
            {
                foreach (OriginalVersion <T> version in versionedObject.Versions)
                {
                    writer.WriteStartElement("versions", RmXmlSerializer.OpenEhrNamespace);
                    ((System.Xml.Serialization.IXmlSerializable)version).WriteXml(writer);
                    writer.WriteEndElement();
                }
            }
        }
Beispiel #6
0
 public VersionedFolder(XVersionedObject <Folder> xVersionedObject)
     : base(xVersionedObject)
 {
 }
 public VersionedComposition(XVersionedObject <Composition.Composition> xVersionedObject)
     : base(xVersionedObject)
 {
 }
Beispiel #8
0
 public VersionedEhrStatus(XVersionedObject <EhrStatus> xVersionedObject)
     : base(xVersionedObject)
 {
 }