Package org.localify.artist
Interface ArtistService
- All Known Implementing Classes:
ArtistServiceImpl
public interface ArtistService
Service interface for managing artists.
This interface defines the business logic for artist-related operations.
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionvoidapproveArtistCityContribution(UUID artistId, UUID cityId, UUID actingUserId) Approves a city contribution for an artist.voiddeleteById(UUID artistId, UUID actingUserId) Deletes an artist by ID.voiddenyArtistCityContribution(UUID artistId, UUID cityId, UUID actingUserId) Denies a city contribution for an artist.fetchExtendedArtistInfo(UUID artistId, UUID actingUserId) Fetches extended information for an artist.getApproveableArtistCityContributions(PageOptions pageOptions) Gets the list of artist city contributions that can be approved.Gets the cities associated with an artist.getEvents(UUID artistId, PageOptions pageOptions, UUID actingUserId) Gets the events associated with an artist.getFestivals(UUID artistId) Gets the festivals associated with an artist.getPopularArtists(int minPopularity, int maxPopularity, int amount) Gets a list of popular artists within a given popularity range.getPopularArtistsForGenres(List<UUID> genres) Gets the popular artists for a list of genres.default List<GenreResponse>getTopGenres(UUID artistId) Gets the top genres for an artist with a default limit.getTopGenres(UUID artistId, org.springframework.data.domain.Pageable pageable) Gets the top genres for an artist.patchById(UUID artistId, ArtistPatchRequest request, UUID actingUserId) Patches an artist by ID.voidsuggestArtistCity(UUID artistId, UUID cityId, UUID actingUserId) Suggests a city for an artist.
-
Field Details
-
DEFAULT_TOP_GENRES_LIMIT
static final int DEFAULT_TOP_GENRES_LIMIT- See Also:
-
-
Method Details
-
fetchExtendedArtistInfo
Fetches extended information for an artist.- Parameters:
artistId- the ID of the artist to fetchactingUserId- the ID of the user performing the action- Returns:
- the extended artist information
-
patchById
Patches an artist by ID.- Parameters:
artistId- the ID of the artist to patchrequest- the request body containing the fields to patchactingUserId- the ID of the user performing the action- Returns:
- the patched artist's basic information
-
deleteById
Deletes an artist by ID.- Parameters:
artistId- the ID of the artist to deleteactingUserId- the ID of the user performing the action
-
getTopGenres
Gets the top genres for an artist.- Parameters:
artistId- the ID of the artistpageable- the pagination information- Returns:
- a list of the artist's top genres
-
getTopGenres
Gets the top genres for an artist with a default limit.- Parameters:
artistId- the ID of the artist- Returns:
- a list of the artist's top genres
-
getCities
Gets the cities associated with an artist.- Parameters:
artistId- the ID of the artist- Returns:
- a list of cities associated with the artist
-
getFestivals
Gets the festivals associated with an artist.- Parameters:
artistId- the ID of the artist- Returns:
- a list of festivals associated with the artist
-
getEvents
Gets the events associated with an artist.- Parameters:
artistId- the ID of the artistpageOptions- the pagination optionsactingUserId- the ID of the user performing the action- Returns:
- a list of events associated with the artist
-
getPopularArtistsForGenres
Gets the popular artists for a list of genres.- Parameters:
genres- a list of genre IDs- Returns:
- a list of popular artists for the specified genres
-
getPopularArtists
Gets a list of popular artists within a given popularity range.- Parameters:
minPopularity- the minimum popularitymaxPopularity- the maximum popularityamount- the number of artists to return- Returns:
- a list of popular artists
-
suggestArtistCity
Suggests a city for an artist.- Parameters:
artistId- the ID of the artistcityId- the ID of the cityactingUserId- the ID of the user performing the action
-
approveArtistCityContribution
Approves a city contribution for an artist.- Parameters:
artistId- the ID of the artistcityId- the ID of the cityactingUserId- the ID of the user performing the action
-
denyArtistCityContribution
Denies a city contribution for an artist.- Parameters:
artistId- the ID of the artistcityId- the ID of the cityactingUserId- the ID of the user performing the action
-
getApproveableArtistCityContributions
Gets the list of artist city contributions that can be approved.- Parameters:
pageOptions- the pagination options- Returns:
- a list of approveable artist cities
-