public AbstractDomainModel GetAll(SearchCriteriaEnum searchCriteria) { DomainModel.Models.EditProfile editProfile = new DomainModel.Models.EditProfile(); switch (searchCriteria) { case CareHub.Core.Enumerations.SearchCriteriaEnum.GET_COUNTRIES: editProfile.Countries = countryRepository.GetAll(); break; case CareHub.Core.Enumerations.SearchCriteriaEnum.GET_STATES: editProfile.States = stateRepository.GetAll(); break; case CareHub.Core.Enumerations.SearchCriteriaEnum.GET_CITIES: editProfile.Cities = cityRepository.GetAll(); break; case CareHub.Core.Enumerations.SearchCriteriaEnum.GET_LOCALITIES: editProfile.Localities = localityRepository.GetAll(); break; default: break; } return(editProfile); }
/// <summary> /// Constructor. /// </summary> /// <param name="criteria">Criteria.</param> /// <param name="displayName">Display name.</param> public SearchCriteria(SearchCriteriaEnum criteria, string displayName) { this.Criteria = criteria; this.DisplayName = displayName; this.id = System.Guid.NewGuid(); }
public AbstractDomainModel GetAll(SearchCriteriaEnum searchCriteria) { DomainModel.Models.ProviderRegistration providerRegistration = new DomainModel.Models.ProviderRegistration(); switch (searchCriteria) { case CareHub.Core.Enumerations.SearchCriteriaEnum.GET_SPECIALTIES: providerRegistration.Specialties = specialtyRepository.GetAll(); break; case CareHub.Core.Enumerations.SearchCriteriaEnum.GET_COUNTRIES: providerRegistration.Countries = countryRepository.GetAll(); break; case CareHub.Core.Enumerations.SearchCriteriaEnum.GET_CITIES: providerRegistration.Cities = cityRepository.GetAll(); break; case CareHub.Core.Enumerations.SearchCriteriaEnum.GET_LOCALITIES: providerRegistration.Localities = localityRepository.GetAll(); break; default: break; } return(providerRegistration); }
public override AbstractDomainModel Query(SearchCriteriaEnum searchCriteria) { DomainModel.Models.PracticesSearch searchPractice = new DomainModel.Models.PracticesSearch(); FactoryFacade factory = new FactoryFacade(); try { switch (searchCriteria) { case SearchCriteriaEnum.GET_HOSPITALS: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(CareHub.UnitOfWork.PracticesSearchUOW)); searchPractice = (DomainModel.Models.PracticesSearch)unitOfWork.GetAll(searchCriteria); break; case SearchCriteriaEnum.GET_LABS: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(CareHub.UnitOfWork.PracticesSearchUOW)); searchPractice = (DomainModel.Models.PracticesSearch)unitOfWork.GetAll(searchCriteria); break; default: break; } } catch (Exception ex) { switch (searchCriteria) { case SearchCriteriaEnum.GET_HOSPITALS: searchPractice.ResponseMessage = ex.Message; break; case SearchCriteriaEnum.GET_LABS: searchPractice.ResponseMessage = ex.Message; break; default: break; } } finally { factory = null; } switch (searchCriteria) { case SearchCriteriaEnum.GET_HOSPITALS: return(searchPractice); case SearchCriteriaEnum.GET_LABS: return(searchPractice); default: break; } return(null); }
public override AbstractDomainModel Query(SearchCriteriaEnum searchCriteria) { signup = new DomainModel.Models.Signup(); FactoryFacade factory = new FactoryFacade(); try { switch (searchCriteria) { case SearchCriteriaEnum.GET_ALL_SECURITY_QUESTIONS: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(JunkCar.UnitOfWork.UOWs.AccountsUOW)); signup = (DomainModel.Models.Signup)unitOfWork.GetAll(searchCriteria); break; default: break; } } catch (Exception ex) { switch (searchCriteria) { case SearchCriteriaEnum.GET_ALL_SECURITY_QUESTIONS: signup.ResponseMessage = ex.Message; break; default: break; } } finally { factory = null; } switch (searchCriteria) { case SearchCriteriaEnum.GET_ALL_SECURITY_QUESTIONS: return(signup); default: break; } return(null); }
public AbstractDomainModel GetAll(SearchCriteriaEnum searchCriteria) { throw new NotImplementedException(); }
public override AbstractDomainModel Query(SearchCriteriaEnum searchCriteria) { home = new DomainModel.Models.Home(); FactoryFacade factory = new FactoryFacade(); try { switch (searchCriteria) { case SearchCriteriaEnum.GET_REGISTRATION_YEARS: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(JunkCar.UnitOfWork.UOWs.HomeUOW)); home = (DomainModel.Models.Home)unitOfWork.GetAll(searchCriteria); break; case SearchCriteriaEnum.GET_CYLINDERS: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(JunkCar.UnitOfWork.UOWs.HomeUOW)); home = (DomainModel.Models.Home)unitOfWork.GetAll(searchCriteria); break; case SearchCriteriaEnum.GET_STATES: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(JunkCar.UnitOfWork.UOWs.HomeUOW)); home = (DomainModel.Models.Home)unitOfWork.GetAll(searchCriteria); break; case SearchCriteriaEnum.GET_QUESTIONNAIRE: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(JunkCar.UnitOfWork.UOWs.HomeUOW)); home = (DomainModel.Models.Home)unitOfWork.GetAll(searchCriteria); break; default: break; } } catch (Exception ex) { switch (searchCriteria) { case SearchCriteriaEnum.GET_REGISTRATION_YEARS: home.ResponseMessage = ex.Message; break; case SearchCriteriaEnum.GET_CYLINDERS: home.ResponseMessage = ex.Message; break; case SearchCriteriaEnum.GET_STATES: home.ResponseMessage = ex.Message; break; case SearchCriteriaEnum.GET_QUESTIONNAIRE: home.ResponseMessage = ex.Message; break; default: break; } } finally { factory = null; } switch (searchCriteria) { case SearchCriteriaEnum.GET_REGISTRATION_YEARS: return home; case SearchCriteriaEnum.GET_CYLINDERS: return home; case SearchCriteriaEnum.GET_STATES: return home; case SearchCriteriaEnum.GET_QUESTIONNAIRE: return home; default: break; } return null; }
public override AbstractDomainModel Query(AbstractDomainModel domainModel, DomainModelEnum domainModelType, SearchCriteriaEnum searchCriteria) { throw new NotImplementedException(); }
/// <summary> /// Search a specific model element by using the given search criteria. /// </summary> /// <param name="modelElement">Model element to be searched.</param> /// <param name="criteria">Search criteria to use.</param> /// <param name="searchText">Text to search.</param> /// <param name="options">Search options.</param> /// <returns>Search result list if any found. Empty list otherwise.</returns> public virtual List<SearchResult> Search(ModelElement modelElement, SearchCriteriaEnum criteria, string searchText, SearchOptions options) { List<SearchResult> results = new List<SearchResult>(); DomainClassInfo info = modelElement.GetDomainClass(); Type modelElementType = modelElement.GetType(); #region properties if (criteria == SearchCriteriaEnum.Name || criteria == SearchCriteriaEnum.NameAndType || criteria == SearchCriteriaEnum.All || criteria == SearchCriteriaEnum.Properties || criteria == SearchCriteriaEnum.PropertiesWithoutName) foreach (DomainPropertyInfo propertyInfo in info.AllDomainProperties) { if (propertyInfo == info.NameDomainProperty && criteria != SearchCriteriaEnum.Name && criteria != SearchCriteriaEnum.NameAndType && criteria != SearchCriteriaEnum.Properties && criteria != SearchCriteriaEnum.All) continue; else if (propertyInfo != info.NameDomainProperty && criteria != SearchCriteriaEnum.All && criteria != SearchCriteriaEnum.Properties && criteria != SearchCriteriaEnum.PropertiesWithoutName) continue; object nameValue = GetPropertyValue(modelElement, modelElementType, propertyInfo.Name); if (nameValue == null && System.String.IsNullOrEmpty(searchText)) { SearchResult searchResult = new SearchResult(); searchResult.IsSuccessFull = true; searchResult.Source = modelElement; searchResult.Reason = "Property " + propertyInfo.Name + " is 'null'"; results.Add(searchResult); } else if (nameValue != null && !System.String.IsNullOrEmpty(searchText)) if (Contains(nameValue.ToString(), searchText, options)) { SearchResult searchResult = new SearchResult(); searchResult.IsSuccessFull = true; searchResult.Source = modelElement; searchResult.Reason = "Property " + propertyInfo.Name + " contains '" + searchText + "'"; results.Add(searchResult); } } #endregion #region roles if (criteria == SearchCriteriaEnum.Roles || criteria == SearchCriteriaEnum.All) { foreach (DomainRoleInfo roleInfo in info.AllDomainRolesPlayed) { if (!roleInfo.IsSource) continue; DomainRelationshipInfo relInfo = roleInfo.DomainRelationship; if (!IsLinkIncludedInDomainTree(modelElement.Store as DomainModelStore, relInfo.Id)) continue; ReadOnlyCollection<ElementLink> links = DomainRoleInfo.GetElementLinks<ElementLink>(modelElement, roleInfo.Id); if (links.Count == 0 && String.IsNullOrEmpty(searchText)) { SearchResult searchResult = new SearchResult(); searchResult.IsSuccessFull = true; searchResult.Source = modelElement; searchResult.Reason = "Role " + roleInfo.PropertyName + " is empty"; results.Add(searchResult); } foreach (ElementLink link in links) { ModelElement m = DomainRoleInfo.GetTargetRolePlayer(link); if (m == null && System.String.IsNullOrEmpty(searchText)) { SearchResult searchResult = new SearchResult(); searchResult.IsSuccessFull = true; searchResult.Source = modelElement; searchResult.Reason = "Role " + roleInfo.PropertyName + " is null"; results.Add(searchResult); } else if (m != null && !System.String.IsNullOrEmpty(searchText)) if (Contains((m as IDomainModelOwnable).DomainElementFullName, searchText, options)) { SearchResult searchResult = new SearchResult(); searchResult.IsSuccessFull = true; searchResult.Source = modelElement; searchResult.Reason = "Role " + roleInfo.PropertyName + " contains '" + searchText + "' in the Full Name property on referenced element " + (m as IDomainModelOwnable).DomainElementFullName; results.Add(searchResult); } } } } #endregion #region type if (criteria == SearchCriteriaEnum.Type || criteria == SearchCriteriaEnum.NameAndType || criteria == SearchCriteriaEnum.All) { if (Contains((modelElement as IDomainModelOwnable).DomainElementType, searchText, options) || Contains((modelElement as IDomainModelOwnable).DomainElementTypeDisplayName, searchText, options)) { SearchResult searchResult = new SearchResult(); searchResult.IsSuccessFull = true; searchResult.Source = modelElement; searchResult.Reason = "Type '" + searchText + "' found"; results.Add(searchResult); } } #endregion return results; }
public override AbstractDomainModel Query(SearchCriteriaEnum searchCriteria) { DomainModel.Models.DoctorsSearch searchDoctor = new DomainModel.Models.DoctorsSearch(); FactoryFacade factory = new FactoryFacade(); try { switch (searchCriteria) { case SearchCriteriaEnum.GET_COUNTRIES: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(CareHub.UnitOfWork.DoctorsSearchUOW)); searchDoctor = (DomainModel.Models.DoctorsSearch)unitOfWork.GetAll(searchCriteria); break; case SearchCriteriaEnum.GET_SPECIALTIES: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(CareHub.UnitOfWork.DoctorsSearchUOW)); searchDoctor = (DomainModel.Models.DoctorsSearch)unitOfWork.GetAll(searchCriteria); break; case SearchCriteriaEnum.GET_DOCTORS: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(CareHub.UnitOfWork.DoctorsSearchUOW)); searchDoctor = (DomainModel.Models.DoctorsSearch)unitOfWork.GetAll(searchCriteria); break; case SearchCriteriaEnum.GET_PHARMACISTS: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(CareHub.UnitOfWork.DoctorsSearchUOW)); searchDoctor = (DomainModel.Models.DoctorsSearch)unitOfWork.GetAll(searchCriteria); break; case SearchCriteriaEnum.GET_NURSE: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(CareHub.UnitOfWork.DoctorsSearchUOW)); searchDoctor = (DomainModel.Models.DoctorsSearch)unitOfWork.GetAll(searchCriteria); break; case SearchCriteriaEnum.GET_TREATMENTS: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(CareHub.UnitOfWork.DoctorsSearchUOW)); searchDoctor = (DomainModel.Models.DoctorsSearch)unitOfWork.GetAll(searchCriteria); break; default: break; } } catch (Exception ex) { switch (searchCriteria) { case SearchCriteriaEnum.GET_COUNTRIES: searchDoctor.ResponseMessage = ex.Message; break; case SearchCriteriaEnum.GET_SPECIALTIES: searchDoctor.ResponseMessage = ex.Message; break; case SearchCriteriaEnum.GET_DOCTORS: searchDoctor.ResponseMessage = ex.Message; break; case SearchCriteriaEnum.GET_PHARMACISTS: searchDoctor.ResponseMessage = ex.Message; break; case SearchCriteriaEnum.GET_NURSE: searchDoctor.ResponseMessage = ex.Message; break; case SearchCriteriaEnum.GET_TREATMENTS: searchDoctor.ResponseMessage = ex.Message; break; default: break; } } finally { factory = null; } switch (searchCriteria) { case SearchCriteriaEnum.GET_COUNTRIES: return(searchDoctor); case SearchCriteriaEnum.GET_SPECIALTIES: return(searchDoctor); case SearchCriteriaEnum.GET_DOCTORS: return(searchDoctor); case SearchCriteriaEnum.GET_PHARMACISTS: return(searchDoctor); case SearchCriteriaEnum.GET_NURSE: return(searchDoctor); case SearchCriteriaEnum.GET_TREATMENTS: return(searchDoctor); default: break; } return(null); }
/// <summary> /// Search a specific model element by using the given search criteria. /// </summary> /// <param name="modelElement">Model element to be searched.</param> /// <param name="criteria">Search criteria to use.</param> /// <param name="searchText">Text to search.</param> /// <param name="options">Search options.</param> /// <returns>Search result list if any found. Empty list otherwise.</returns> public virtual List <SearchResult> Search(ModelElement modelElement, SearchCriteriaEnum criteria, string searchText, SearchOptions options) { List <SearchResult> results = new List <SearchResult>(); DomainClassInfo info = modelElement.GetDomainClass(); Type modelElementType = modelElement.GetType(); #region properties if (criteria == SearchCriteriaEnum.Name || criteria == SearchCriteriaEnum.NameAndType || criteria == SearchCriteriaEnum.All || criteria == SearchCriteriaEnum.Properties || criteria == SearchCriteriaEnum.PropertiesWithoutName) { foreach (DomainPropertyInfo propertyInfo in info.AllDomainProperties) { if (propertyInfo == info.NameDomainProperty && criteria != SearchCriteriaEnum.Name && criteria != SearchCriteriaEnum.NameAndType && criteria != SearchCriteriaEnum.Properties && criteria != SearchCriteriaEnum.All) { continue; } else if (propertyInfo != info.NameDomainProperty && criteria != SearchCriteriaEnum.All && criteria != SearchCriteriaEnum.Properties && criteria != SearchCriteriaEnum.PropertiesWithoutName) { continue; } object nameValue = GetPropertyValue(modelElement, modelElementType, propertyInfo.Name); if (nameValue == null && System.String.IsNullOrEmpty(searchText)) { SearchResult searchResult = new SearchResult(); searchResult.IsSuccessFull = true; searchResult.Source = modelElement; searchResult.Reason = "Property " + propertyInfo.Name + " is 'null'"; results.Add(searchResult); } else if (nameValue != null && !System.String.IsNullOrEmpty(searchText)) { if (Contains(nameValue.ToString(), searchText, options)) { SearchResult searchResult = new SearchResult(); searchResult.IsSuccessFull = true; searchResult.Source = modelElement; searchResult.Reason = "Property " + propertyInfo.Name + " contains '" + searchText + "'"; results.Add(searchResult); } } } } #endregion #region roles if (criteria == SearchCriteriaEnum.Roles || criteria == SearchCriteriaEnum.All) { foreach (DomainRoleInfo roleInfo in info.AllDomainRolesPlayed) { if (!roleInfo.IsSource) { continue; } DomainRelationshipInfo relInfo = roleInfo.DomainRelationship; if (!IsLinkIncludedInDomainTree(modelElement.Store as DomainModelStore, relInfo.Id)) { continue; } ReadOnlyCollection <ElementLink> links = DomainRoleInfo.GetElementLinks <ElementLink>(modelElement, roleInfo.Id); if (links.Count == 0 && String.IsNullOrEmpty(searchText)) { SearchResult searchResult = new SearchResult(); searchResult.IsSuccessFull = true; searchResult.Source = modelElement; searchResult.Reason = "Role " + roleInfo.PropertyName + " is empty"; results.Add(searchResult); } foreach (ElementLink link in links) { ModelElement m = DomainRoleInfo.GetTargetRolePlayer(link); if (m == null && System.String.IsNullOrEmpty(searchText)) { SearchResult searchResult = new SearchResult(); searchResult.IsSuccessFull = true; searchResult.Source = modelElement; searchResult.Reason = "Role " + roleInfo.PropertyName + " is null"; results.Add(searchResult); } else if (m != null && !System.String.IsNullOrEmpty(searchText)) { if (Contains((m as IDomainModelOwnable).DomainElementFullName, searchText, options)) { SearchResult searchResult = new SearchResult(); searchResult.IsSuccessFull = true; searchResult.Source = modelElement; searchResult.Reason = "Role " + roleInfo.PropertyName + " contains '" + searchText + "' in the Full Name property on referenced element " + (m as IDomainModelOwnable).DomainElementFullName; results.Add(searchResult); } } } } } #endregion #region type if (criteria == SearchCriteriaEnum.Type || criteria == SearchCriteriaEnum.NameAndType || criteria == SearchCriteriaEnum.All) { if (Contains((modelElement as IDomainModelOwnable).DomainElementType, searchText, options) || Contains((modelElement as IDomainModelOwnable).DomainElementTypeDisplayName, searchText, options)) { SearchResult searchResult = new SearchResult(); searchResult.IsSuccessFull = true; searchResult.Source = modelElement; searchResult.Reason = "Type '" + searchText + "' found"; results.Add(searchResult); } } #endregion return(results); }
public override AbstractDomainModel Query(SearchCriteriaEnum searchCriteria) { DomainModel.Models.ProviderRegistration providerRegistration = new DomainModel.Models.ProviderRegistration(); FactoryFacade factory = new FactoryFacade(); try { switch (searchCriteria) { case SearchCriteriaEnum.GET_SPECIALTIES: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(CareHub.UnitOfWork.ProviderRegistrationUOW)); providerRegistration = (DomainModel.Models.ProviderRegistration)unitOfWork.GetAll(searchCriteria); break; case SearchCriteriaEnum.GET_COUNTRIES: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(CareHub.UnitOfWork.ProviderRegistrationUOW)); providerRegistration = (DomainModel.Models.ProviderRegistration)unitOfWork.GetAll(searchCriteria); break; case SearchCriteriaEnum.GET_CITIES: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(CareHub.UnitOfWork.ProviderRegistrationUOW)); providerRegistration = (DomainModel.Models.ProviderRegistration)unitOfWork.GetAll(searchCriteria); break; case SearchCriteriaEnum.GET_LOCALITIES: unitOfWork = factory.UnitOfWorkFactory.CreateUnitOfWork(typeof(CareHub.UnitOfWork.ProviderRegistrationUOW)); providerRegistration = (DomainModel.Models.ProviderRegistration)unitOfWork.GetAll(searchCriteria); break; default: break; } } catch (Exception ex) { switch (searchCriteria) { case SearchCriteriaEnum.GET_SPECIALTIES: providerRegistration.ResponseMessage = ex.Message; break; case SearchCriteriaEnum.GET_COUNTRIES: providerRegistration.ResponseMessage = ex.Message; break; case SearchCriteriaEnum.GET_CITIES: providerRegistration.ResponseMessage = ex.Message; break; case SearchCriteriaEnum.GET_LOCALITIES: providerRegistration.ResponseMessage = ex.Message; break; default: break; } } finally { factory = null; } switch (searchCriteria) { case SearchCriteriaEnum.GET_SPECIALTIES: return(providerRegistration); case SearchCriteriaEnum.GET_COUNTRIES: return(providerRegistration); case SearchCriteriaEnum.GET_CITIES: return(providerRegistration); case SearchCriteriaEnum.GET_LOCALITIES: return(providerRegistration); default: break; } return(null); }