public PeriodElementViewModel(PeriodElement model)
     : base(model)
 {
     Period = model.ObserveProperty(m => m.Period)
              .Select(p =>
                      new Period <DepartureViewModel>(new DepartureViewModel(p.Begin), new DepartureViewModel(p.End)))
              .ToReactiveProperty();
 }
예제 #2
0
            public override IDeepCopyable CopyTo(IDeepCopyable other)
            {
                var dest = other as TimingRepeatComponent;

                if (dest != null)
                {
                    base.CopyTo(dest);
                    if (Bounds != null)
                    {
                        dest.Bounds = (Hl7.Fhir.Model.Element)Bounds.DeepCopy();
                    }
                    if (CountElement != null)
                    {
                        dest.CountElement = (Hl7.Fhir.Model.Integer)CountElement.DeepCopy();
                    }
                    if (DurationElement != null)
                    {
                        dest.DurationElement = (Hl7.Fhir.Model.FhirDecimal)DurationElement.DeepCopy();
                    }
                    if (DurationMaxElement != null)
                    {
                        dest.DurationMaxElement = (Hl7.Fhir.Model.FhirDecimal)DurationMaxElement.DeepCopy();
                    }
                    if (DurationUnitsElement != null)
                    {
                        dest.DurationUnitsElement = (Code <Hl7.Fhir.Model.Timing.UnitsOfTime>)DurationUnitsElement.DeepCopy();
                    }
                    if (FrequencyElement != null)
                    {
                        dest.FrequencyElement = (Hl7.Fhir.Model.Integer)FrequencyElement.DeepCopy();
                    }
                    if (FrequencyMaxElement != null)
                    {
                        dest.FrequencyMaxElement = (Hl7.Fhir.Model.Integer)FrequencyMaxElement.DeepCopy();
                    }
                    if (PeriodElement != null)
                    {
                        dest.PeriodElement = (Hl7.Fhir.Model.FhirDecimal)PeriodElement.DeepCopy();
                    }
                    if (PeriodMaxElement != null)
                    {
                        dest.PeriodMaxElement = (Hl7.Fhir.Model.FhirDecimal)PeriodMaxElement.DeepCopy();
                    }
                    if (PeriodUnitsElement != null)
                    {
                        dest.PeriodUnitsElement = (Code <Hl7.Fhir.Model.Timing.UnitsOfTime>)PeriodUnitsElement.DeepCopy();
                    }
                    if (WhenElement != null)
                    {
                        dest.WhenElement = (Code <Hl7.Fhir.Model.Timing.EventTiming>)WhenElement.DeepCopy();
                    }
                    return(dest);
                }
                else
                {
                    throw new ArgumentException("Can only copy to an object of the same type", "other");
                }
            }
예제 #3
0
        public override IDeepCopyable CopyTo(IDeepCopyable other)
        {
            var dest = other as SampledData;

            if (dest != null)
            {
                base.CopyTo(dest);
                if (Origin != null)
                {
                    dest.Origin = (Hl7.Fhir.Model.SimpleQuantity)Origin.DeepCopy();
                }
                if (PeriodElement != null)
                {
                    dest.PeriodElement = (Hl7.Fhir.Model.FhirDecimal)PeriodElement.DeepCopy();
                }
                if (FactorElement != null)
                {
                    dest.FactorElement = (Hl7.Fhir.Model.FhirDecimal)FactorElement.DeepCopy();
                }
                if (LowerLimitElement != null)
                {
                    dest.LowerLimitElement = (Hl7.Fhir.Model.FhirDecimal)LowerLimitElement.DeepCopy();
                }
                if (UpperLimitElement != null)
                {
                    dest.UpperLimitElement = (Hl7.Fhir.Model.FhirDecimal)UpperLimitElement.DeepCopy();
                }
                if (DimensionsElement != null)
                {
                    dest.DimensionsElement = (Hl7.Fhir.Model.PositiveInt)DimensionsElement.DeepCopy();
                }
                if (DataElement != null)
                {
                    dest.DataElement = (Hl7.Fhir.Model.FhirString)DataElement.DeepCopy();
                }
                return(dest);
            }
            else
            {
                throw new ArgumentException("Can only copy to an object of the same type", "other");
            }
        }
예제 #4
0
        public override ErrorList Validate()
        {
            var result = new ErrorList();

            result.AddRange(base.Validate());

            if (Origin != null)
            {
                result.AddRange(Origin.Validate());
            }
            if (PeriodElement != null)
            {
                result.AddRange(PeriodElement.Validate());
            }
            if (FactorElement != null)
            {
                result.AddRange(FactorElement.Validate());
            }
            if (LowerLimitElement != null)
            {
                result.AddRange(LowerLimitElement.Validate());
            }
            if (UpperLimitElement != null)
            {
                result.AddRange(UpperLimitElement.Validate());
            }
            if (DimensionsElement != null)
            {
                result.AddRange(DimensionsElement.Validate());
            }
            if (DataElement != null)
            {
                result.AddRange(DataElement.Validate());
            }

            return(result);
        }