public Participation(DataTypes.Text.DvText function, DataTypes.Quantity.DvInterval<DataTypes.Quantity.DateTime.DvDateTime> time, DataTypes.Text.DvCodedText mode, PartyProxy performer) : this() { Check.Require(function != null, "function must not be null."); Check.Require(mode != null, "mode must not be null"); Check.Require(performer != null, "performer must not be null"); this.function = function; this.time = time; this.mode = mode; this.performer = performer; this.CheckStrictInvariants(); }
public Participation(DataTypes.Text.DvText function, DataTypes.Quantity.DvInterval <DataTypes.Quantity.DateTime.DvDateTime> time, DataTypes.Text.DvCodedText mode, PartyProxy performer) : this() { Check.Require(function != null, "function must not be null."); Check.Require(mode != null, "mode must not be null"); Check.Require(performer != null, "performer must not be null"); this.function = function; this.time = time; this.mode = mode; this.performer = performer; this.CheckStrictInvariants(); }
internal static DataTypes.Basic.DataValue CreateInterval(string intervalType) { Check.Require(!string.IsNullOrEmpty(intervalType), "intervalType must not be null or empty"); DataTypes.Basic.DataValue interval = null; switch (intervalType) { case "DV_QUANTITY": interval = new DataTypes.Quantity.DvInterval <DataTypes.Quantity.DvQuantity>(); break; case "DV_COUNT": interval = new DataTypes.Quantity.DvInterval <DataTypes.Quantity.DvCount>(); break; case "DV_ORDINAL": interval = new DataTypes.Quantity.DvInterval <DataTypes.Quantity.DvOrdinal>(); break; case "DV_PROPORTION": interval = new DataTypes.Quantity.DvInterval <DataTypes.Quantity.DvProportion>(); break; case "DV_DURATION": interval = new DataTypes.Quantity.DvInterval <DataTypes.Quantity.DateTime.DvDuration>(); break; case "DV_DATE_TIME": interval = new DataTypes.Quantity.DvInterval <DataTypes.Quantity.DateTime.DvDateTime>(); break; case "DV_DATE": interval = new DataTypes.Quantity.DvInterval <DataTypes.Quantity.DateTime.DvDate>(); break; case "DV_TIME": interval = new DataTypes.Quantity.DvInterval <DataTypes.Quantity.DateTime.DvTime>(); break; default: throw new NotImplementedException(intervalType); } Check.Ensure(interval != null, "interval must not be null"); return(interval); }
internal void ReadXml(XmlReader reader) { reader.ReadStartElement(); reader.MoveToContent(); Check.Assert(reader.LocalName == "function", "Expected LocalName is 'function' not " + reader.LocalName); string functionType = RmXmlSerializer.ReadXsiType(reader); if (!string.IsNullOrEmpty(functionType)) { this.function = RmFactory.DataValue(functionType) as DataTypes.Text.DvText; } else { this.function = new OpenEhr.RM.DataTypes.Text.DvText(); } this.function.ReadXml(reader); reader.MoveToContent(); Check.Assert(reader.LocalName == "performer", "Expected LocalName is 'performer' not " + reader.LocalName); string performerType = RmXmlSerializer.ReadXsiType(reader); this.performer = RmFactory.PartyProxy(performerType); this.performer.ReadXml(reader); if (reader.LocalName == "time") { this.time = new OpenEhr.RM.DataTypes.Quantity.DvInterval <OpenEhr.RM.DataTypes.Quantity.DateTime.DvDateTime>(); this.time.ReadXml(reader); } Check.Assert(reader.LocalName == "mode", "Expected LocalName is 'mode' not " + reader.LocalName); this.mode = new OpenEhr.RM.DataTypes.Text.DvCodedText(); this.mode.ReadXml(reader); DesignByContract.Check.Assert(reader.NodeType == System.Xml.XmlNodeType.EndElement, "Expected endElement of PartyIdentified."); reader.ReadEndElement(); reader.MoveToContent(); }
internal static DataTypes.Basic.DataValue CreateInterval(string intervalType) { Check.Require(!string.IsNullOrEmpty(intervalType), "intervalType must not be null or empty"); DataTypes.Basic.DataValue interval = null; switch (intervalType) { case "DV_QUANTITY": interval = new DataTypes.Quantity.DvInterval<DataTypes.Quantity.DvQuantity>(); break; case "DV_COUNT": interval = new DataTypes.Quantity.DvInterval<DataTypes.Quantity.DvCount>(); break; case "DV_ORDINAL": interval = new DataTypes.Quantity.DvInterval<DataTypes.Quantity.DvOrdinal>(); break; case "DV_PROPORTION": interval = new DataTypes.Quantity.DvInterval<DataTypes.Quantity.DvProportion>(); break; case "DV_DURATION": interval = new DataTypes.Quantity.DvInterval<DataTypes.Quantity.DateTime.DvDuration>(); break; case "DV_DATE_TIME": interval = new DataTypes.Quantity.DvInterval<DataTypes.Quantity.DateTime.DvDateTime>(); break; case "DV_DATE": interval = new DataTypes.Quantity.DvInterval<DataTypes.Quantity.DateTime.DvDate>(); break; case "DV_TIME": interval = new DataTypes.Quantity.DvInterval<DataTypes.Quantity.DateTime.DvTime>(); break; default: throw new NotImplementedException(intervalType); } Check.Ensure(interval != null, "interval must not be null"); return interval; }
internal void ReadXml(XmlReader reader) { reader.ReadStartElement(); reader.MoveToContent(); Check.Assert(reader.LocalName == "function", "Expected LocalName is 'function' not " + reader.LocalName); string functionType = RmXmlSerializer.ReadXsiType(reader); if (!string.IsNullOrEmpty(functionType)) { this.function = RmFactory.DataValue(functionType) as DataTypes.Text.DvText; } else this.function = new OpenEhr.RM.DataTypes.Text.DvText(); this.function.ReadXml(reader); reader.MoveToContent(); Check.Assert(reader.LocalName == "performer", "Expected LocalName is 'performer' not " + reader.LocalName); string performerType = RmXmlSerializer.ReadXsiType(reader); this.performer = RmFactory.PartyProxy(performerType); this.performer.ReadXml(reader); if (reader.LocalName == "time") { this.time = new OpenEhr.RM.DataTypes.Quantity.DvInterval<OpenEhr.RM.DataTypes.Quantity.DateTime.DvDateTime>(); this.time.ReadXml(reader); } Check.Assert(reader.LocalName == "mode", "Expected LocalName is 'mode' not " + reader.LocalName); this.mode = new OpenEhr.RM.DataTypes.Text.DvCodedText(); this.mode.ReadXml(reader); DesignByContract.Check.Assert(reader.NodeType == System.Xml.XmlNodeType.EndElement, "Expected endElement of PartyIdentified."); reader.ReadEndElement(); reader.MoveToContent(); }