protected void Validate(CInteger cInteger) { this.ValidateBase((CPrimitive)cInteger); Invariant(cInteger.List != null ^ cInteger.Range != null, CommonStrings.CIntegerListXorRange); if (cInteger.Range != null) this.Validate(cInteger.Range); }
private void WriteXml(CInteger cPrimitive) { if (cPrimitive.List != null && cPrimitive.List.Count > 0) { foreach (int item in cPrimitive.List) { writer.WriteElementString("list", OpenEhrNamespace, item.ToString()); } } if (cPrimitive.Range != null) { writer.WriteStartElement(UseOpenEhrPrefix(writer), "range", OpenEhrNamespace); this.WriteXml(cPrimitive.Range); writer.WriteEndElement(); } if (cPrimitive.assumedValueSet) writer.WriteElementString("assumed_value", OpenEhrNamespace, cPrimitive.AssumedValue.ToString()); }
internal static OpenEhr.AM.Archetype.ConstraintModel.Primitive.CPrimitive CPrimitive(string typeName) { DesignByContract.Check.Require(!string.IsNullOrEmpty(typeName), string.Format(CommonStrings.XMustNotBeNullOrEmpty, "typeName")); OpenEhr.AM.Archetype.ConstraintModel.Primitive.CPrimitive cPrimitive = null; switch (typeName) { case "C_BOOLEAN": cPrimitive = new CBoolean(); break; case "C_DATE": cPrimitive = new CDate(); break; case "C_DATE_TIME": cPrimitive = new CDateTime(); break; case "C_DURATION": cPrimitive = new CDuration(); break; case "C_TIME": cPrimitive = new CTime(); break; case "C_INTEGER": cPrimitive = new CInteger(); break; case "C_REAL": cPrimitive = new CReal(); break; case "C_STRING": cPrimitive = new CString(); break; default: throw new NotSupportedException("type not supported: " + typeName); } DesignByContract.Check.Ensure(cPrimitive != null, "cObject must not be null."); return cPrimitive; }
private void ReadXml(CInteger cInteger) { reader.ReadStartElement(); reader.MoveToContent(); if (reader.LocalName == "list") { System.Collections.Generic.List<int> intList = new System.Collections.Generic.List<int>(); do { intList.Add(reader.ReadElementContentAsInt("list", OpenEhrNamespace)); reader.MoveToContent(); } while (reader.LocalName == "list"); if (intList.Count > 0) cInteger.List = new Set<int>(intList); } if (reader.LocalName == "range") { cInteger.Range = new Interval<int>(); this.ReadXml(cInteger.Range); } if (reader.LocalName == "assumed_value") { cInteger.AssumedValue = reader.ReadElementContentAsInt("assumed_value", OpenEhrNamespace); reader.MoveToContent(); } reader.ReadEndElement(); reader.MoveToContent(); }