Example #1
0
        public void Append(IdentifiedObservations observations)
        {
            foreach (IdentifiedObservationsItem ioi in IdentifiedObservations)
            {
                if (ioi.Id == observations.ObservationId)
                {
                    ioi.Observations.AddRange(observations.Observations);
                    return;
                }
            }
            IdentifiedObservationsItem newItem = new IdentifiedObservationsItem(observations.ObservationId);

            newItem.Observations.AddRange(observations.Observations);
            IdentifiedObservations.Add(newItem);
        }
Example #2
0
        public ObservationPackage GetAsObservationPackage()
        {
            //TODO: Consider sorting on identifier and timestamp
            List <IdentifiedObservations> identifiedObservations = new List <IdentifiedObservations>();

            foreach (IdentifiedObservationsItem io in IdentifiedObservations)
            {
                IdentifiedObservations IO = new IdentifiedObservations()
                {
                    ObservationId = io.Id,
                    Observations  = io.Observations.ToArray()
                };
                identifiedObservations.Add(IO);
            }
            ObservationPackage package = new ObservationPackage()
            {
                Observations = identifiedObservations.ToArray()
            };

            return(package);
        }
Example #3
0
        public void AppendObservation(int observationId, Observation observation)
        {
            IdentifiedObservations IO = null;

            if (Package.Observations != null && Package.Observations.Length > 0)
            {
                foreach (IdentifiedObservations io in Package.Observations)
                {
                    if (io.ObservationId == observationId)
                    {
                        IO = io;
                        break;
                    }
                }
            }
            if (IO == null)  // Insert new identified observation into array
            {
                IO = new IdentifiedObservations()
                {
                    ObservationId = observationId,
                    Observations  = null
                };
                List <IdentifiedObservations> ios = new List <IdentifiedObservations>();
                if (Package.Observations != null && Package.Observations.Length > 0)
                {
                    ios.AddRange(Package.Observations);
                }
                ios.Add(IO);
                Package.Observations = ios.ToArray();
            }
            List <Observation> o = new List <Observation>();

            if (IO.Observations != null && IO.Observations.Length > 0)
            {
                o.AddRange(IO.Observations);
            }
            o.Add(observation);  // Insert observation into array
            IO.Observations = o.ToArray();
        }