getPlaylist method
Get database playlist from the server.
Throws DaapImproperlyConfiguredException in case of calling without
supplied sessionId
before connect call.
Implementation
Future<DaapObject> getPlaylist(int databaseId, int playlistId,
{int? sessionId,
List<String> metaCodes = playlistQueryDefaultMetaCodes}) async {
var url = _baseUrl;
if (sessionId != null) {
url = url.replace(
path: Interpolator(playlistUrlPath)({
"databaseId": databaseId.toString(),
"playlistId": playlistId.toString()
}),
queryParameters: {
"session-id": sessionId.toString(),
"meta": getRequestMeta(metaCodes),
});
} else {
if (sessionInfo != null) {
return await getPlaylist(databaseId, playlistId,
sessionId: sessionInfo!.getAtom(dmapCodeDmapSessionId),
metaCodes: metaCodes);
} else {
throw DaapImproperlyConfiguredException(
// ignore: lines_longer_than_80_chars
"Can't get 'sessionId' from 'sessionInfo'. First, try to connect to the server.");
}
}
return DaapObject(await request(url));
}