/// <summary>
        /// Convert a ProvinceList to a WebProvince array.
        /// </summary>
        /// <param name="provinces">The ProvinceList.</param>
        /// <returns>The WebProvince array.</returns>
        internal static List <WebProvince> GetProvinces(ProvinceList provinces)
        {
            Province           province;
            Int32              provinceIndex;
            WebProvince        webProvince;
            List <WebProvince> webProvinces;

            webProvinces = null;
            if (provinces.IsNotEmpty())
            {
                webProvinces = new List <WebProvince>();
                for (provinceIndex = 0; provinceIndex < provinces.Count; provinceIndex++)
                {
                    province       = provinces[provinceIndex];
                    webProvince    = new WebProvince();
                    webProvince.Id = province.Id;
#if DATA_SPECIFIED_EXISTS
                    webProvince.IdSpecified = true;
#endif
                    webProvince.Name           = province.Name;
                    webProvince.Identifier     = province.Identifier;
                    webProvince.IsProvincePart = province.IsProvincePart;
#if DATA_SPECIFIED_EXISTS
                    webProvince.IsProvincePartSpecified = true;
#endif
                    webProvince.PartOfProvinceId = province.PartOfProvinceId;
#if DATA_SPECIFIED_EXISTS
                    webProvince.PartOfProvinceIdSpecified = true;
#endif
                    webProvinces.Add(webProvince);
                }
            }
            return(webProvinces);
        }
        /// <summary>
        /// Get all province information objects.
        /// </summary>
        /// <returns>All province information objects.</returns>
        public static ProvinceList GetProvinces()
        {
            ProvinceList provinces = null;

            for (Int32 getAttempts = 0; (provinces.IsNull()) && (getAttempts < 3); getAttempts++)
            {
                LoadProvinces();
                provinces = Provinces;
            }
            return(provinces);
        }
        /// <summary>
        /// Get provinces from web service.
        /// </summary>
        private static void LoadProvinces()
        {
            ProvinceList provinces;

            if (Provinces.IsNull())
            {
                // Get data from web service.
                provinces = new ProvinceList();
                foreach (WebProvince webProvince in WebServiceClient.GetProvinces())
                {
                    provinces.Add(new Province(webProvince.Id,
                                               webProvince.Name,
                                               webProvince.Identifier,
                                               webProvince.IsProvincePart,
                                               webProvince.PartOfProvinceId));
                }
                Provinces = provinces;
            }
        }
Esempio n. 4
0
        /// <summary>
        /// Create a SpeciesObservationSearchCriteria instance.
        /// </summary>
        public SpeciesObservationSearchCriteria()
        {
            Accuracy = Int32.MinValue;
            BirdNestActivityLevel = Int32.MinValue;
            Counties    = new CountyList();
            DatabaseIds = new List <Int32>();
            HasAccuracy = false;
            HasBirdNestActivityLevel           = false;
            HasBoundingBox                     = false;
            IncludeNeverFoundObservations      = false;
            IncludeNotRediscoveredObservations = false;
            IncludePositiveObservations        = true;
            IncludeUncertainTaxonDetermination = true;
            LocalitySearchString               = null;
            MaxEastCoordinate                  = Int32.MinValue;
            MaxWestCoordinate                  = Int32.MinValue;
            MaxNorthCoordinate                 = Int32.MinValue;
            MaxSouthCoordinate                 = Int32.MinValue;
            Provinces = new ProvinceList();
            TaxonIds  = new List <Int32>();

            if (UserManager.IsUserLoggedIn())
            {
                UserRoleId = UserManager.GetUser().Roles[0].Id;
            }
            else
            {
                UserRoleId = Int32.MinValue;
            }

            ObservationEndDate    = DateTime.MinValue;
            ObservationStartDate  = DateTime.MinValue;
            ObserverSearchString  = null;
            UseOfObservationDate  = WebUseOfDate.NotSet;
            RegistrationEndDate   = DateTime.MinValue;
            RegistrationStartDate = DateTime.MinValue;
            UseOfRegistrationDate = WebUseOfDate.NotSet;
        }
 /// <summary>
 /// Refresh cached data.
 /// </summary>
 private static void RefreshCache()
 {
     Counties  = null;
     Provinces = null;
 }