using System;
using System.Runtime.InteropServices;
using Tizen.Applications;
+using Tizen.Multimedia.MediaController;
internal static partial class Interop
{
- internal static partial class MediaControllerClient
- {
- [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
- internal delegate void ServerUpdatedCallback(string serverName, int serverState, IntPtr userData);
+ internal static partial class MediaControllerClient
+ {
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
+ internal delegate void ServerUpdatedCallback(string serverName, MediaControllerServerState serverState, IntPtr userData);
- [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
- internal delegate void PlaybackUpdatedCallback(string serverName, IntPtr playback, IntPtr userData);
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
+ internal delegate void PlaybackUpdatedCallback(string serverName, IntPtr playback, IntPtr userData);
- [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
- internal delegate void MetadataUpdatedCallback(string serverName, IntPtr metadata, IntPtr userData);
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
+ internal delegate void MetadataUpdatedCallback(string serverName, IntPtr metadata, IntPtr userData);
- [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
- internal delegate void ShuffleModeUpdatedCallback(string serverName, int shuffleMode, IntPtr userData);
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
+ internal delegate void ShuffleModeUpdatedCallback(string serverName, MediaControllerShuffleMode shuffleMode, IntPtr userData);
- [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
- internal delegate void RepeatModeUpdatedCallback(string serverName, int repeatMode, IntPtr userData);
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
+ internal delegate void RepeatModeUpdatedCallback(string serverName, MediaControllerRepeatMode repeatMode, IntPtr userData);
- [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
- internal delegate void CommandReplyRecievedCallback(string serverName, int result, IntPtr bundle, IntPtr userData);
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
+ internal delegate void CommandReplyRecievedCallback(string serverName, int result, IntPtr bundle, IntPtr userData);
- [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
- internal delegate bool SubscribedServerCallback(string serverName, IntPtr userData);
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
+ internal delegate bool SubscribedServerCallback(string serverName, IntPtr userData);
- [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
- internal delegate bool ActivatedServerCallback(string serverName, IntPtr userData);
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
+ internal delegate bool ActivatedServerCallback(string serverName, IntPtr userData);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_create")]
- internal static extern int Create(out IntPtr handle);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_create")]
+ internal static extern MediaControllerError Create(out IntPtr handle);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_destroy")]
- internal static extern int Destroy(IntPtr handle);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_destroy")]
+ internal static extern MediaControllerError Destroy(IntPtr handle);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_set_server_update_cb")]
- internal static extern int SetServerUpdatedCb(IntPtr handle, ServerUpdatedCallback callback, IntPtr userData);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_set_server_update_cb")]
+ internal static extern MediaControllerError SetServerUpdatedCb(IntPtr handle, ServerUpdatedCallback callback, IntPtr userData);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_unset_server_update_cb")]
- internal static extern int UnsetServerUpdatedCb(IntPtr handle);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_unset_server_update_cb")]
+ internal static extern MediaControllerError UnsetServerUpdatedCb(IntPtr handle);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_set_playback_update_cb")]
- internal static extern int SetPlaybackUpdatedCb(IntPtr handle, PlaybackUpdatedCallback callback, IntPtr userData);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_set_playback_update_cb")]
+ internal static extern MediaControllerError SetPlaybackUpdatedCb(IntPtr handle, PlaybackUpdatedCallback callback, IntPtr userData);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_unset_playback_update_cb")]
- internal static extern int UnsetPlaybackUpdatedCb(IntPtr handle);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_unset_playback_update_cb")]
+ internal static extern MediaControllerError UnsetPlaybackUpdatedCb(IntPtr handle);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_set_metadata_update_cb")]
- internal static extern int SetMetadataUpdatedCb(IntPtr handle, MetadataUpdatedCallback callback, IntPtr userData);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_set_metadata_update_cb")]
+ internal static extern MediaControllerError SetMetadataUpdatedCb(IntPtr handle, MetadataUpdatedCallback callback, IntPtr userData);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_unset_metadata_update_cb")]
- internal static extern int UnsetMetadataUpdatedCb(IntPtr handle);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_unset_metadata_update_cb")]
+ internal static extern MediaControllerError UnsetMetadataUpdatedCb(IntPtr handle);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_set_shuffle_mode_update_cb")]
- internal static extern int SetShuffleModeUpdatedCb(IntPtr handle, ShuffleModeUpdatedCallback callback, IntPtr userData);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_set_shuffle_mode_update_cb")]
+ internal static extern MediaControllerError SetShuffleModeUpdatedCb(IntPtr handle, ShuffleModeUpdatedCallback callback, IntPtr userData);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_unset_shuffle_mode_update_cb")]
- internal static extern int UnsetShuffleModeUpdatedCb(IntPtr handle);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_unset_shuffle_mode_update_cb")]
+ internal static extern MediaControllerError UnsetShuffleModeUpdatedCb(IntPtr handle);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_set_repeat_mode_update_cb")]
- internal static extern int SetRepeatModeUpdatedCb(IntPtr handle, RepeatModeUpdatedCallback callback, IntPtr userData);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_set_repeat_mode_update_cb")]
+ internal static extern MediaControllerError SetRepeatModeUpdatedCb(IntPtr handle, RepeatModeUpdatedCallback callback, IntPtr userData);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_unset_repeat_mode_update_cb")]
- internal static extern int UnsetRepeatModeUpdatedCb(IntPtr handle);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_unset_repeat_mode_update_cb")]
+ internal static extern MediaControllerError UnsetRepeatModeUpdatedCb(IntPtr handle);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_subscribe")]
- internal static extern int Subscribe(IntPtr handle, int subscriptionType, string serverName);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_subscribe")]
+ internal static extern MediaControllerError Subscribe(IntPtr handle, MediaControllerSubscriptionType subscriptionType, string serverName);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_unsubscribe")]
- internal static extern int Unsubscribe(IntPtr handle, int subscriptionType, string serverName);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_unsubscribe")]
+ internal static extern MediaControllerError Unsubscribe(IntPtr handle, MediaControllerSubscriptionType subscriptionType, string serverName);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_playback_state")]
- internal static extern int GetPlaybackState(IntPtr playback, out int state);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_playback_state")]
+ internal static extern MediaControllerError GetPlaybackState(IntPtr playback, out MediaControllerPlaybackState state);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_playback_position")]
- internal static extern int GetPlaybackPosition(IntPtr playback, out ulong position);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_playback_position")]
+ internal static extern MediaControllerError GetPlaybackPosition(IntPtr playback, out ulong position);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_destroy_playback")]
- internal static extern int DestroyPlayback(IntPtr playback);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_destroy_playback")]
+ internal static extern MediaControllerError DestroyPlayback(IntPtr playback);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_metadata")]
- internal static extern int GetMetadata(IntPtr metadata, int attribute, out string value);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_metadata")]
+ internal static extern MediaControllerError GetMetadata(IntPtr metadata, MediaControllerAttributes attribute, out string value);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_destroy_metadata")]
- internal static extern int DestroyMetadata(IntPtr metadata);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_destroy_metadata")]
+ internal static extern MediaControllerError DestroyMetadata(IntPtr metadata);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_latest_server_info")]
- internal static extern int GetLatestServer(IntPtr handle, out string serverName, out int serverState);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_latest_server_info")]
+ internal static extern MediaControllerError GetLatestServer(IntPtr handle, out string serverName, out MediaControllerServerState serverState);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_server_playback_info")]
- internal static extern int GetServerPlayback(IntPtr handle, string serverName, out IntPtr playback);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_server_playback_info")]
+ internal static extern MediaControllerError GetServerPlayback(IntPtr handle, string serverName, out IntPtr playback);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_server_metadata")]
- internal static extern int GetServerMetadata(IntPtr handle, string serverName, out IntPtr metadata);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_server_metadata")]
+ internal static extern MediaControllerError GetServerMetadata(IntPtr handle, string serverName, out IntPtr metadata);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_server_shuffle_mode")]
- internal static extern int GetServerShuffleMode(IntPtr handle, string serverName, out int mode);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_server_shuffle_mode")]
+ internal static extern MediaControllerError GetServerShuffleMode(IntPtr handle, string serverName, out MediaControllerShuffleMode mode);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_server_repeat_mode")]
- internal static extern int GetServerRepeatMode(IntPtr handle, string serverName, out int mode);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_get_server_repeat_mode")]
+ internal static extern MediaControllerError GetServerRepeatMode(IntPtr handle, string serverName, out MediaControllerRepeatMode mode);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_send_playback_state_command")]
- internal static extern int SendPlaybackStateCommand(IntPtr handle, string serverName, int state);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_send_playback_state_command")]
+ internal static extern MediaControllerError SendPlaybackStateCommand(IntPtr handle, string serverName, MediaControllerPlaybackState state);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_send_custom_command")]
- internal static extern int SendCustomCommand(IntPtr handle, string serverName, string command, SafeBundleHandle bundle, CommandReplyRecievedCallback callback, IntPtr userData);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_send_custom_command")]
+ internal static extern MediaControllerError SendCustomCommand(IntPtr handle, string serverName, string command, SafeBundleHandle bundle, CommandReplyRecievedCallback callback, IntPtr userData);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_foreach_server_subscribed")]
- internal static extern int ForeachSubscribedServer(IntPtr handle, int subscriptionType, SubscribedServerCallback callback, IntPtr userData);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_foreach_server_subscribed")]
+ internal static extern MediaControllerError ForeachSubscribedServer(IntPtr handle, MediaControllerSubscriptionType subscriptionType, SubscribedServerCallback callback, IntPtr userData);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_client_foreach_server")]
- internal static extern int ForeachActivatedServer(IntPtr handle, ActivatedServerCallback callback, IntPtr userData);
- }
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_client_foreach_server")]
+ internal static extern MediaControllerError ForeachActivatedServer(IntPtr handle, ActivatedServerCallback callback, IntPtr userData);
+ }
- internal static partial class MediaControllerServer
- {
- [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
- internal delegate void PlaybackStateCommandRecievedCallback(string clientName, int state, IntPtr userData);
+ internal static partial class MediaControllerServer
+ {
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
+ internal delegate void PlaybackStateCommandRecievedCallback(string clientName, MediaControllerPlaybackState state, IntPtr userData);
- [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
- internal delegate void CustomCommandRecievedCallback(string clientName, string command, IntPtr bundle, IntPtr userData);
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
+ internal delegate void CustomCommandRecievedCallback(string clientName, string command, IntPtr bundle, IntPtr userData);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_create")]
- internal static extern int Create(out IntPtr handle);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_create")]
+ internal static extern MediaControllerError Create(out IntPtr handle);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_destroy")]
- internal static extern int Destroy(IntPtr handle);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_destroy")]
+ internal static extern MediaControllerError Destroy(IntPtr handle);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_set_playback_state")]
- internal static extern int SetPlaybackState(IntPtr handle, int state);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_set_playback_state")]
+ internal static extern MediaControllerError SetPlaybackState(IntPtr handle, MediaControllerPlaybackState state);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_set_playback_position")]
- internal static extern int SetPlaybackPosition(IntPtr handle, ulong position);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_set_playback_position")]
+ internal static extern MediaControllerError SetPlaybackPosition(IntPtr handle, ulong position);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_update_playback_info")]
- internal static extern int UpdatePlayback(IntPtr handle);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_update_playback_info")]
+ internal static extern MediaControllerError UpdatePlayback(IntPtr handle);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_set_metadata")]
- internal static extern int SetMetadata(IntPtr handle, int attribute, string value);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_set_metadata")]
+ internal static extern MediaControllerError SetMetadata(IntPtr handle, MediaControllerAttributes attribute, string value);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_update_metadata")]
- internal static extern int UpdateMetadata(IntPtr handle);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_update_metadata")]
+ internal static extern MediaControllerError UpdateMetadata(IntPtr handle);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_update_shuffle_mode")]
- internal static extern int UpdateShuffleMode(IntPtr handle, int mode);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_update_shuffle_mode")]
+ internal static extern MediaControllerError UpdateShuffleMode(IntPtr handle, MediaControllerShuffleMode mode);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_update_repeat_mode")]
- internal static extern int UpdateRepeatMode(IntPtr handle, int mode);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_update_repeat_mode")]
+ internal static extern MediaControllerError UpdateRepeatMode(IntPtr handle, MediaControllerRepeatMode mode);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_set_playback_state_command_received_cb")]
- internal static extern int SetPlaybackStateCmdRecvCb(IntPtr handle, PlaybackStateCommandRecievedCallback callback, IntPtr userData);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_set_playback_state_command_received_cb")]
+ internal static extern MediaControllerError SetPlaybackStateCmdRecvCb(IntPtr handle, PlaybackStateCommandRecievedCallback callback, IntPtr userData);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_unset_playback_state_command_received_cb")]
- internal static extern int UnsetPlaybackStateCmdRecvCb(IntPtr handle);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_unset_playback_state_command_received_cb")]
+ internal static extern MediaControllerError UnsetPlaybackStateCmdRecvCb(IntPtr handle);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_set_custom_command_received_cb")]
- internal static extern int SetCustomCmdRecvCb(IntPtr handle, CustomCommandRecievedCallback callback, IntPtr userData);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_set_custom_command_received_cb")]
+ internal static extern MediaControllerError SetCustomCmdRecvCb(IntPtr handle, CustomCommandRecievedCallback callback, IntPtr userData);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_unset_custom_command_received_cb")]
- internal static extern int UnsetCustomCmdRecvCb(IntPtr handle);
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_unset_custom_command_received_cb")]
+ internal static extern MediaControllerError UnsetCustomCmdRecvCb(IntPtr handle);
- [DllImport(Libraries.MediaController, EntryPoint = "mc_server_send_command_reply")]
- internal static extern int SendCommandReply(IntPtr handle, string clientName, int result, SafeBundleHandle bundle);
- }
+ [DllImport(Libraries.MediaController, EntryPoint = "mc_server_send_command_reply")]
+ internal static extern MediaControllerError SendCommandReply(IntPtr handle, string clientName, int result, SafeBundleHandle bundle);
+ }
}
* limitations under the License.
*/
-
using System;
using Tizen.Applications;
using System;
using System.Collections.Generic;
-using System.Runtime.InteropServices;
using System.Threading.Tasks;
using Tizen.Applications;
namespace Tizen.Multimedia.MediaController
-{
-
+{\r
+\r
/// <summary>
/// The MediaControllerClient class provides APIs required for media-controller-client.
/// </summary>
+ /// <privilege>\r
+ /// http://tizen.org/privilege/mediacontroller.client\r
+ /// </privilege>
/// <remarks>
/// The MediaControllerClient APIs provides functions to get media information from server.
/// </remarks>
/// The constructor of MediaControllerClient class.
/// </summary>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
+ /// <exception cref="UnauthorizedAccessException">Thrown when the access is denied for media controller client</exception>
public MediaControllerClient ()
{
- Interop.MediaControllerClient.Create (out _handle);
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.Create(out _handle), "Create client failed");
}
~MediaControllerClient ()
/// <summary>
/// gets latest server information </summary>
+ /// <returns>The name and state of the latest media controller server application: ServerInformation object</returns>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
public ServerInformation GetLatestServer()
{
- MediaControllerError res = MediaControllerError.None;
- string _name;
- int _state;
+ string _name = null;
+ MediaControllerServerState _state = MediaControllerServerState.None;
- res = (MediaControllerError)Interop.MediaControllerClient.GetLatestServer(_handle, out _name, out _state);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Latest server failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Latest server failed");
- }
-
- ServerInformation _serverInfo = new ServerInformation (_name, (MediaControllerServerState)_state);
- return _serverInfo;
+ MediaControllerValidator.ThrowIfError(\r
+ Interop.MediaControllerClient.GetLatestServer(_handle, out _name, out _state), "Get Latest server failed");\r
+\r
+ return new ServerInformation(_name, (MediaControllerServerState)_state);\r
}
/// <summary>
/// gets playback information for specific server </summary>
/// <param name="serverName"> Server Name </param>
+ /// <returns>The playback state and playback position of the specific media controller server application:MediaControllerPlayback object</returns>
/// <exception cref="ArgumentException">Thrown when an invalid argument is used</exception>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
public MediaControllerPlayback GetPlayback(String serverName)
{
- MediaControllerError res = MediaControllerError.None;
IntPtr _playbackHandle = IntPtr.Zero;
- res = (MediaControllerError)Interop.MediaControllerClient.GetServerPlayback(_handle, serverName, out _playbackHandle);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Playback handle failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Playback handle failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetServerPlayback(_handle, serverName, out _playbackHandle), "Get Playback handle failed");
- MediaControllerPlayback _playback = new MediaControllerPlayback (_playbackHandle);
- return _playback;
+ return new MediaControllerPlayback (_playbackHandle);
}
/// <summary>
/// gets metadata information for specific server </summary>
/// <param name="serverName"> Server Name </param>
+ /// <returns>The metadata information of the specific media controller server application:MediaControllerMetadata object</returns>
/// <exception cref="ArgumentException">Thrown when an invalid argument is used</exception>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
public MediaControllerMetadata GetMetadata(String serverName)
{
- MediaControllerError res = MediaControllerError.None;
IntPtr _metadataHandle = IntPtr.Zero;
- res = (MediaControllerError)Interop.MediaControllerClient.GetServerMetadata(_handle, serverName, out _metadataHandle);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Playback handle failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Playback handle failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetServerMetadata(_handle, serverName, out _metadataHandle), "Get Metadata handle failed");
- MediaControllerMetadata _metadata = new MediaControllerMetadata (_metadataHandle);
- return _metadata;
+ return new MediaControllerMetadata (_metadataHandle);
}
/// <summary>
/// gets shuffle mode for specific server </summary>
/// <param name="serverName"> Server Name </param>
+ /// <returns>The shuffle mode of the specific media controller server application:MediaControllerShuffleMode enum</returns>
/// <exception cref="ArgumentException">Thrown when an invalid argument is used</exception>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
public MediaControllerShuffleMode GetShuffleMode(String serverName)
{
- MediaControllerError res = MediaControllerError.None;
- int _shuffleMode;
- res = (MediaControllerError)Interop.MediaControllerClient.GetServerShuffleMode(_handle, serverName, out _shuffleMode);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Playback handle failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Playback handle failed");
- }
+ MediaControllerShuffleMode _shuffleMode = MediaControllerShuffleMode.Off;
- return (MediaControllerShuffleMode)_shuffleMode;
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetServerShuffleMode(_handle, serverName, out _shuffleMode), "Get ShuffleMode failed");
+
+ return _shuffleMode;
}
/// <summary>
/// gets repeat mode for specific server </summary>
/// <param name="serverName"> Server Name </param>
+ /// <returns>The repeat mode of the specific media controller server application:MediaControllerRepeatMode enum</returns>
/// <exception cref="ArgumentException">Thrown when an invalid argument is used</exception>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
public MediaControllerRepeatMode GetRepeatMode(String serverName)
{
- MediaControllerError res = MediaControllerError.None;
- int _repeatMode;
- res = (MediaControllerError)Interop.MediaControllerClient.GetServerRepeatMode(_handle, serverName, out _repeatMode);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Playback handle failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Playback handle failed");
- }
+ MediaControllerRepeatMode _repeatMode = MediaControllerRepeatMode.Off;
- return (MediaControllerRepeatMode)_repeatMode;
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetServerRepeatMode(_handle, serverName, out _repeatMode), "Get RepeatMode failed");
+
+ return _repeatMode;
}
/// <summary>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
public void SendPlaybackStateCommand(string serverName, MediaControllerPlaybackState state)
{
- MediaControllerError res = MediaControllerError.None;
- res = (MediaControllerError)Interop.MediaControllerClient.SendPlaybackStateCommand(_handle, serverName, (int)state);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Send playback state command failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Send playback state command failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.SendPlaybackStateCommand(_handle, serverName, state), "Send playback state command failed");
}
/// <summary>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
public void SendCustomCommand(string serverName, string command, Bundle bundle)
{
- MediaControllerError res = MediaControllerError.None;
- res = (MediaControllerError)Interop.MediaControllerClient.SendCustomCommand(_handle, serverName, command, bundle.SafeBundleHandle, _customcommandReplyCallback, IntPtr.Zero);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Send custom command failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Send custom command failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.SendCustomCommand(_handle, serverName, command, bundle.SafeBundleHandle, _customcommandReplyCallback, IntPtr.Zero),
+ "Send custom command failed");
}
/// <summary>
/// <exception cref="ArgumentException">Thrown when an invalid argument is used</exception>
public void Subscribe(MediaControllerSubscriptionType type, string serverName)
{
- MediaControllerError res = MediaControllerError.None;
- res = (MediaControllerError)Interop.MediaControllerClient.Subscribe(_handle, (int)type, serverName);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Subscribe failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Subscribe failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.Subscribe(_handle, type, serverName), "Subscribe failed");
}
/// <summary>
/// <exception cref="ArgumentException">Thrown when an invalid argument is used</exception>
public void Unsubscribe(MediaControllerSubscriptionType type, string serverName)
{
- MediaControllerError res = MediaControllerError.None;
- res = (MediaControllerError)Interop.MediaControllerClient.Unsubscribe(_handle, (int)type, serverName);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Unsubscribe failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Unsubscribe failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.Unsubscribe(_handle, type, serverName), "Unsubscribe failed");
}
/// <summary>
/// gets activated server list </summary>
+ /// <returns>The list of activated media controller server applications: IEnumerable of string</returns>
public Task<IEnumerable<string>> GetActivatedServerList()
{
var task = new TaskCompletionSource<IEnumerable<string>>();
/// <summary>
/// gets subscribed server list </summary>
/// <param name="subscriptionType"> Subscription Type </param>
+ /// <returns>The list of subscribed media controller server applications: IEnumerable of string</returns>
/// <exception cref="ArgumentException">Thrown when an invalid argument is used</exception>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
public Task<IEnumerable<string>> GetSubscribedServerList(MediaControllerSubscriptionType subscriptionType)
{
var task = new TaskCompletionSource<IEnumerable<string>>();
- List<string> collectionList = ForEachSubscribedServer(_handle, (int)subscriptionType);
+ List<string> collectionList = ForEachSubscribedServer(_handle, subscriptionType);
task.TrySetResult((IEnumerable<string>)collectionList);
return task.Task;
private void RegisterServerUpdatedEvent()
{
- _serverUpdatedCallback = (string serverName, int serverState, IntPtr userData) =>
+ _serverUpdatedCallback = (string serverName, MediaControllerServerState serverState, IntPtr userData) =>
{
- ServerUpdatedEventArgs eventArgs = new ServerUpdatedEventArgs(serverName, (MediaControllerServerState)serverState);
+ ServerUpdatedEventArgs eventArgs = new ServerUpdatedEventArgs(serverName, serverState);
_serverUpdated?.Invoke(this, eventArgs);
};
Interop.MediaControllerClient.SetServerUpdatedCb(_handle, _serverUpdatedCallback, IntPtr.Zero);
private void RegisterShuffleModeUpdatedEvent()
{
- MediaControllerError res = MediaControllerError.None;
- _shufflemodeUpdatedCallback = (string serverName, int shuffleMode, IntPtr userData) =>
+ _shufflemodeUpdatedCallback = (string serverName, MediaControllerShuffleMode shuffleMode, IntPtr userData) =>
{
- ShuffleModeUpdatedEventArgs eventArgs = new ShuffleModeUpdatedEventArgs(serverName, (MediaControllerShuffleMode)shuffleMode);
+ ShuffleModeUpdatedEventArgs eventArgs = new ShuffleModeUpdatedEventArgs(serverName, shuffleMode);
_shufflemodeUpdated?.Invoke(this, eventArgs);
};
- res = (MediaControllerError)Interop.MediaControllerClient.SetShuffleModeUpdatedCb(_handle, _shufflemodeUpdatedCallback, IntPtr.Zero);
- if (res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set ShuffleModeUpdated callback failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set ShuffleModeUpdated callback failed");
- }
+
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.SetShuffleModeUpdatedCb(_handle, _shufflemodeUpdatedCallback, IntPtr.Zero),
+ "Set ShuffleModeUpdated callback failed");
}
private void UnregisterShuffleModeUpdatedEvent()
private void RegisterRepeatModeUpdatedEvent()
{
- MediaControllerError res = MediaControllerError.None;
- _repeatmodeUpdatedCallback = (string serverName, int repeatMode, IntPtr userData) =>
+ _repeatmodeUpdatedCallback = (string serverName, MediaControllerRepeatMode repeatMode, IntPtr userData) =>
{
- RepeatModeUpdatedEventArgs eventArgs = new RepeatModeUpdatedEventArgs(serverName, (MediaControllerRepeatMode)repeatMode);
+ RepeatModeUpdatedEventArgs eventArgs = new RepeatModeUpdatedEventArgs(serverName, repeatMode);
_repeatmodeUpdated?.Invoke(this, eventArgs);
};
- res = (MediaControllerError)Interop.MediaControllerClient.SetRepeatModeUpdatedCb(_handle, _repeatmodeUpdatedCallback, IntPtr.Zero);
- if (res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set RepeatModeUpdated callback failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set RepeatModeUpdated callback failed");
- }
+
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.SetRepeatModeUpdatedCb(_handle, _repeatmodeUpdatedCallback, IntPtr.Zero),
+ "Set RepeatModeUpdated callback failed");
}
private void UnregisterRepeatModeUpdatedEvent()
Interop.MediaControllerClient.UnsetRepeatModeUpdatedCb(_handle);
}
- private static List<string> ForEachSubscribedServer(IntPtr handle, int subscriptionType)
+ private static List<string> ForEachSubscribedServer(IntPtr handle, MediaControllerSubscriptionType subscriptionType)
{
- MediaControllerError res = MediaControllerError.None;
List<string> subscribedServerCollections = new List<string>();
Interop.MediaControllerClient.SubscribedServerCallback serverCallback = (string serverName, IntPtr userData) =>
subscribedServerCollections.Add (serverName);
return true;
};
- res = (MediaControllerError)Interop.MediaControllerClient.ForeachSubscribedServer (handle, subscriptionType, serverCallback, IntPtr.Zero);
- if (res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Foreach Subscribed server failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Foreach Subscribed server failed");
- }
+
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.ForeachSubscribedServer(handle, subscriptionType, serverCallback, IntPtr.Zero),
+ "Foreach Subscribed server failed");
+
return subscribedServerCollections;
}
private static List<string> ForEachActivatedServer(IntPtr handle)
{
- MediaControllerError res = MediaControllerError.None;
List<string> activatedServerCollections = new List<string>();
Interop.MediaControllerClient.ActivatedServerCallback serverCallback = (string serverName, IntPtr userData) =>
{
- activatedServerCollections.Add (serverName);
+ activatedServerCollections.Add(serverName);\r
return true;
};
- res = (MediaControllerError)Interop.MediaControllerClient.ForeachActivatedServer (handle, serverCallback, IntPtr.Zero);
- if (res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Foreach Activated server failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Foreach Activated server failed");
- }
- return activatedServerCollections;
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.ForeachActivatedServer(handle, serverCallback, IntPtr.Zero),
+ "Foreach Activated server failed");
+ return activatedServerCollections;
+ }
}
}
*/
-using System;
-
namespace Tizen.Multimedia.MediaController
{
/// <summary>
* limitations under the License.
*/
-
using System;
+using System.IO;
using Tizen.Internals.Errors;
namespace Tizen.Multimedia.MediaController
NoSpaceOnDevice = ErrorCode.FileNoSpaceOnDevice,
PermissionDenied = ErrorCode.PermissionDenied,
};
- internal static class MediaControllerErrorFactory
+
+ internal static class MediaControllerValidator
{
- internal static void ThrowException(MediaControllerError errorCode, string errorMessage = null, string paramName = null)
+ internal static void ThrowIfError(MediaControllerError error, string errorMessage)
{
- MediaControllerError err = errorCode;
- if(string.IsNullOrEmpty(errorMessage))
- {
- errorMessage = err.ToString();
- }
- switch(errorCode)
+ switch (error)
{
- case MediaControllerError.InvalidParameter:
- throw new ArgumentException(errorMessage, paramName);
+ case MediaControllerError.InvalidParameter:
+ throw new ArgumentException(errorMessage);
+
+ case MediaControllerError.OutOfMemory:
+ throw new OutOfMemoryException(errorMessage);
+
+ case MediaControllerError.InvalidOperation:
+ throw new InvalidOperationException(errorMessage);
- case MediaControllerError.OutOfMemory:
- case MediaControllerError.NoSpaceOnDevice:
- throw new OutOfMemoryException(errorMessage);
+ case MediaControllerError.NoSpaceOnDevice:
+ throw new IOException(errorMessage);
- case MediaControllerError.InvalidOperation:
- case MediaControllerError.PermissionDenied:
- throw new InvalidOperationException(errorMessage);
+ case MediaControllerError.PermissionDenied:
+ throw new UnauthorizedAccessException(errorMessage);
}
}
}
/// </summary>
public MediaControllerMetadata()
{
+ // Do nothing
}
- internal MediaControllerMetadata(IntPtr _metadataHandle) {
- MediaControllerError res = MediaControllerError.None;
+ internal MediaControllerMetadata(IntPtr _handle) {
string _title;
string _artist;
string _album;
string _track_number;
string _picture;
- res = (MediaControllerError)Interop.MediaControllerClient.GetMetadata(_metadataHandle, (int)MediaControllerAttributes.Title, out _title);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Metadata failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Metadata failed");
- }
-
- res = (MediaControllerError)Interop.MediaControllerClient.GetMetadata(_metadataHandle, (int)MediaControllerAttributes.Artist, out _artist);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Metadata failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Metadata failed");
- }
-
- res = (MediaControllerError)Interop.MediaControllerClient.GetMetadata(_metadataHandle, (int)MediaControllerAttributes.Album, out _album);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Metadata failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Metadata failed");
- }
-
- res = (MediaControllerError)Interop.MediaControllerClient.GetMetadata(_metadataHandle, (int)MediaControllerAttributes.Author, out _author);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Metadata failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Metadata failed");
- }
-
- res = (MediaControllerError)Interop.MediaControllerClient.GetMetadata(_metadataHandle, (int)MediaControllerAttributes.Genre, out _genre);
- if (res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Metadata failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Metadata failed");
- }
-
- res = (MediaControllerError)Interop.MediaControllerClient.GetMetadata(_metadataHandle, (int)MediaControllerAttributes.Duration, out _duration);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Metadata failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Metadata failed");
- }
-
- res = (MediaControllerError)Interop.MediaControllerClient.GetMetadata(_metadataHandle, (int)MediaControllerAttributes.Date, out _date);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Metadata failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Metadata failed");
- }
-
- res = (MediaControllerError)Interop.MediaControllerClient.GetMetadata(_metadataHandle, (int)MediaControllerAttributes.Copyright, out _copyright);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Metadata failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Metadata failed");
- }
-
- res = (MediaControllerError)Interop.MediaControllerClient.GetMetadata(_metadataHandle, (int)MediaControllerAttributes.Description, out _description);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Metadata failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Metadata failed");
- }
-
- res = (MediaControllerError)Interop.MediaControllerClient.GetMetadata(_metadataHandle, (int)MediaControllerAttributes.TrackNumber, out _track_number);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Metadata failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Metadata failed");
- }
-
- res = (MediaControllerError)Interop.MediaControllerClient.GetMetadata(_metadataHandle, (int)MediaControllerAttributes.Picture, out _picture);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Metadata failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Metadata failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetMetadata(_handle, MediaControllerAttributes.Title, out _title),
+ "Get Title failed");
+
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetMetadata(_handle, MediaControllerAttributes.Artist, out _artist),
+ "Get Artist failed");
+
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetMetadata(_handle, MediaControllerAttributes.Album, out _album),
+ "Get Album failed");
+
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetMetadata(_handle, MediaControllerAttributes.Author, out _author),
+ "Get Author failed");
+
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetMetadata(_handle, MediaControllerAttributes.Genre, out _genre),
+ "Get Genre failed");
+
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetMetadata(_handle, MediaControllerAttributes.Duration, out _duration),
+ "Get Duration failed");
+
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetMetadata(_handle, MediaControllerAttributes.Date, out _date),
+ "Get Date failed");
+
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetMetadata(_handle, MediaControllerAttributes.Copyright, out _copyright),
+ "Get Copyright failed");
+
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetMetadata(_handle, MediaControllerAttributes.Description, out _description),
+ "Get Description failed");
+
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetMetadata(_handle, MediaControllerAttributes.TrackNumber, out _track_number),
+ "Get TrackNumber failed");
+
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetMetadata(_handle, MediaControllerAttributes.Picture, out _picture),
+ "Get Picture failed");
+
Title = _title;
Artist = _artist;
Album = _album;
Position = position;
}
- internal MediaControllerPlayback(IntPtr _playbackHandle) {
- MediaControllerError res = MediaControllerError.None;
- int state = 0;
+ internal MediaControllerPlayback(IntPtr _handle) {
+ MediaControllerPlaybackState state = MediaControllerPlaybackState.None;
ulong position = 0L;
- res = (MediaControllerError)Interop.MediaControllerClient.GetPlaybackState(_playbackHandle, out state);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Playback state failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Playback state failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetPlaybackState(_handle, out state), "Get Playback state failed");
- res = (MediaControllerError)Interop.MediaControllerClient.GetPlaybackPosition(_playbackHandle, out position);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Get Playback position failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Get Playback position failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerClient.GetPlaybackPosition(_handle, out position), "Get Playback position failed");
- State = (MediaControllerPlaybackState)state;
+ State = state;
Position = position;
}
* limitations under the License.
*/
-
using System;
-using System.Runtime.InteropServices;
using Tizen.Applications;
namespace Tizen.Multimedia.MediaController
/// <summary>
/// The MediaControllerServer class provides APIs required for media-controller-server.
/// </summary>
+ /// <privilege>
+ /// http://tizen.org/privilege/mediacontroller.server
+ /// </privilege>
/// <remarks>
/// The MediaControllerServer APIs provides functions to update media information.
/// </remarks>
/// The constructor of MediaControllerServer class.
/// </summary>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
+ /// <exception cref="UnauthorizedAccessException">Thrown when the access is denied for media controller client</exception>
public MediaControllerServer ()
{
- MediaControllerError res = MediaControllerError.None;
- res = (MediaControllerError)Interop.MediaControllerServer.Create (out _handle);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Create server failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Create server failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.Create(out _handle), "Create server failed");
}
~MediaControllerServer ()
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
public void UpdatePlayback(MediaControllerPlayback playback)
{
- MediaControllerError res = MediaControllerError.None;
-
if (playback == null)
{
- MediaControllerErrorFactory.ThrowException(MediaControllerError.InvalidParameter, "playback");
+ throw new ArgumentNullException("playback is null");
}
- res = (MediaControllerError)Interop.MediaControllerServer.SetPlaybackState(_handle, (int)playback.State);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set Playback state failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set Playback state failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SetPlaybackState(_handle, playback.State), "Set Playback state failed");
- res = (MediaControllerError)Interop.MediaControllerServer.SetPlaybackPosition(_handle, playback.Position);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set Playback position failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set Playback position failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SetPlaybackPosition(_handle, playback.Position), "Set Playback position failed");
- res = (MediaControllerError)Interop.MediaControllerServer.UpdatePlayback(_handle);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Update Playback failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Update Playback failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.UpdatePlayback(_handle), "Update Playback failed");
}
/// <summary>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
public void UpdateMetadata(MediaControllerMetadata metadata)
{
- MediaControllerError res = MediaControllerError.None;
-
if (metadata == null)
{
- MediaControllerErrorFactory.ThrowException(MediaControllerError.InvalidParameter, "metadata");
+ throw new ArgumentNullException("metadata is null");
}
- res = (MediaControllerError)Interop.MediaControllerServer.SetMetadata(_handle, (int)MediaControllerAttributes.Title, metadata.Title);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set Title failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set Title failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SetMetadata(_handle, MediaControllerAttributes.Title, metadata.Title), "Set Title failed");
- res = (MediaControllerError)Interop.MediaControllerServer.SetMetadata(_handle, (int)MediaControllerAttributes.Artist, metadata.Artist);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set Title failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set Title failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SetMetadata(_handle, MediaControllerAttributes.Artist, metadata.Artist), "Set Artist failed");
- res = (MediaControllerError)Interop.MediaControllerServer.SetMetadata(_handle, (int)MediaControllerAttributes.Album, metadata.Album);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set Title failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set Title failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SetMetadata(_handle, MediaControllerAttributes.Album, metadata.Album), "Set Album failed");
- res = (MediaControllerError)Interop.MediaControllerServer.SetMetadata(_handle, (int)MediaControllerAttributes.Author, metadata.Author);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set Title failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set Title failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SetMetadata(_handle, MediaControllerAttributes.Author, metadata.Author), "Set Author failed");
- res = (MediaControllerError)Interop.MediaControllerServer.SetMetadata(_handle, (int)MediaControllerAttributes.Genre, metadata.Genre);
- if (res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set Title failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set Title failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SetMetadata(_handle, MediaControllerAttributes.Genre, metadata.Genre), "Set Genre failed");
- res = (MediaControllerError)Interop.MediaControllerServer.SetMetadata(_handle, (int)MediaControllerAttributes.Duration, metadata.Duration);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set Title failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set Title failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SetMetadata(_handle, MediaControllerAttributes.Duration, metadata.Duration), "Set Duration failed");
- res = (MediaControllerError)Interop.MediaControllerServer.SetMetadata(_handle, (int)MediaControllerAttributes.Date, metadata.Date);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set Title failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set Title failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SetMetadata(_handle, MediaControllerAttributes.Date, metadata.Date), "Set Date failed");
- res = (MediaControllerError)Interop.MediaControllerServer.SetMetadata(_handle, (int)MediaControllerAttributes.Copyright, metadata.Copyright);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set Title failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set Title failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SetMetadata(_handle, MediaControllerAttributes.Copyright, metadata.Copyright), "Set Copyright failed");
- res = (MediaControllerError)Interop.MediaControllerServer.SetMetadata(_handle, (int)MediaControllerAttributes.Description, metadata.Description);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set Title failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set Title failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SetMetadata(_handle, MediaControllerAttributes.Description, metadata.Description), "Set Description failed");
- res = (MediaControllerError)Interop.MediaControllerServer.SetMetadata(_handle, (int)MediaControllerAttributes.TrackNumber, metadata.TrackNumber);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set Title failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set Title failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SetMetadata(_handle, MediaControllerAttributes.TrackNumber, metadata.TrackNumber), "Set TrackNumber failed");
- res = (MediaControllerError)Interop.MediaControllerServer.SetMetadata(_handle, (int)MediaControllerAttributes.Picture, metadata.Picture);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Set Title failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Set Title failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SetMetadata(_handle, MediaControllerAttributes.Picture, metadata.Picture), "Set Picture failed");
- res = (MediaControllerError)Interop.MediaControllerServer.UpdateMetadata(_handle);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Update Metadata failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Update Metadata failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.UpdateMetadata(_handle), "UpdateMetadata Metadata failed");
}
/// <summary>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
public void UpdateShuffleMode(MediaControllerShuffleMode mode)
{
- MediaControllerError res = MediaControllerError.None;
- res = (MediaControllerError)Interop.MediaControllerServer.UpdateShuffleMode(_handle, (int)mode);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Update Shuffle Mode failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Update Shuffle Mode failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.UpdateShuffleMode(_handle, mode), "Update Shuffle Mode failed");
}
/// <summary>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
public void UpdateRepeatMode(MediaControllerRepeatMode mode)
{
- MediaControllerError res = MediaControllerError.None;
- res = (MediaControllerError)Interop.MediaControllerServer.UpdateRepeatMode(_handle, (int)mode);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Update Repeat Mode failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Update Repeat Mode failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.UpdateRepeatMode(_handle, mode), "Update Repeat Mode failed");
}
/// <summary>
/// <exception cref="InvalidOperationException">Thrown when the operation is invalid for the current state</exception>
public void SendCustomCommandReply(string clientName, int result, Bundle bundle)
{
- MediaControllerError res = MediaControllerError.None;
- res = (MediaControllerError)Interop.MediaControllerServer.SendCommandReply (_handle, clientName, result, bundle.SafeBundleHandle);
- if(res != MediaControllerError.None)
- {
- Log.Error(MediaControllerLog.LogTag, "Send reply for command failed" + res);
- MediaControllerErrorFactory.ThrowException(res, "Send reply for command failed");
- }
+ MediaControllerValidator.ThrowIfError(
+ Interop.MediaControllerServer.SendCommandReply(_handle, clientName, result, bundle.SafeBundleHandle), "Send reply for command failed");
}
private void RegisterPlaybackCmdRecvEvent()
{
- _playbackCommandCallback = (string clientName, int state, IntPtr userData) =>
+ _playbackCommandCallback = (string clientName, MediaControllerPlaybackState state, IntPtr userData) =>
{
- PlaybackStateCommandEventArgs eventArgs = new PlaybackStateCommandEventArgs(clientName, (MediaControllerPlaybackState)state);
+ PlaybackStateCommandEventArgs eventArgs = new PlaybackStateCommandEventArgs(clientName, state);
_playbackCommand?.Invoke(this, eventArgs);
};
Interop.MediaControllerServer.SetPlaybackStateCmdRecvCb(_handle, _playbackCommandCallback, IntPtr.Zero);
* limitations under the License.
*/
-
using System;
namespace Tizen.Multimedia.MediaController
* limitations under the License.
*/
-
using System;
namespace Tizen.Multimedia.MediaController
* limitations under the License.
*/
-
using System;
namespace Tizen.Multimedia.MediaController
* limitations under the License.
*/
-
using System;
namespace Tizen.Multimedia.MediaController
* limitations under the License.
*/
-
-
using System;
namespace Tizen.Multimedia.MediaController
* limitations under the License.
*/
-
using System;
namespace Tizen.Multimedia.MediaController