Skip to content

Commit 31c6682

Browse files
committed
fixed the method which selects a random personage
1 parent e594f47 commit 31c6682

File tree

6 files changed

+9
-8
lines changed

6 files changed

+9
-8
lines changed

src/main/java/mate/academy/rickandmorty/controller/PersonageController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
import org.springframework.web.bind.annotation.ResponseStatus;
1414
import org.springframework.web.bind.annotation.RestController;
1515

16-
@Tag(name = "Book management", description = "Endpoints for managing books.")
16+
@Tag(name = "Personage management", description = "Endpoints for managing personages.")
1717
@RestController
1818
@RequestMapping("personages")
1919
@RequiredArgsConstructor

src/main/java/mate/academy/rickandmorty/dto/external/ResponseDto.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,9 @@
44
import java.util.List;
55
import lombok.Data;
66
import mate.academy.rickandmorty.dto.internal.CreatePersonageRequestDto;
7-
import org.springframework.stereotype.Component;
87

98
@Data
109
@JsonIgnoreProperties(ignoreUnknown = true)
11-
@Component
1210
public class ResponseDto {
1311
private List<CreatePersonageRequestDto> results;
1412
private InfoDto info;

src/main/java/mate/academy/rickandmorty/model/Personage.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
@Entity
1515
@Table(name = "personages")
16-
@SQLDelete(sql = "UPDATE characters SET is_deleted = true WHERE id = ?")
16+
@SQLDelete(sql = "UPDATE personages SET is_deleted = true WHERE id = ?")
1717
@SQLRestriction(value = "is_deleted = false")
1818
@Getter
1919
@Setter

src/main/java/mate/academy/rickandmorty/service/DataFetcher.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
@Service
1515
@RequiredArgsConstructor
1616
public class DataFetcher {
17-
protected static int numberOfPersonages;
1817
private final PersonageRepository personageRepository;
1918
private final PersonageMapper personageMapper;
2019
private final PersonageClient personageClient;
@@ -35,7 +34,7 @@ private List<CreatePersonageRequestDto> fetchAllPersonages() {
3534
allPersonages.addAll(responseDto.getResults());
3635
nextPageUrl = responseDto.getInfo().next();
3736
}
38-
numberOfPersonages = responseDto.getInfo().count();
37+
3938
return allPersonages;
4039
}
4140

src/main/java/mate/academy/rickandmorty/service/PersonageClient.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public ResponseDto getPersonages(String url) {
3030

3131
return mapper.readValue(response.body(), ResponseDto.class);
3232
} catch (IOException | InterruptedException e) {
33-
throw new RuntimeException("Failed to get data.", e);
33+
throw new RuntimeException("An unexpected error occurred while getting data: " + e.getMessage(), e);
3434
}
3535
}
3636
}

src/main/java/mate/academy/rickandmorty/service/PersonageServiceImpl.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,11 @@ public List<PersonageDto> searchPersonage(String name, Pageable pageable) {
3939
}
4040

4141
private long randomLongGenerator() {
42-
Supplier<Long> generator = () -> new Random().nextLong(DataFetcher.numberOfPersonages);
42+
Supplier<Long> generator = () -> new Random().nextLong(countRowsInTable());
4343
return generator.get();
4444
}
45+
46+
private long countRowsInTable() {
47+
return personageRepository.count();
48+
}
4549
}

0 commit comments

Comments
 (0)