/// <summary> /// Merge a species observation field specification into the list. /// </summary> /// <param name='fieldSpecifications'>Species observation fields.</param> /// <param name='fieldSpecification'>Species observation field.</param> public static void Merge(this List <WebSpeciesObservationFieldSpecification> fieldSpecifications, WebSpeciesObservationFieldSpecification fieldSpecification) { if (!(fieldSpecifications.ContainsFieldSpecification(fieldSpecification))) { fieldSpecifications.Add(fieldSpecification); } }
/// <summary> /// Check that data is valid. /// </summary> /// <param name="fieldSpecification">Species observation field specification.</param> public static void CheckData(this WebSpeciesObservationFieldSpecification fieldSpecification) { if (fieldSpecification.IsNotNull()) { fieldSpecification.Class.CheckNotNull("fieldSpecification.Class"); fieldSpecification.Class.CheckData(); fieldSpecification.Property.CheckNotNull("fieldSpecification.Property"); fieldSpecification.Property.CheckData(); } }
/// <summary> /// Merge a species observation field specification into the list. /// </summary> /// <param name='fieldSpecifications'>Species observation field specifiactions.</param> /// <param name='classId'>Species observation class.</param> /// <param name='propertyId'>Species observation property.</param> public static void Merge(this List <WebSpeciesObservationFieldSpecification> fieldSpecifications, SpeciesObservationClassId classId, SpeciesObservationPropertyId propertyId) { WebSpeciesObservationFieldSpecification fieldSpecification; fieldSpecification = new WebSpeciesObservationFieldSpecification(); fieldSpecification.Class = new WebSpeciesObservationClass(); fieldSpecification.Class.Id = classId; fieldSpecification.Property = new WebSpeciesObservationProperty(); fieldSpecification.Property.Id = propertyId; Merge(fieldSpecifications, fieldSpecification); }
/// <summary> /// Determines whether a species observation field /// specification is in the list. /// </summary> /// <param name='fieldSpecifications'>Species observation field specifiactions.</param> /// <param name='fieldSpecification'>Species observation field specification.</param> /// <returns> /// True if the species observation field /// specification is in the list. /// </returns> public static Boolean ContainsFieldSpecification(this List <WebSpeciesObservationFieldSpecification> fieldSpecifications, WebSpeciesObservationFieldSpecification fieldSpecification) { if (fieldSpecifications.IsEmpty()) { return(false); } foreach (WebSpeciesObservationFieldSpecification tempFieldSpecification in fieldSpecifications) { if ((tempFieldSpecification.Class.GetClass() == fieldSpecification.Class.GetClass()) && (tempFieldSpecification.Property.GetProperty() == fieldSpecification.Property.GetProperty())) { return(true); } } return(false); }