Rename PlaylistCreateDTO,PlaylistReadDTO to Request/Response

This commit is contained in:
2025-11-16 18:02:02 +05:00
parent 902c223e69
commit 04d99760e2
6 changed files with 19 additions and 18 deletions

View File

@ -9,8 +9,8 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import com.bivashy.backend.composer.auth.CustomUserDetails; import com.bivashy.backend.composer.auth.CustomUserDetails;
import com.bivashy.backend.composer.dto.playlist.PlaylistCreateDTO; import com.bivashy.backend.composer.dto.playlist.PlaylistCreateRequest;
import com.bivashy.backend.composer.dto.playlist.PlaylistReadDTO; import com.bivashy.backend.composer.dto.playlist.PlaylistReadResponse;
import com.bivashy.backend.composer.service.PlaylistService; import com.bivashy.backend.composer.service.PlaylistService;
@RestController @RestController
@ -22,13 +22,13 @@ public class PlaylistController {
} }
@GetMapping("/playlists") @GetMapping("/playlists")
public List<PlaylistReadDTO> playlists(@AuthenticationPrincipal CustomUserDetails user) { public List<PlaylistReadResponse> playlists(@AuthenticationPrincipal CustomUserDetails user) {
return service.findPlaylists(user.getId()); return service.findPlaylists(user.getId());
} }
@PostMapping("/playlist") @PostMapping("/playlist")
public PlaylistReadDTO createPlaylist(@AuthenticationPrincipal CustomUserDetails user, public PlaylistReadResponse createPlaylist(@AuthenticationPrincipal CustomUserDetails user,
@RequestBody PlaylistCreateDTO playlist) { @RequestBody PlaylistCreateRequest playlist) {
return service.createPlaylist(user.getId(), playlist); return service.createPlaylist(user.getId(), playlist);
} }
} }

View File

@ -2,20 +2,20 @@ package com.bivashy.backend.composer.converter;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import com.bivashy.backend.composer.dto.playlist.PlaylistCreateDTO; import com.bivashy.backend.composer.dto.playlist.PlaylistCreateRequest;
import com.bivashy.backend.composer.dto.playlist.PlaylistReadDTO; import com.bivashy.backend.composer.dto.playlist.PlaylistReadResponse;
import com.bivashy.backend.composer.model.Playlist; import com.bivashy.backend.composer.model.Playlist;
import com.bivashy.backend.composer.model.User; import com.bivashy.backend.composer.model.User;
@Component @Component
public class PlaylistConverter { public class PlaylistConverter {
public PlaylistReadDTO convertToRead(Playlist playlist) { public PlaylistReadResponse convertToRead(Playlist playlist) {
return new PlaylistReadDTO(playlist.getId(), playlist.getOwner().getId(), playlist.getTitle(), return new PlaylistReadResponse(playlist.getId(), playlist.getOwner().getId(), playlist.getTitle(),
playlist.getCreatedAt(), playlist.getCreatedAt(),
playlist.getUpdatedAt()); playlist.getUpdatedAt());
} }
public Playlist convertFromCreate(long userId, PlaylistCreateDTO playlist) { public Playlist convertFromCreate(long userId, PlaylistCreateRequest playlist) {
return new Playlist(new User(userId), playlist.title()); return new Playlist(new User(userId), playlist.title());
} }

View File

@ -1,4 +1,4 @@
package com.bivashy.backend.composer.dto.playlist; package com.bivashy.backend.composer.dto.playlist;
public record PlaylistCreateDTO(String title) { public record PlaylistCreateRequest(String title) {
} }

View File

@ -2,13 +2,13 @@ package com.bivashy.backend.composer.dto.playlist;
import java.time.LocalDateTime; import java.time.LocalDateTime;
public record PlaylistReadDTO( public record PlaylistReadResponse(
long id, long id,
long ownerId, long ownerId,
String title, String title,
LocalDateTime createdAt, LocalDateTime createdAt,
LocalDateTime updatedAt) { LocalDateTime updatedAt) {
public PlaylistReadDTO withUserId(long userId) { public PlaylistReadResponse withUserId(long userId) {
return new PlaylistReadDTO(this.id, userId, this.title, this.createdAt, this.updatedAt); return new PlaylistReadResponse(this.id, userId, this.title, this.createdAt, this.updatedAt);
} }
} }

View File

@ -5,8 +5,8 @@ import java.util.List;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.bivashy.backend.composer.converter.PlaylistConverter; import com.bivashy.backend.composer.converter.PlaylistConverter;
import com.bivashy.backend.composer.dto.playlist.PlaylistCreateDTO; import com.bivashy.backend.composer.dto.playlist.PlaylistCreateRequest;
import com.bivashy.backend.composer.dto.playlist.PlaylistReadDTO; import com.bivashy.backend.composer.dto.playlist.PlaylistReadResponse;
import com.bivashy.backend.composer.model.Playlist; import com.bivashy.backend.composer.model.Playlist;
import com.bivashy.backend.composer.repository.PlaylistRepository; import com.bivashy.backend.composer.repository.PlaylistRepository;
@ -20,12 +20,12 @@ public class PlaylistService {
this.converter = converter; this.converter = converter;
} }
public PlaylistReadDTO createPlaylist(long userId, PlaylistCreateDTO playlist) { public PlaylistReadResponse createPlaylist(long userId, PlaylistCreateRequest playlist) {
Playlist result = repository.save(converter.convertFromCreate(userId, playlist)); Playlist result = repository.save(converter.convertFromCreate(userId, playlist));
return converter.convertToRead(result); return converter.convertToRead(result);
} }
public List<PlaylistReadDTO> findPlaylists(long userId) { public List<PlaylistReadResponse> findPlaylists(long userId) {
return repository.findAllByOwnerId(userId) return repository.findAllByOwnerId(userId)
.stream() .stream()
.map(converter::convertToRead) .map(converter::convertToRead)

View File

@ -52,6 +52,7 @@ public class TrackService {
String title = metadata.map(Metadata::title).orElse(fileName); String title = metadata.map(Metadata::title).orElse(fileName);
String artist = metadata.map(Metadata::artist).orElse(null); String artist = metadata.map(Metadata::artist).orElse(null);
int durationSeconds = metadata.map(Metadata::durationSeconds).map(Float::intValue).orElse(0); int durationSeconds = metadata.map(Metadata::durationSeconds).map(Float::intValue).orElse(0);
// TODO: thumbnail
trackMetadataService.createTrackMetadata( trackMetadataService.createTrackMetadata(
track, title, fileName, trackSource.getSourceUrl(), artist, null, durationSeconds); track, title, fileName, trackSource.getSourceUrl(), artist, null, durationSeconds);