Compare commits
8 Commits
80ee003fc9
...
c62c5a20b3
| Author | SHA1 | Date |
|---|---|---|
|
|
c62c5a20b3 | |
|
|
2ee94c8331 | |
|
|
be24b68923 | |
|
|
19ddf262df | |
|
|
b2571de6ad | |
|
|
b759f0f770 | |
|
|
e994f4ef70 | |
|
|
1bbbc4f2db |
|
|
@ -3,7 +3,10 @@ package com.mediamanager.model;
|
|||
import jakarta.persistence.*;
|
||||
|
||||
@Entity
|
||||
@Table(name = "trackhasartist")
|
||||
@Table(
|
||||
name = "trackhasartist",
|
||||
uniqueConstraints = @UniqueConstraint(columnNames = {"fk_track_id", "fk_artist_id"})
|
||||
)
|
||||
public class TrackHasArtist {
|
||||
|
||||
@Id
|
||||
|
|
|
|||
|
|
@ -3,7 +3,10 @@ package com.mediamanager.model;
|
|||
import jakarta.persistence.*;
|
||||
|
||||
@Entity
|
||||
@Table(name = "trackhascomposer")
|
||||
@Table(
|
||||
name = "trackhascomposer",
|
||||
uniqueConstraints = @UniqueConstraint(columnNames = {"fk_track_id", "fk_composer_id"})
|
||||
)
|
||||
public class TrackHasComposer {
|
||||
|
||||
@Id
|
||||
|
|
|
|||
|
|
@ -3,7 +3,8 @@ package com.mediamanager.model;
|
|||
import jakarta.persistence.*;
|
||||
|
||||
@Entity
|
||||
@Table(name = "trackhasgenre")
|
||||
@Table(name = "trackhasgenre",
|
||||
uniqueConstraints = @UniqueConstraint(columnNames = {"fk_track_id", "fk_genre_id"}))
|
||||
public class TrackHasGenre {
|
||||
|
||||
@Id
|
||||
|
|
|
|||
|
|
@ -59,4 +59,4 @@ public class DeleteTrackHasArtistHandler implements ActionHandler {
|
|||
.setPayload(deleteResponse.toByteString());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -59,4 +59,4 @@ public class DeleteTrackHasComposerHandler implements ActionHandler {
|
|||
.setPayload(deleteResponse.toByteString());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -59,4 +59,4 @@ public class DeleteTrackHasGenreHandler implements ActionHandler {
|
|||
.setPayload(deleteResponse.toByteString());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,6 +32,10 @@ public class GetTrackHasGenreByIdHandler implements ActionHandler {
|
|||
TrackHasGenreMessages.GetTrackHasGenreByIdRequest.parseFrom(requestPayload);
|
||||
int id = getByIdRequest.getId();
|
||||
|
||||
if (id <= 0) {
|
||||
throw new IllegalArgumentException("ID must be greater than 0");
|
||||
}
|
||||
|
||||
Optional<TrackHasGenre> trackHasGenreOpt = trackHasGenreService.getTrackHasGenreById(id);
|
||||
|
||||
if (trackHasGenreOpt.isEmpty()){
|
||||
|
|
@ -45,7 +49,13 @@ public class GetTrackHasGenreByIdHandler implements ActionHandler {
|
|||
.setTrackhasgenre(trackHasGenreProto)
|
||||
.build();
|
||||
return TransportProtocol.Response.newBuilder()
|
||||
.setStatusCode(200)
|
||||
.setPayload(getByIdResponse.toByteString());
|
||||
} catch (IllegalArgumentException e) {
|
||||
logger.error("Validation error", e);
|
||||
return TransportProtocol.Response.newBuilder()
|
||||
.setStatusCode(400)
|
||||
.setPayload(ByteString.copyFromUtf8("Validation error: " + e.getMessage()));
|
||||
} catch (Exception e) {
|
||||
logger.error("Error getting track has genre by ID", e);
|
||||
return TransportProtocol.Response.newBuilder()
|
||||
|
|
|
|||
Loading…
Reference in New Issue