var _shuffleMode = false;
var _repeatMode = false;
var _contentType = MediaControllerContentType.UNDECIDED;
- var _repeatState = MediaControllerRepeatState.REPEAT_OFF;
+ var _repeatState = MediaControllerRepeatState.REPEAT_ALL;
var _ageRating = MediaControllerContentAgeRating.ALL;
var _metadata = new MediaControllerMetadata();
var _index = null;
get_error_message(ret)));
}
- // repeat mode
- mc_repeat_mode_e repeat;
- ret = mc_client_get_server_repeat_mode(handle_, server_name.c_str(), &repeat);
+ // repeat mode and state
+ mc_repeat_mode_e repeat_mode;
+ ret = mc_client_get_server_repeat_mode(handle_, server_name.c_str(), &repeat_mode);
if (MEDIA_CONTROLLER_ERROR_NONE != ret) {
return LogAndCreateResult(
ErrorCode::UNKNOWN_ERR, "Error getting repeat mode",
("mc_client_get_server_repeat_mode() error: %d, message: %s", ret, get_error_message(ret)));
}
+ std::string repeat_state;
+ result = types::MediaControllerRepeatModeEnum.getName(repeat_mode, &repeat_state);
+ if (!result) {
+ LoggerE("MediaControllerRepeatModeEnum.getName() failed, error: %s", result.message().c_str());
+ return PlatformResult(ErrorCode::UNKNOWN_ERR, "Error getting name of repeat state");
+ }
// metadata
picojson::value metadata = picojson::value(picojson::object());
(*playback_info)[kAgeRating] = picojson::value(rating);
(*playback_info)[kContentType] = picojson::value(contentType);
(*playback_info)[kShuffleMode] = picojson::value(shuffle == MC_SHUFFLE_MODE_ON);
- (*playback_info)[kRepeatMode] = picojson::value(repeat == MC_REPEAT_MODE_ON);
+ (*playback_info)[kRepeatMode] = picojson::value(repeat_mode == MC_REPEAT_MODE_ON);
+ (*playback_info)[kRepeatState] = picojson::value(repeat_state);
(*playback_info)[kMetadata] = metadata;
(*playback_info)[kIndex] = picojson::value(std::string(index ? index : ""));
(*playback_info)[kPlaylistName] =
return;
}
- mc_playback_states_e state_e;
- result = types::MediaControllerPlaybackStateEnum.getValue(action_str, &state_e);
- if (!result) {
- LoggerE("MediaControllerPlaybackStateEnum.getValue() failed, error: %s",
- result.message().c_str());
- return;
- }
-
- if (server->playback_state_ == state_e) {
- LoggerD("The media playback state did not change, skipping");
- return;
- }
-
picojson::value data = picojson::value(picojson::object());
picojson::object& data_o = data.get<picojson::object>();
MediaControllerServer* server = static_cast<MediaControllerServer*>(user_data);
- if (server->position_ == position) {
- LoggerD("The position did not change, skipping");
- return;
- }
-
picojson::value data = picojson::value(picojson::object());
picojson::object& data_o = data.get<picojson::object>();
MediaControllerServer* server = static_cast<MediaControllerServer*>(user_data);
- if (server->shuffle_mode_ == mode) {
- LoggerD("The shuffle mode did not change, skipping");
- return;
- }
-
picojson::value data = picojson::value(picojson::object());
picojson::object& data_o = data.get<picojson::object>();
MediaControllerServer* server = static_cast<MediaControllerServer*>(user_data);
- if (server->repeat_mode_ == mode) {
- LoggerD("The repeat mode did not change, skipping");
- return;
- }
-
picojson::value data = picojson::value(picojson::object());
picojson::object& data_o = data.get<picojson::object>();
data_o[kClientName] = picojson::value(client_name);
const char* kPosition = "position";
const char* kRating = "rating";
const char* kRepeatMode = "repeatMode";
+const char* kRepeatState = "repeatState";
const char* kReply = "reply";
const char* kReplyListener = "replyListener";
const char* kRequest = "request";
extern const char* kPosition;
extern const char* kRating;
extern const char* kRepeatMode;
+extern const char* kRepeatState;
extern const char* kReply;
extern const char* kReplyListener;
extern const char* kRequest;