Exemple #1
0
        /// <summary>
        /// A method that obtains red list information.
        /// </summary>
        private void LoadRedListInformation()
        {
            SpeciesFactList        speciesFacts;
            UserParameterSelection parameters;

            if (_organismGroupName.IsNull())
            {
                _organismGroupName          = String.Empty;
                _redlistCategoryName        = String.Empty;
                _redlistCategoryShortString = String.Empty;
                _redlistCriteria            = String.Empty;

                parameters = new UserParameterSelection();
                parameters.Taxa.Add(_taxon);
                parameters.Factors.Add(FactorManager.GetFactor(FactorId.RedlistCategory));
                parameters.Factors.Add(FactorManager.GetFactor(FactorId.RedlistCriteriaString));
                parameters.Factors.Add(FactorManager.GetFactor(FactorId.Redlist_OrganismLabel1));
                parameters.Periods.Add(_period);
                speciesFacts = SpeciesFactManager.GetSpeciesFactsByUserParameterSelection(parameters);
                if (speciesFacts.IsNotEmpty())
                {
                    foreach (SpeciesFact speciesFact in speciesFacts)
                    {
                        switch (speciesFact.Factor.Id)
                        {
                        case (Int32)FactorId.RedlistCategory:
                            if (speciesFact.HasField1)
                            {
                                _redlistCategoryName = speciesFact.Field1.EnumValue.OriginalLabel;
                                _redlistCategoryName = _redlistCategoryName.Remove(_redlistCategoryName.Length - 5);
                            }
                            if (speciesFact.HasField4)
                            {
                                _redlistCategoryShortString = speciesFact.Field4.StringValue;
                            }
                            break;

                        case (Int32)FactorId.RedlistCriteriaString:
                            if (speciesFact.HasField4 &&
                                speciesFact.Field4.StringValue.IsNotEmpty())
                            {
                                _redlistCriteria = speciesFact.Field4.StringValue.Trim();
                            }
                            break;

                        case (Int32)FactorId.Redlist_OrganismLabel1:
                            if (speciesFact.MainField.HasValue)
                            {
                                _organismGroupName = speciesFact.MainField.EnumValue.OriginalLabel;
                            }
                            break;
                        }
                    }
                }
            }
        }
 /// <summary>
 /// Add user parameter selection to the data identifier list.
 /// </summary>
 /// <param name='userParameterSelection'>A user parameter selection.</param>
 public void AddRange(UserParameterSelection userParameterSelection)
 {
     if (userParameterSelection.IsNotNull())
     {
         AddRange(userParameterSelection.Factors);
         AddRange(userParameterSelection.Hosts, DataTypeId.Host);
         AddRange(userParameterSelection.IndividualCategories);
         AddRange(userParameterSelection.Periods);
         AddRange(userParameterSelection.References);
         AddRange(userParameterSelection.Taxa);
     }
 }
 /// <summary>
 /// Private constructor. Makes a clone of a UserParameterSelection.
 /// </summary>
 /// <param name="userParameterSelection">UserParameterSelection to clone</param>
 private UserParameterSelection(UserParameterSelection userParameterSelection)
 {
     _factors = new FactorList(true);
     _factors.AddRange(userParameterSelection.Factors);
     _hosts = new TaxonList(true);
     _hosts.AddRange(userParameterSelection.Hosts);
     _individualCategories = new IndividualCategoryList(true);
     _individualCategories.AddRange(userParameterSelection.IndividualCategories);
     _periods = new PeriodList(true);
     _periods.AddRange(userParameterSelection.Periods);
     _references = new ReferenceList(true);
     _references.AddRange(userParameterSelection.References);
     _taxa = new TaxonList(true);
     _taxa.AddRange(userParameterSelection.Taxa);
 }
Exemple #4
0
        /// <summary>
        /// Get species facts with species document information.
        /// </summary>
        private void GetSpeciesFacts()
        {
            UserParameterSelection parameters = new UserParameterSelection();
            TaxonList taxa = new TaxonList();

            taxa.Add(_taxon);
            parameters.Taxa = taxa;
            FactorSearchCriteria criteria  = new FactorSearchCriteria();
            List <Int32>         factorIds = new List <Int32>();

            factorIds.Add((Int32)FactorId.SpeciesInformationDocumentGroup);
            criteria.RestrictSearchToFactorIds = factorIds;
            criteria.RestrictReturnToScope     = ArtDatabanken.Data.WebService.FactorSearchScope.LeafFactors;
            parameters.Factors = FactorManager.GetFactorsBySearchCriteria(criteria);
            _speciesFacts      = SpeciesFactManager.GetSpeciesFactsByUserParameterSelection(parameters);
        }
 /// <summary>
 /// Create a user data set instance.
 /// </summary>
 public UserDataSet()
 {
     _parameters   = new UserParameterSelection();
     _speciesFacts = new SpeciesFactList();
 }