Skip to content
Snippets Groups Projects

Issue1

4 files
+ 116
9
Compare changes
  • Side-by-side
  • Inline
Files
4
@@ -24,7 +24,7 @@ public enum PokemonTypeDao {
private HashMap<String, PokemonType> pokemonTypes = new HashMap<>();
public void delete(String id) {
if(pokemonTypes.containsKey(id)) {
if (pokemonTypes.containsKey(id)) {
pokemonTypes.remove(id);
} else {
throw new NotFoundException("Pokemon type '" + id + "' not found.");
@@ -34,16 +34,17 @@ public enum PokemonTypeDao {
public List<PokemonType> getPokemonTypes(int pageSize, int pageNumber, String sortBy) {
List<PokemonType> list = new ArrayList<>(pokemonTypes.values());
if (sortBy == null || sortBy.isEmpty() || "id".equals(sortBy))
if (sortBy == null || sortBy.isEmpty() || "id".equals(sortBy)) {
list.sort((pt1, pt2) -> Utils.compare(Integer.parseInt(pt1.id), Integer.parseInt(pt2.id)));
else if ("pokedexNumber".equals(sortBy))
} else if ("pokedexNumber".equals(sortBy)) {
list.sort((pt1, pt2) -> Utils.compare(pt1.pokedexNumber, pt2.pokedexNumber));
else if ("lastUpDate".equals(sortBy))
} else if ("lastUpDate".equals(sortBy)) {
list.sort((pt1, pt2) -> Utils.compare(pt1.lastUpDate, pt2.lastUpDate));
else
} else {
throw new NotSupportedException("Sort field not supported");
}
return (List<PokemonType>) Utils.pageSlice(list,pageSize,pageNumber);
return (List<PokemonType>) Utils.pageSlice(list, pageSize, pageNumber);
}
public PokemonType getPokemonType(String id) {
@@ -58,12 +59,12 @@ public enum PokemonTypeDao {
public void load() throws IOException {
ObjectMapper mapper = new ObjectMapper();
File source = existsPokemonTypes() ?
new File(POKEMON_TYPES) :
new File(ORIGINAL_POKEMON_TYPES);
File source =
existsPokemonTypes() ? new File(POKEMON_TYPES) : new File(ORIGINAL_POKEMON_TYPES);
PokemonType[] arr = mapper.readValue(source, PokemonType[].class);
Arrays.stream(arr).forEach(pt -> pokemonTypes.put(pt.id, pt));
System.out.println(arr.length);
}
private boolean existsPokemonTypes() {
Loading