private boolean alreadyExists(String name) { NameEntry entry = nameEntryRepository.findByName(name); if (entry == null) { return false; } return true; }
/** * Used to retrieve the duplicate entries for the given name string * * @param name the name * @return a list of {@link org.oruko.dictionary.model.DuplicateNameEntry} */ public List<DuplicateNameEntry> loadNameDuplicates(String name) { return duplicateEntryRepository.findByName(name); }
/** * Saves {@link org.oruko.dictionary.model.NameEntry} * * @param entry the entry to be saved */ public NameEntry saveName(NameEntry entry) { return nameEntryRepository.save(entry); }
/** * Duplicates a name entry plus its duplicates * @param name the name to delete */ public void deleteNameEntryAndDuplicates(String name) { NameEntry nameEntry = nameEntryRepository.findByName(name); nameEntryRepository.delete(nameEntry); duplicateEntryRepository.delete(new DuplicateNameEntry(nameEntry)); }
private ArrayList<GeoLocation> getGeoLocation(String locations) { final String[] locationArrays = locations.split(","); final ArrayList<GeoLocation> locationList = new ArrayList<>(); for (String aLocation:locationArrays) { locationList.add(geoLocationRepository.findByPlace(aLocation)); } return locationList; }
/** * Deletes multiple name entries and their duplicates * @param names a list of names to delete their entries and their duplicates */ public void batchDeleteNameEntryAndDuplicates(List<String> names) { int i = 0; for (String name: names ) { this.deleteNameEntryAndDuplicates(name); i++; if (i == BATCH_SIZE) { nameEntryRepository.flush(); duplicateEntryRepository.flush(); i = 0; } } }
/** * End point for returning the locations a name entry could be from * * @return the geolocations */ @RequestMapping(value = "/geolocations", method = RequestMethod.GET) public ResponseEntity<List<GeoLocation>> listGeoLocations() { return new ResponseEntity<List<GeoLocation>>(geoLocationRepository.findAll(), HttpStatus.OK); }
/** * Deletes a duplicated entry * * @param duplicateNameEntry the duplicated entry to delete */ public void deleteInDuplicateEntry(DuplicateNameEntry duplicateNameEntry) { duplicateEntryRepository.delete(duplicateNameEntry); }
/** * Used to retrieve all {@link org.oruko.dictionary.model.NameEntry} from the repository. * * @return a list of all {@link org.oruko.dictionary.model.NameEntry} */ public List<NameEntry> loadAllNames() { return nameEntryRepository.findAll(); }
/** * Returns the number of names in the database * * @return number of names */ public Long getNameCount() { return nameEntryRepository.count(); }
@Override public NameEntry getByName(String nameQuery) { return nameEntryRepository.findByNameAndState(nameQuery, State.PUBLISHED); }
@Override public Set<NameEntry> listByAlphabet(String alphabetQuery) { return nameEntryRepository.findByNameStartingWithAndState(alphabetQuery, State.PUBLISHED); }
@Override public Integer getSearchableNames() { return nameEntryRepository.countByState(State.PUBLISHED); }
/** * Returns all the suggested names * @return a {@link ResponseEntity} with all suggested names */ @RequestMapping(method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE) public List<SuggestedName> getAllSuggestedNames() { return suggestedNameRepository.findAll(); }
/** * Used to retrieve {@link NameEntry} of given state from the repository. * @param state the {@link State} of the entry * @return list of {@link NameEntry}. If state is not present, it returns an empty list */ public List<NameEntry> loadAllByState(Optional<State> state) { return state.map(s -> nameEntryRepository.findByState(s)).orElseGet(Collections::emptyList); }
/** * Returns all the feedback for a name, sorted by time submitted * * @return the feedback as a list of {@link NameEntryFeedback} */ public List<NameEntryFeedback> getFeedback(NameEntry entry) { final Sort sort = new Sort(Sort.Direction.DESC, "submittedAt"); return nameEntryFeedbackRepository.findByName(entry.getName(), sort); }
private boolean alreadyExists(String name) { NameEntry entry = nameEntryRepository.findByName(name); if (entry == null) { return false; } return true; } }
@Override public void setAsText(String place) { GeoLocation geolocation = locationRepository.findByPlace(place); this.setValue(geolocation); }
/** * Used to retrieve a {@link org.oruko.dictionary.model.NameEntry} from the repository using its known name * * @param name the name * @return the NameEntry */ public NameEntry loadName(String name) { return nameEntryRepository.findByName(name); }