Rename PlaylistCreateDTO,PlaylistReadDTO to Request/Response
This commit is contained in:
@ -9,8 +9,8 @@ import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import com.bivashy.backend.composer.auth.CustomUserDetails;
|
||||
import com.bivashy.backend.composer.dto.playlist.PlaylistCreateDTO;
|
||||
import com.bivashy.backend.composer.dto.playlist.PlaylistReadDTO;
|
||||
import com.bivashy.backend.composer.dto.playlist.PlaylistCreateRequest;
|
||||
import com.bivashy.backend.composer.dto.playlist.PlaylistReadResponse;
|
||||
import com.bivashy.backend.composer.service.PlaylistService;
|
||||
|
||||
@RestController
|
||||
@ -22,13 +22,13 @@ public class PlaylistController {
|
||||
}
|
||||
|
||||
@GetMapping("/playlists")
|
||||
public List<PlaylistReadDTO> playlists(@AuthenticationPrincipal CustomUserDetails user) {
|
||||
public List<PlaylistReadResponse> playlists(@AuthenticationPrincipal CustomUserDetails user) {
|
||||
return service.findPlaylists(user.getId());
|
||||
}
|
||||
|
||||
@PostMapping("/playlist")
|
||||
public PlaylistReadDTO createPlaylist(@AuthenticationPrincipal CustomUserDetails user,
|
||||
@RequestBody PlaylistCreateDTO playlist) {
|
||||
public PlaylistReadResponse createPlaylist(@AuthenticationPrincipal CustomUserDetails user,
|
||||
@RequestBody PlaylistCreateRequest playlist) {
|
||||
return service.createPlaylist(user.getId(), playlist);
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,20 +2,20 @@ package com.bivashy.backend.composer.converter;
|
||||
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import com.bivashy.backend.composer.dto.playlist.PlaylistCreateDTO;
|
||||
import com.bivashy.backend.composer.dto.playlist.PlaylistReadDTO;
|
||||
import com.bivashy.backend.composer.dto.playlist.PlaylistCreateRequest;
|
||||
import com.bivashy.backend.composer.dto.playlist.PlaylistReadResponse;
|
||||
import com.bivashy.backend.composer.model.Playlist;
|
||||
import com.bivashy.backend.composer.model.User;
|
||||
|
||||
@Component
|
||||
public class PlaylistConverter {
|
||||
public PlaylistReadDTO convertToRead(Playlist playlist) {
|
||||
return new PlaylistReadDTO(playlist.getId(), playlist.getOwner().getId(), playlist.getTitle(),
|
||||
public PlaylistReadResponse convertToRead(Playlist playlist) {
|
||||
return new PlaylistReadResponse(playlist.getId(), playlist.getOwner().getId(), playlist.getTitle(),
|
||||
playlist.getCreatedAt(),
|
||||
playlist.getUpdatedAt());
|
||||
}
|
||||
|
||||
public Playlist convertFromCreate(long userId, PlaylistCreateDTO playlist) {
|
||||
public Playlist convertFromCreate(long userId, PlaylistCreateRequest playlist) {
|
||||
return new Playlist(new User(userId), playlist.title());
|
||||
}
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package com.bivashy.backend.composer.dto.playlist;
|
||||
|
||||
public record PlaylistCreateDTO(String title) {
|
||||
public record PlaylistCreateRequest(String title) {
|
||||
}
|
||||
@ -2,13 +2,13 @@ package com.bivashy.backend.composer.dto.playlist;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
public record PlaylistReadDTO(
|
||||
public record PlaylistReadResponse(
|
||||
long id,
|
||||
long ownerId,
|
||||
String title,
|
||||
LocalDateTime createdAt,
|
||||
LocalDateTime updatedAt) {
|
||||
public PlaylistReadDTO withUserId(long userId) {
|
||||
return new PlaylistReadDTO(this.id, userId, this.title, this.createdAt, this.updatedAt);
|
||||
public PlaylistReadResponse withUserId(long userId) {
|
||||
return new PlaylistReadResponse(this.id, userId, this.title, this.createdAt, this.updatedAt);
|
||||
}
|
||||
}
|
||||
@ -5,8 +5,8 @@ import java.util.List;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.bivashy.backend.composer.converter.PlaylistConverter;
|
||||
import com.bivashy.backend.composer.dto.playlist.PlaylistCreateDTO;
|
||||
import com.bivashy.backend.composer.dto.playlist.PlaylistReadDTO;
|
||||
import com.bivashy.backend.composer.dto.playlist.PlaylistCreateRequest;
|
||||
import com.bivashy.backend.composer.dto.playlist.PlaylistReadResponse;
|
||||
import com.bivashy.backend.composer.model.Playlist;
|
||||
import com.bivashy.backend.composer.repository.PlaylistRepository;
|
||||
|
||||
@ -20,12 +20,12 @@ public class PlaylistService {
|
||||
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));
|
||||
return converter.convertToRead(result);
|
||||
}
|
||||
|
||||
public List<PlaylistReadDTO> findPlaylists(long userId) {
|
||||
public List<PlaylistReadResponse> findPlaylists(long userId) {
|
||||
return repository.findAllByOwnerId(userId)
|
||||
.stream()
|
||||
.map(converter::convertToRead)
|
||||
|
||||
@ -52,6 +52,7 @@ public class TrackService {
|
||||
String title = metadata.map(Metadata::title).orElse(fileName);
|
||||
String artist = metadata.map(Metadata::artist).orElse(null);
|
||||
int durationSeconds = metadata.map(Metadata::durationSeconds).map(Float::intValue).orElse(0);
|
||||
// TODO: thumbnail
|
||||
trackMetadataService.createTrackMetadata(
|
||||
track, title, fileName, trackSource.getSourceUrl(), artist, null, durationSeconds);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user