Skip to content

Commit 0dbb4f3

Browse files
Added new resources to the actual client
1 parent 66a1755 commit 0dbb4f3

2 files changed

Lines changed: 26 additions & 6 deletions

File tree

README.md

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,8 @@ Then use the client to view and modify the user's devices - the following types
5555
* playback
5656
* playbackSession
5757
* playerVolume
58+
* playlist
59+
* settings
5860

5961
For example, to set all 'groups' (aka rooms) to use crossfade when music is playing, you could run the following:
6062

@@ -68,9 +70,3 @@ for (final SonosGroup group : groups.getGroups())
6870
client.playback().setPlayModes("authToken", group.getId(), playMode);
6971
}
7072
```
71-
72-
## Todo
73-
74-
* Continue to add detailed Javadoc throughout the resources
75-
* Add unit testing throughout
76-
* Complete manual testing of all available endpoints

src/main/java/engineer/nightowl/sonos/api/SonosApiClient.java

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ public class SonosApiClient
2424
private final PlaybackResource playbackResource;
2525
private final PlaybackSessionResource playbackSessionResource;
2626
private final PlayerVolumeResource playerVolumeResource;
27+
private final PlaylistResource playlistResource;
28+
private final SettingsResource settingsResource;
2729

2830
// Internal classes
2931
private final Logger logger = LoggerFactory.getLogger(getClass());
@@ -61,6 +63,8 @@ public SonosApiClient(final SonosApiConfiguration configuration)
6163
playbackResource = new PlaybackResource(this);
6264
playbackSessionResource = new PlaybackSessionResource(this);
6365
playerVolumeResource = new PlayerVolumeResource(this);
66+
playlistResource = new PlaylistResource(this);
67+
settingsResource = new SettingsResource(this);
6468
}
6569

6670
/**
@@ -256,4 +260,24 @@ public PlayerVolumeResource playerVolume()
256260
{
257261
return playerVolumeResource;
258262
}
263+
264+
/**
265+
* Manage playlists.
266+
*
267+
* @return the PlaylistResource
268+
*/
269+
public PlaylistResource playlist()
270+
{
271+
return playlistResource;
272+
}
273+
274+
/**
275+
* Manage player settings.
276+
*
277+
* @return the SettingsResource
278+
*/
279+
public SettingsResource settings()
280+
{
281+
return settingsResource;
282+
}
259283
}

0 commit comments

Comments
 (0)