From b132924f6b8c37aa96fa5b54a8a260536221054c Mon Sep 17 00:00:00 2001 From: bivashy Date: Sun, 22 Mar 2026 01:31:47 +0500 Subject: [PATCH] Remove redundant DTO suffix --- .../title/mapper/KodikResponseMapper.java | 14 +++++------ .../{DetailEntryDTO.java => DetailEntry.java} | 2 +- .../title/model/IdentifierPointer.java | 8 ++++--- .../{SearchEntryDTO.java => SearchEntry.java} | 4 ++-- ...chResponseDTO.java => SearchResponse.java} | 2 +- .../title/resource/DetailResource.java | 4 ++-- .../title/resource/SearchResource.java | 8 +++---- .../service/IdentifierPointerService.java | 10 ++++++++ .../service/KodikResponseConvertService.java | 24 +++++++++---------- .../service/service/PosterUrlNormalizer.java | 0 10 files changed, 44 insertions(+), 32 deletions(-) rename src/main/java/com/backend/unifier/title/model/{DetailEntryDTO.java => DetailEntry.java} (57%) rename src/main/java/com/backend/unifier/title/model/{SearchEntryDTO.java => SearchEntry.java} (79%) rename src/main/java/com/backend/unifier/title/model/{SearchResponseDTO.java => SearchResponse.java} (56%) create mode 100644 src/main/java/com/backend/unifier/title/service/service/PosterUrlNormalizer.java diff --git a/src/main/java/com/backend/unifier/title/mapper/KodikResponseMapper.java b/src/main/java/com/backend/unifier/title/mapper/KodikResponseMapper.java index e10bd3e..0e2f4b4 100644 --- a/src/main/java/com/backend/unifier/title/mapper/KodikResponseMapper.java +++ b/src/main/java/com/backend/unifier/title/mapper/KodikResponseMapper.java @@ -11,22 +11,22 @@ import org.mapstruct.Named; import com.backend.metadata.kodik.api.model.KodikResponse; import com.backend.metadata.kodik.api.model.MaterialData; -import com.backend.unifier.title.model.SearchEntryDTO; -import com.backend.unifier.title.model.SearchResponseDTO; +import com.backend.unifier.title.model.SearchEntry; +import com.backend.unifier.title.model.SearchResponse; @Mapper public interface KodikResponseMapper { - default SearchResponseDTO toSearchResponseDTO(KodikResponse kodikResponse) { + default SearchResponse toSearchResponse(KodikResponse kodikResponse) { if (kodikResponse == null || kodikResponse.results == null) { - return new SearchResponseDTO(List.of()); + return new SearchResponse(List.of()); } - List entries = kodikResponse.results.stream() + List entries = kodikResponse.results.stream() .map(this::toSearchEntryDTO) .filter(Objects::nonNull) .collect(Collectors.toList()); - return new SearchResponseDTO(entries); + return new SearchResponse(entries); } @Mapping(target = "id", source = "result", qualifiedByName = "extractID") @@ -39,7 +39,7 @@ public interface KodikResponseMapper { @Mapping(target = "studio", source = "materialData", qualifiedByName = "extractStudio") @Mapping(target = "genres", source = "materialData", qualifiedByName = "extractGenres") @Mapping(target = "durationMin", source = "materialData", qualifiedByName = "extractDurationMin") - SearchEntryDTO toSearchEntryDTO(KodikResponse.Result result); + SearchEntry toSearchEntryDTO(KodikResponse.Result result); @Named("extractPosterUrls") default List extractPosterUrls(MaterialData materialData) { diff --git a/src/main/java/com/backend/unifier/title/model/DetailEntryDTO.java b/src/main/java/com/backend/unifier/title/model/DetailEntry.java similarity index 57% rename from src/main/java/com/backend/unifier/title/model/DetailEntryDTO.java rename to src/main/java/com/backend/unifier/title/model/DetailEntry.java index 169272b..334225c 100644 --- a/src/main/java/com/backend/unifier/title/model/DetailEntryDTO.java +++ b/src/main/java/com/backend/unifier/title/model/DetailEntry.java @@ -1,4 +1,4 @@ package com.backend.unifier.title.model; -public record DetailEntryDTO() { +public record DetailEntry() { } diff --git a/src/main/java/com/backend/unifier/title/model/IdentifierPointer.java b/src/main/java/com/backend/unifier/title/model/IdentifierPointer.java index 181f27b..72aabc0 100644 --- a/src/main/java/com/backend/unifier/title/model/IdentifierPointer.java +++ b/src/main/java/com/backend/unifier/title/model/IdentifierPointer.java @@ -1,10 +1,12 @@ package com.backend.unifier.title.model; +import java.util.UUID; + public class IdentifierPointer { - private String key; + private UUID key; private ContentIdentifier identifier; - public IdentifierPointer(String key, ContentIdentifier identifier) { + public IdentifierPointer(UUID key, ContentIdentifier identifier) { this.key = key; this.identifier = identifier; } @@ -12,7 +14,7 @@ public class IdentifierPointer { IdentifierPointer() { } - public String getKey() { + public UUID getKey() { return key; } diff --git a/src/main/java/com/backend/unifier/title/model/SearchEntryDTO.java b/src/main/java/com/backend/unifier/title/model/SearchEntry.java similarity index 79% rename from src/main/java/com/backend/unifier/title/model/SearchEntryDTO.java rename to src/main/java/com/backend/unifier/title/model/SearchEntry.java index 06477de..ec96c2f 100644 --- a/src/main/java/com/backend/unifier/title/model/SearchEntryDTO.java +++ b/src/main/java/com/backend/unifier/title/model/SearchEntry.java @@ -5,7 +5,7 @@ import java.util.List; import io.soabase.recordbuilder.core.RecordBuilder; @RecordBuilder -public record SearchEntryDTO( +public record SearchEntry( String id, List posterURLs, String title, @@ -15,5 +15,5 @@ public record SearchEntryDTO( String type, String studio, List genres, - int durationMin) implements SearchEntryDTOBuilder.With { + int durationMin) implements SearchEntryBuilder.With { } diff --git a/src/main/java/com/backend/unifier/title/model/SearchResponseDTO.java b/src/main/java/com/backend/unifier/title/model/SearchResponse.java similarity index 56% rename from src/main/java/com/backend/unifier/title/model/SearchResponseDTO.java rename to src/main/java/com/backend/unifier/title/model/SearchResponse.java index ef77ac9..abd4aac 100644 --- a/src/main/java/com/backend/unifier/title/model/SearchResponseDTO.java +++ b/src/main/java/com/backend/unifier/title/model/SearchResponse.java @@ -5,6 +5,6 @@ import java.util.List; import io.soabase.recordbuilder.core.RecordBuilder; @RecordBuilder -public record SearchResponseDTO(List result) implements SearchResponseDTOBuilder.With { +public record SearchResponse(List result) implements SearchResponseBuilder.With { } diff --git a/src/main/java/com/backend/unifier/title/resource/DetailResource.java b/src/main/java/com/backend/unifier/title/resource/DetailResource.java index e9a9537..32b6348 100644 --- a/src/main/java/com/backend/unifier/title/resource/DetailResource.java +++ b/src/main/java/com/backend/unifier/title/resource/DetailResource.java @@ -1,6 +1,6 @@ package com.backend.unifier.title.resource; -import com.backend.unifier.title.model.DetailEntryDTO; +import com.backend.unifier.title.model.DetailEntry; import jakarta.ws.rs.GET; import jakarta.ws.rs.Path; @@ -9,7 +9,7 @@ import jakarta.ws.rs.Path; public class DetailResource { @GET @Path("/detail") - public DetailEntryDTO detail(String id) { + public DetailEntry detail(String id) { return null; } } diff --git a/src/main/java/com/backend/unifier/title/resource/SearchResource.java b/src/main/java/com/backend/unifier/title/resource/SearchResource.java index 0fa0311..d85acd0 100644 --- a/src/main/java/com/backend/unifier/title/resource/SearchResource.java +++ b/src/main/java/com/backend/unifier/title/resource/SearchResource.java @@ -3,7 +3,7 @@ package com.backend.unifier.title.resource; import org.eclipse.microprofile.rest.client.inject.RestClient; import com.backend.unifier.title.api.KodikSearchService; -import com.backend.unifier.title.model.SearchResponseDTO; +import com.backend.unifier.title.model.SearchResponse; import com.backend.unifier.title.service.KodikResponseConvertService; import io.smallrye.mutiny.Uni; @@ -24,7 +24,7 @@ public class SearchResource { @GET @Path("/search") - public Uni search(@QueryParam("title") String title) { + public Uni search(@QueryParam("title") String title) { return kodikSearchService.searchAsync(title) .onItem().ifNotNull() .transformToUni(response -> kodikConvertService.convertAsync(response)); @@ -32,14 +32,14 @@ public class SearchResource { @GET @Path("/search-fast") - public SearchResponseDTO searchFast(@QueryParam("title") String title) { + public SearchResponse searchFast(@QueryParam("title") String title) { var result = kodikSearchService.search(title); return kodikConvertService.convert(result); } @GET @Path("/list") - public SearchResponseDTO list() { + public SearchResponse list() { var result = kodikSearchService.list(); return kodikConvertService.convert(result); } diff --git a/src/main/java/com/backend/unifier/title/service/IdentifierPointerService.java b/src/main/java/com/backend/unifier/title/service/IdentifierPointerService.java index aa8193f..e1c0a16 100644 --- a/src/main/java/com/backend/unifier/title/service/IdentifierPointerService.java +++ b/src/main/java/com/backend/unifier/title/service/IdentifierPointerService.java @@ -1,8 +1,18 @@ package com.backend.unifier.title.service; +import com.backend.unifier.title.model.ContentIdentifier; + +import io.quarkus.redis.datasource.RedisDataSource; +import io.quarkus.redis.datasource.value.ValueCommands; import jakarta.enterprise.context.ApplicationScoped; @ApplicationScoped public class IdentifierPointerService { + private ValueCommands countCommands; + + public IdentifierPointerService(RedisDataSource ds) { + countCommands = ds.value(ContentIdentifier.class); + + } } diff --git a/src/main/java/com/backend/unifier/title/service/KodikResponseConvertService.java b/src/main/java/com/backend/unifier/title/service/KodikResponseConvertService.java index f58c5e3..44fd8bd 100644 --- a/src/main/java/com/backend/unifier/title/service/KodikResponseConvertService.java +++ b/src/main/java/com/backend/unifier/title/service/KodikResponseConvertService.java @@ -6,8 +6,8 @@ import org.mapstruct.factory.Mappers; import com.backend.metadata.kodik.api.model.KodikResponse; import com.backend.unifier.title.mapper.KodikResponseMapper; -import com.backend.unifier.title.model.SearchEntryDTO; -import com.backend.unifier.title.model.SearchResponseDTO; +import com.backend.unifier.title.model.SearchEntry; +import com.backend.unifier.title.model.SearchResponse; import io.smallrye.mutiny.Uni; import jakarta.enterprise.context.ApplicationScoped; @@ -24,40 +24,40 @@ public class KodikResponseConvertService { this.posterUrlNormalizer = posterUrlNormalizer; } - public SearchResponseDTO convert(KodikResponse response) { + public SearchResponse convert(KodikResponse response) { return convertSimple(response); } @SuppressWarnings("unchecked") - public Uni convertAsync(KodikResponse response) { + public Uni convertAsync(KodikResponse response) { if (response == null || response.results == null) { - return Uni.createFrom().item(new SearchResponseDTO(List.of())); + return Uni.createFrom().item(new SearchResponse(List.of())); } - List> entries = convertSimple(response).result() + List> entries = convertSimple(response).result() .stream() .map(this::resolveEntryPosters) .toList(); if (entries.isEmpty()) { - return Uni.createFrom().item(new SearchResponseDTO(List.of())); + return Uni.createFrom().item(new SearchResponse(List.of())); } return Uni.combine().all().unis(entries) - .with(list -> new SearchResponseDTO((List) list)); + .with(list -> new SearchResponse((List) list)); } - private Uni resolveEntryPosters(SearchEntryDTO entry) { + private Uni resolveEntryPosters(SearchEntry entry) { return posterUrlValidator.resolvePosters(entry.posterURLs()) .map(entry::withPosterURLs) .onFailure().recoverWithItem(entry); } - private SearchResponseDTO convertSimple(KodikResponse response) { - return normalizeUrls(responseMapper.toSearchResponseDTO(response)); + private SearchResponse convertSimple(KodikResponse response) { + return normalizeUrls(responseMapper.toSearchResponse(response)); } - private SearchResponseDTO normalizeUrls(SearchResponseDTO response) { + private SearchResponse normalizeUrls(SearchResponse response) { var normalizedResults = response.result().stream() .map(r -> r.withPosterURLs(r.posterURLs().stream() .map(posterUrlNormalizer::normalize) diff --git a/src/main/java/com/backend/unifier/title/service/service/PosterUrlNormalizer.java b/src/main/java/com/backend/unifier/title/service/service/PosterUrlNormalizer.java new file mode 100644 index 0000000..e69de29