Skip to content

Commit 469d7a3

Browse files
committed
PlayerHandler methods
1 parent 74ce09e commit 469d7a3

2 files changed

Lines changed: 20 additions & 4 deletions

File tree

api/src/main/java/xyz/gianlu/librespot/api/Main.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ public static void main(String[] args) throws IOException, GeneralSecurityExcept
2121
.create();
2222

2323
ApiServer server = new ApiServer(24879);
24-
server.registerHandler(new PlayerHandler());
24+
server.registerHandler(new PlayerHandler(session));
2525
server.registerHandler(new MetadataHandler(session));
2626
server.registerHandler(new MercuryHandler(session));
2727
}

api/src/main/java/xyz/gianlu/librespot/api/PlayerHandler.java

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,34 @@
44
import org.jetbrains.annotations.NotNull;
55
import xyz.gianlu.librespot.api.server.AbsApiHandler;
66
import xyz.gianlu.librespot.api.server.ApiServer;
7+
import xyz.gianlu.librespot.core.Session;
8+
import xyz.gianlu.librespot.player.Player;
79

810
/**
911
* @author Gianlu
1012
*/
1113
public class PlayerHandler extends AbsApiHandler {
12-
public PlayerHandler() {
14+
private final Player player;
15+
16+
public PlayerHandler(@NotNull Session session) {
1317
super("player");
18+
this.player = session.player();
1419
}
1520

1621
@Override
17-
protected @NotNull JsonElement handleRequest(ApiServer.@NotNull Request request) {
18-
return string("OK");
22+
protected @NotNull JsonElement handleRequest(ApiServer.@NotNull Request request) throws ApiServer.PredefinedJsonRpcException {
23+
switch (request.getSuffix()) {
24+
case "play":
25+
case "stop":
26+
case "pause":
27+
case "next":
28+
case "prev":
29+
case "playPause":
30+
return string("OK");
31+
default:
32+
throw ApiServer.PredefinedJsonRpcException.from(request, ApiServer.PredefinedJsonRpcError.METHOD_NOT_FOUND);
33+
34+
}
1935
}
2036

2137
@Override

0 commit comments

Comments
 (0)