Release 4.0.0-preview1-00295 accepted/tizen/4.0/unified/20171012.191607 submit/tizen_4.0/20171012.080809 tizen_4.0.IoT.p1_release
authorDotnetBuild <dotnetbuild.tizen@gmail.com>
Thu, 12 Oct 2017 08:08:07 +0000 (17:08 +0900)
committerDotnetBuild <dotnetbuild.tizen@gmail.com>
Thu, 12 Oct 2017 08:08:07 +0000 (17:08 +0900)
55 files changed:
packaging/csapi-tizenfx.spec
src/Tizen.Applications.WidgetApplication/Tizen.Applications/WidgetBase.cs
src/Tizen.Applications.WidgetControl/Tizen.Applications/WidgetControl.cs
src/Tizen.Content.MediaContent/Interop/Interop.ImageInfo.cs
src/Tizen.Content.MediaContent/Interop/Interop.MediaInfo.cs
src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/Columns.cs
src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/ImageInfo.cs
src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/MediaDatabase.cs
src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/MediaInfoColumnKey.cs
src/Tizen.Content.MediaContent/Tizen.Content.MediaContent/MediaInfoCommand.cs
src/Tizen.Multimedia.AudioIO/AudioIO/AudioCapture.cs
src/Tizen.Multimedia.AudioIO/AudioIO/AudioPlayback.cs
src/Tizen.Multimedia.Camera/Camera/Camera.cs
src/Tizen.Multimedia.MediaCodec/MediaCodec/MediaCodec.cs
src/Tizen.Multimedia.Metadata/MetadataEditor/MetadataEditor.cs [changed mode: 0755->0644]
src/Tizen.Multimedia.Metadata/MetadataExtractor/MetadataExtractor.cs [changed mode: 0755->0644]
src/Tizen.Multimedia.Radio/Radio/Radio.cs
src/Tizen.Multimedia.Remoting/ScreenMirroring/ScreenMirroring.cs [changed mode: 0755->0644]
src/Tizen.Multimedia.Vision/MediaVision/EngineConfiguration.cs [changed mode: 0755->0644]
src/Tizen.Multimedia.Vision/MediaVision/FaceRecognitionModel.cs [changed mode: 0755->0644]
src/Tizen.Multimedia.Vision/MediaVision/FaceTrackingModel.cs [changed mode: 0755->0644]
src/Tizen.Multimedia.Vision/MediaVision/ImageObject.cs [changed mode: 0755->0644]
src/Tizen.Multimedia.Vision/MediaVision/ImageTrackingModel.cs [changed mode: 0755->0644]
src/Tizen.Multimedia.Vision/MediaVision/MediaVisionSource.cs [changed mode: 0755->0644]
src/Tizen.Multimedia.Vision/MediaVision/SurveillanceEngine.cs [changed mode: 0755->0644]
src/Tizen.Multimedia/MediaTool/MediaPacket.cs
src/Tizen.Network.IoTConnectivity/Tizen.Network.IoTConnectivity/Attributes.cs
src/Tizen.Network.IoTConnectivity/Tizen.Network.IoTConnectivity/IoTConnectivityClientManager.cs
src/Tizen.Network.IoTConnectivity/Tizen.Network.IoTConnectivity/IoTConnectivityServerManager.cs
src/Tizen.Network.IoTConnectivity/Tizen.Network.IoTConnectivity/LiteResource.cs
src/Tizen.Network.IoTConnectivity/Tizen.Network.IoTConnectivity/Representation.cs
src/Tizen.Network.IoTConnectivity/Tizen.Network.IoTConnectivity/Resource.cs
src/Tizen.Network.IoTConnectivity/Tizen.Network.IoTConnectivity/ResourceInterfaces.cs
src/Tizen.Network.IoTConnectivity/Tizen.Network.IoTConnectivity/ResourceOptions.cs
src/Tizen.Network.IoTConnectivity/Tizen.Network.IoTConnectivity/ResourceQuery.cs
src/Tizen.Network.IoTConnectivity/Tizen.Network.IoTConnectivity/ResourceTypes.cs
src/Tizen.Network.Mtp/Tizen.Network.Mtp/MtpDevice.cs
src/Tizen.Network.Mtp/Tizen.Network.Mtp/MtpErrorFactory.cs
src/Tizen.Network.Mtp/Tizen.Network.Mtp/MtpObject.cs
src/Tizen.Network.Mtp/Tizen.Network.Mtp/MtpStorage.cs
src/Tizen.Network.Nfc/Tizen.Network.Nfc/NfcCardEmulationAdapter.cs
src/Tizen.Network.Nfc/Tizen.Network.Nfc/NfcErrorFactory.cs
src/Tizen.Network.Nfc/Tizen.Network.Nfc/NfcNdefMessage.cs
src/Tizen.Network.Nfc/Tizen.Network.Nfc/NfcNdefRecord.cs
src/Tizen.Network.Nfc/Tizen.Network.Nfc/NfcP2p.cs
src/Tizen.Network.Nfc/Tizen.Network.Nfc/NfcP2pAdapter.cs
src/Tizen.Network.Nfc/Tizen.Network.Nfc/NfcSecureElement.cs
src/Tizen.Network.Nfc/Tizen.Network.Nfc/NfcTag.cs
src/Tizen.Network.Nfc/Tizen.Network.Nfc/NfcTagAdapter.cs
src/Tizen.Network.Smartcard/Tizen.Network.Smartcard/SmartcardChannel.cs
src/Tizen.Network.Smartcard/Tizen.Network.Smartcard/SmartcardReader.cs
src/Tizen.Network.Smartcard/Tizen.Network.Smartcard/SmartcardSession.cs
src/Tizen.Security.TEEC/doc/api/Tizen.Security.TEEC.md
src/Tizen.System.Feedback/Feedback/Feedback.cs
src/Tizen.System.SystemSettings/Tizen.System.SystemSettings/SystemSettingsEventArgs.cs

index 020ef7e..2edfc1c 100644 (file)
@@ -9,7 +9,7 @@
 
 Name:       csapi-tizenfx
 Summary:    Assemblies of Tizen .NET
-Version:    4.0.0.286
+Version:    4.0.0.295
 Release:    1
 Group:      Development/Libraries
 License:    Apache-2.0
@@ -144,7 +144,7 @@ rm -fr %{_tizenfx_bin_path}
 export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true
 ./build.sh --full
 ./build.sh --dummy
-./build.sh --pack 4.0.0-preview1-00286
+./build.sh --pack 4.0.0-preview1-00295
 
 %install
 mkdir -p %{buildroot}%{DOTNET_ASSEMBLY_PATH}
index 663933f..5aa1872 100755 (executable)
@@ -26,7 +26,7 @@ namespace Tizen.Applications
     {
         internal IntPtr Handle;
         internal string Id;
-        protected static readonly string LogTag = typeof(WidgetBase).Namespace;
+        private const string LogTag = "Tizen.Applications.WidgetBase";
 
         /// <summary>
         /// Window object for this widget instance.
index f8bbc41..c4beb30 100755 (executable)
@@ -26,7 +26,7 @@ namespace Tizen.Applications
     /// </summary>
     public class WidgetControl : IDisposable
     {
-        protected static readonly string LogTag = "WidgetControl";
+        private const string LogTag = "Tizen.Applications.WidgetControl";
         /// <summary>
         /// Class for the widget instance.
         /// </summary>
index c7d5ff8..ce8caf6 100644 (file)
@@ -31,9 +31,6 @@ internal static partial class Interop
         [DllImport(Libraries.MediaContent, EntryPoint = "image_meta_get_date_taken", CallingConvention = CallingConvention.Cdecl)]
         internal static extern MediaContentError GetDateTaken(IntPtr handle, out IntPtr dateTaken);
 
-        [DllImport(Libraries.MediaContent, EntryPoint = "image_meta_get_burst_id", CallingConvention = CallingConvention.Cdecl)]
-        internal static extern MediaContentError GetBurstId(IntPtr handle, out IntPtr burstId);
-
         [DllImport(Libraries.MediaContent, EntryPoint = "image_meta_get_exposure_time", CallingConvention = CallingConvention.Cdecl)]
         internal static extern MediaContentError GetExposureTime(IntPtr handle, out IntPtr exposureTime);
 
@@ -46,9 +43,6 @@ internal static partial class Interop
         [DllImport(Libraries.MediaContent, EntryPoint = "image_meta_get_model", CallingConvention = CallingConvention.Cdecl)]
         internal static extern MediaContentError GetModel(IntPtr handle, out IntPtr model);
 
-        [DllImport(Libraries.MediaContent, EntryPoint = "image_meta_is_burst_shot", CallingConvention = CallingConvention.Cdecl)]
-        internal static extern MediaContentError IsBurstShot(IntPtr handle, out bool isBurstShot);
-
         [DllImport(Libraries.MediaContent, EntryPoint = "image_meta_get_media_id", CallingConvention = CallingConvention.Cdecl)]
         internal static extern MediaContentError GetMediaId(IntPtr handle, out IntPtr mediaId);
 
index 244e98a..296c9a9 100644 (file)
@@ -31,9 +31,6 @@ internal static partial class Interop
         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
         internal delegate void InsertCompletedCallback(MediaContentError error, IntPtr userData);
 
-        [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
-        internal delegate void InsertBurstShotCompletedCallback(MediaContentError error, IntPtr userData);
-
         [DllImport(Libraries.MediaContent, EntryPoint = "media_info_insert_to_db")]
         internal static extern MediaContentError Insert(string filePath, out MediaInfoHandle info);
 
@@ -41,16 +38,9 @@ internal static partial class Interop
         internal static extern MediaContentError BatchInsert(string[] filePathArray, int arrayLength,
             InsertCompletedCallback callback, IntPtr userData = default(IntPtr));
 
-        [DllImport(Libraries.MediaContent, EntryPoint = "media_info_insert_burst_shot_to_db")]
-        internal static extern MediaContentError BurstShotInsert(string[] filePathArray, int arrayLength,
-            InsertBurstShotCompletedCallback callback, IntPtr userData = default(IntPtr));
-
         [DllImport(Libraries.MediaContent, EntryPoint = "media_info_delete_from_db")]
         internal static extern MediaContentError Delete(string mediaId);
 
-        [DllImport(Libraries.MediaContent, EntryPoint = "media_info_delete_batch_from_db")]
-        internal static extern MediaContentError BatchDelete(FilterHandle filter);
-
         [DllImport(Libraries.MediaContent, EntryPoint = "media_info_destroy")]
         internal static extern MediaContentError Destroy(IntPtr handle);
 
@@ -200,7 +190,6 @@ internal static partial class Interop
         [DllImport(Libraries.MediaContent, EntryPoint = "media_info_cancel_thumbnail")]
         internal static extern MediaContentError CancelThumbnail(MediaInfoHandle mediaInformationHandle);
 
-
         [DllImport(Libraries.MediaContent, EntryPoint = "media_info_start_face_detection")]
         internal static extern MediaContentError StartFaceDetection(MediaInfoHandle handle,
             FaceDetectionCompletedCallback callback, IntPtr userData = default(IntPtr));
index e6050de..135fa38 100644 (file)
@@ -390,16 +390,6 @@ namespace Tizen.Content.MediaContent
         public static string Orientation => "MEDIA_ORIENTATION";
 
         /// <summary>
-        /// Gets the column name for the burst ID of media.
-        /// </summary>
-        /// <value>The column name for the burst ID of media.</value>
-        /// <remarks>
-        /// The value type is string.
-        /// </remarks>
-        /// <seealso cref="ImageInfo.BurstId"/>
-        public static string BurstId => "BURST_ID";
-
-        /// <summary>
         /// Gets the column name for the rating of media.
         /// </summary>
         /// <value>The column name for the rating of media.</value>
@@ -439,7 +429,6 @@ namespace Tizen.Content.MediaContent
         /// <seealso cref="MediaInfo.Category"/>
         public static string Category => "MEDIA_CATEGORY";
 
-
         /// <summary>
         /// Gets the column name for the location tag of media.
         /// </summary>
@@ -532,7 +521,6 @@ namespace Tizen.Content.MediaContent
         public static string Model => "MEDIA_MODEL";
     }
 
-
     /// <summary>
     /// Provides the folder column names that can be used for Select and Count commands.
     /// </summary>
index 0a60625..8562b23 100644 (file)
@@ -40,7 +40,6 @@ namespace Tizen.Content.MediaContent
                 Orientation = InteropHelper.GetValue<Orientation>(imageHandle, Interop.ImageInfo.GetOrientation);
 
                 DateTaken = InteropHelper.GetString(imageHandle, Interop.ImageInfo.GetDateTaken);
-                BurstId = InteropHelper.GetString(imageHandle, Interop.ImageInfo.GetBurstId);
                 ExposureTime = InteropHelper.GetString(imageHandle, Interop.ImageInfo.GetExposureTime);
 
                 FNumber = InteropHelper.GetValue<double>(imageHandle, Interop.ImageInfo.GetFNumber);
@@ -48,8 +47,6 @@ namespace Tizen.Content.MediaContent
 
                 Model = InteropHelper.GetString(imageHandle, Interop.ImageInfo.GetModel);
 
-                IsBurstShot = InteropHelper.GetValue<bool>(imageHandle, Interop.ImageInfo.IsBurstShot);
-
             }
             finally
             {
@@ -82,13 +79,6 @@ namespace Tizen.Content.MediaContent
         public string DateTaken { get; }
 
         /// <summary>
-        /// Gets the burst shot ID.
-        /// </summary>
-        /// <value>The burst shot ID if it is a burst shot, otherwise an empty string.</value>
-        /// <seealso cref="IsBurstShot"/>
-        public string BurstId { get; }
-
-        /// <summary>
         /// Gets the exposure time from EXIF.
         /// </summary>
         /// <value>The exposure time from EXIF.</value>
@@ -97,7 +87,7 @@ namespace Tizen.Content.MediaContent
         /// <summary>
         /// Gets the FNumber from EXIF.
         /// </summary>
-        /// <value>The FNumber from exif.</value>
+        /// <value>The FNumber from EXIF.</value>
         public double FNumber { get; }
 
         /// <summary>
@@ -111,11 +101,5 @@ namespace Tizen.Content.MediaContent
         /// </summary>
         /// <value>The model from EXIF.</value>
         public string Model { get; }
-
-        /// <summary>
-        /// Gets the value indicating whether the media is a burst shot image.
-        /// </summary>
-        /// <value>true if the media is a burst shot image, otherwise false.</value>
-        public bool IsBurstShot { get; }
     }
 }
index 72031a5..b373d7f 100644 (file)
@@ -135,7 +135,6 @@ namespace Tizen.Content.MediaContent
             }
         }
 
-
         private static readonly Interop.Content.MediaContentDBUpdatedCallback _folderUpdatedCb = (
             MediaContentError error, int pid, ItemType updateItem, OperationType updateType,
             MediaType mediaType, string uuid, string filePath, string mimeType, IntPtr _) =>
index 12f5364..ff1ba55 100644 (file)
@@ -98,10 +98,6 @@ namespace Tizen.Content.MediaContent
         /// </summary>
         Altitude,
         /// <summary>
-        /// Burst shot.
-        /// </summary>
-        BurstImage,
-        /// <summary>
         /// Rating.
         /// </summary>
         Rating = 20,
index f0a5fb3..7850a28 100644 (file)
@@ -109,7 +109,6 @@ namespace Tizen.Content.MediaContent
                 Bookmark.FromHandle);
         }
 
-
         /// <summary>
         /// Retrieves the number of the face information added to or detected from the media.
         /// </summary>
@@ -252,7 +251,6 @@ namespace Tizen.Content.MediaContent
                 Tag.FromHandle);
         }
 
-
         /// <summary>
         /// Retrieves the number of the media information.
         /// </summary>
@@ -624,64 +622,6 @@ namespace Tizen.Content.MediaContent
             }
         }
 
-        /// <summary>
-        /// Adds burst shot images into the media database.
-        /// </summary>
-        /// <param name="paths">The paths of the burst shot images to add.</param>
-        /// <returns>A task that represents the asynchronous add operation.</returns>
-        /// <remarks>
-        ///     The paths that already exist in the database.\n
-        ///     At most 300 items can be added at once.
-        ///     \n
-        ///     If you want to access internal storage, you should add privilege http://tizen.org/privilege/mediastorage.\n
-        ///     If you want to access external storage, you should add privilege http://tizen.org/privilege/externalstorage.
-        /// </remarks>
-        /// <privilege>http://tizen.org/privilege/content.write</privilege>
-        /// <privilege>http://tizen.org/privilege/mediastorage</privilege>
-        /// <privilege>http://tizen.org/privilege/externalstorage</privilege>
-        /// <exception cref="InvalidOperationException">The <see cref="MediaDatabase"/> is disconnected.</exception>
-        /// <exception cref="ObjectDisposedException">The <see cref="MediaDatabase"/> has already been disposed of.</exception>
-        /// <exception cref="MediaDatabaseException">An error occurred while executing the command.</exception>
-        /// <exception cref="ArgumentNullException"><paramref name="paths"/> is null.</exception>
-        /// <exception cref="ArgumentException">
-        ///     <paramref name="paths"/> contains null.\n
-        ///     -or-\n
-        ///     <paramref name="paths"/> contains the invalid path.\n
-        ///     -or-\n
-        ///     The number of <paramref name="paths"/> is 300 or more items.
-        /// </exception>
-        /// <exception cref="FileNotFoundException"><paramref name="paths"/> contains a path that does not exist.</exception>
-        /// <exception cref="UnauthorizedAccessException">The caller has no required privilege.</exception>
-        public async Task AddBurstShotImagesAsync(IEnumerable<string> paths)
-        {
-            ValidateDatabase();
-
-            ValidatePaths(paths);
-
-            var tcs = new TaskCompletionSource<bool>(TaskContinuationOptions.RunContinuationsAsynchronously);
-            string[] pathArray = paths.ToArray();
-
-            Interop.MediaInfo.InsertBurstShotCompletedCallback callback = (error, _) =>
-            {
-                if (error == MediaContentError.None)
-                {
-                    tcs.TrySetResult(true);
-                }
-                else
-                {
-                    tcs.TrySetException(error.AsException("Failed to add burst shot images"));
-                }
-            };
-
-            using (ObjectKeeper.Get(callback))
-            {
-                Interop.MediaInfo.BurstShotInsert(pathArray, pathArray.Length, callback).
-                    ThrowIfError("Failed to add burst shots to db");
-
-                await tcs.Task;
-            }
-        }
-
         private static void SetUpdateValue<T>(Interop.MediaInfoHandle handle, T value,
             Func<Interop.MediaInfoHandle, T, MediaContentError> func)
         {
@@ -691,7 +631,6 @@ namespace Tizen.Content.MediaContent
             }
         }
 
-
         private static void SetUpdateValue<T>(Interop.MediaInfoHandle handle, Nullable<T> value,
             Func<Interop.MediaInfoHandle, T, MediaContentError> func) where T : struct
         {
index d4eeb15..b4bc86b 100644 (file)
@@ -63,6 +63,9 @@ namespace Tizen.Multimedia
             RegisterStateChangedCallback();
         }
 
+        /// <summary>
+        /// Finalizes an instance of the AudioCaptureBase class.
+        /// </summary>
         ~AudioCaptureBase()
         {
             Dispose(false);
index 4a3fdaf..2b37cb6 100644 (file)
@@ -123,6 +123,9 @@ namespace Tizen.Multimedia
             RegisterStateChangedCallback();
         }
 
+        /// <summary>
+        /// Finalizes an instance of the AudioPlayback class.
+        /// </summary>
         ~AudioPlayback()
         {
             Dispose(false);
index 9ac9378..f521f9a 100644 (file)
@@ -64,7 +64,7 @@ namespace Tizen.Multimedia
         }
 
         /// <summary>
-        /// Destructor of the camera class.
+        /// Finalizes an instance of the Camera class.
         /// </summary>
         ~Camera()
         {
index f4b3f1f..6f32997 100644 (file)
@@ -73,6 +73,9 @@ namespace Tizen.Multimedia.MediaCodec
             }
         }
 
+        /// <summary>
+        /// Finalizes an instance of the MediaCodec class.
+        /// </summary>
         ~MediaCodec()
         {
             Dispose(false);
old mode 100755 (executable)
new mode 100644 (file)
index 54fbaf9..f50ab07
@@ -505,6 +505,9 @@ namespace Tizen.Multimedia
             Interop.MetadataEditor.RemovePicture(Handle, index).ThrowIfError("Failed to remove picture");
         }
 
+        /// <summary>
+        /// Finalizes an instance of the MetadataEditor class.
+        /// </summary>
         ~MetadataEditor()
         {
             Dispose(false);
old mode 100755 (executable)
new mode 100644 (file)
index 7d9a042..21c9f92
@@ -268,6 +268,9 @@ namespace Tizen.Multimedia
             }
         }
 
+        /// <summary>
+        /// Finalizes an instance of the MetadataExtractor class.
+        /// </summary>
         ~MetadataExtractor()
         {
             Dispose(false);
index 20d70fd..a21450a 100755 (executable)
@@ -16,6 +16,7 @@
 
 using System;
 using System.Linq;
+using System.Runtime.InteropServices;
 using System.Threading.Tasks;
 using Tizen.System;
 using static Tizen.Multimedia.Interop.Radio;
@@ -43,8 +44,13 @@ namespace Tizen.Multimedia
 
             try
             {
-                SetScanCompletedCb(_handle, ScanCompleteCallback).ThrowIfFailed("Failed to initialize radio");
-                SetInterruptedCb(_handle, InterruptedCallback).ThrowIfFailed("Failed to initialize radio");
+                _scanCompletedCallback = _ => ScanCompleted?.Invoke(this, EventArgs.Empty);
+                _interruptedCallback = (reason, _) => Interrupted?.Invoke(this, new RadioInterruptedEventArgs(reason));
+                _scanUpdatedCallback = (frequency, _) => ScanUpdated?.Invoke(this, new ScanUpdatedEventArgs(frequency));
+                _scanStoppedCallback = _ => ScanStopped?.Invoke(this, EventArgs.Empty);
+
+                SetScanCompletedCb(_handle, _scanCompletedCallback).ThrowIfFailed("Failed to initialize radio");
+                SetInterruptedCb(_handle, _interruptedCallback).ThrowIfFailed("Failed to initialize radio");
             }
             catch (Exception)
             {
@@ -65,6 +71,14 @@ namespace Tizen.Multimedia
             }
         }
 
+        private ScanUpdatedCallback _scanUpdatedCallback;
+
+        private ScanStoppedCallback _scanStoppedCallback;
+
+        private ScanCompletedCallback _scanCompletedCallback;
+
+        private InterruptedCallback _interruptedCallback;
+
         /// <summary>
         /// Occurs when the radio scanning information is updated.
         /// </summary>
@@ -252,7 +266,7 @@ namespace Tizen.Multimedia
         {
             ValidateRadioState(RadioState.Ready, RadioState.Playing);
 
-            ScanStart(Handle, ScanUpdatedCallback);
+            ScanStart(Handle, _scanUpdatedCallback).ThrowIfFailed("Failed to start scanning");
         }
 
         /// <summary>
@@ -265,7 +279,7 @@ namespace Tizen.Multimedia
         {
             ValidateRadioState(RadioState.Scanning);
 
-            ScanStop(Handle, ScanStoppedCallback);
+            ScanStop(Handle, _scanStoppedCallback).ThrowIfFailed("Failed to stop scanning");
         }
 
         /// <summary>
@@ -277,19 +291,14 @@ namespace Tizen.Multimedia
         /// It can be -1 if the seeking operation has failed.
         /// </returns>
         /// <remarks>The radio must be in the <see cref="RadioState.Playing"/> state.</remarks>
-        /// <exception cref="InvalidOperationException">The radio is not in the valid state.</exception>
-        public async Task<int> SeekUpAsync()
+        /// <exception cref="InvalidOperationException">
+        ///     The radio is not in the valid state.\n
+        ///     -or-\n
+        ///     Seeking is in progress.
+        /// </exception>
+        public Task<int> SeekUpAsync()
         {
-            ValidateRadioState(RadioState.Playing);
-
-            TaskCompletionSource<int> tcs = new TaskCompletionSource<int>();
-            SeekCompletedCallback callback = (currentFrequency, _) =>
-            {
-                tcs.TrySetResult(currentFrequency);
-            };
-
-            SeekUp(Handle, callback);
-            return await tcs.Task;
+            return SeekAsync(SeekUp);
         }
 
         /// <summary>
@@ -301,53 +310,46 @@ namespace Tizen.Multimedia
         /// It can be -1 if the seeking operation has failed.
         /// </returns>
         /// <remarks>The radio must be in the <see cref="RadioState.Playing"/> state.</remarks>
-        /// <exception cref="InvalidOperationException">The radio is not in the valid state.</exception>
-        public async Task<int> SeekDownAsync()
+        /// <exception cref="InvalidOperationException">
+        ///     The radio is not in the valid state.\n
+        ///     -or-\n
+        ///     Seeking is in progress.
+        /// </exception>
+        public Task<int> SeekDownAsync()
+        {
+            return SeekAsync(SeekDown);
+        }
+
+        private async Task<int> SeekAsync(Func<Interop.RadioHandle, SeekCompletedCallback, IntPtr, RadioError> func)
         {
             ValidateRadioState(RadioState.Playing);
 
-            TaskCompletionSource<int> tcs = new TaskCompletionSource<int>();
-            SeekCompletedCallback callback = (currentFrequency, _) =>
+            var tcs = new TaskCompletionSource<int>();
+            SeekCompletedCallback callback = (currentFrequency, _) => tcs.TrySetResult(currentFrequency);
+
+            GCHandle gcHandle;
+            try
             {
-                tcs.TrySetResult(currentFrequency);
-            };
+                gcHandle = GCHandle.Alloc(callback);
 
-            SeekDown(Handle, callback);
-            return await tcs.Task;
+                func(Handle, callback, IntPtr.Zero).ThrowIfFailed("Failed to seek");
+                return await tcs.Task;
+            }
+            finally
+            {
+                gcHandle.Free();
+            }
         }
 
         private void ValidateFeatureSupported(string featurePath)
         {
-            bool supported = false;
-            Information.TryGetValue(featurePath, out supported);
-
-            if (supported == false)
+            if (Information.TryGetValue(featurePath, out bool supported) == false || supported == false)
             {
                 throw new NotSupportedException($"The feature({featurePath}) is not supported.");
             }
 
         }
 
-        private void ScanUpdatedCallback(int frequency, IntPtr data)
-        {
-            ScanUpdated?.Invoke(this, new ScanUpdatedEventArgs(frequency));
-        }
-
-        private void ScanStoppedCallback(IntPtr data)
-        {
-            ScanStopped?.Invoke(this, EventArgs.Empty);
-        }
-
-        private void ScanCompleteCallback(IntPtr data)
-        {
-            ScanCompleted?.Invoke(this, EventArgs.Empty);
-        }
-
-        private void InterruptedCallback(RadioInterruptedReason reason, IntPtr data)
-        {
-            Interrupted?.Invoke(this, new RadioInterruptedEventArgs(reason));
-        }
-
         private void ValidateRadioState(params RadioState[] required)
         {
             RadioState curState = State;
old mode 100755 (executable)
new mode 100644 (file)
index 7badfec..824cd68
@@ -75,6 +75,9 @@ namespace Tizen.Multimedia.Remoting
             RegisterStateChangedEvent();
         }
 
+        /// <summary>
+        /// Finalizes an instance of the ScreenMirroring class.
+        /// </summary>
         ~ScreenMirroring()
         {
             Dispose(false);
old mode 100755 (executable)
new mode 100644 (file)
index aa20741..d2e12be
@@ -69,6 +69,9 @@ namespace Tizen.Multimedia.Vision
             EngineConfig.Create(out _handle).Validate("Failed to create media vision engine.");
         }
 
+        /// <summary>
+        /// Finalizes an instance of the EngineConfiguration class.
+        /// </summary>
         ~EngineConfiguration()
         {
             Dispose(false);
old mode 100755 (executable)
new mode 100644 (file)
index 20b727b..e9f95b7
@@ -68,6 +68,9 @@ namespace Tizen.Multimedia.Vision
                 Validate("Failed to load FaceRecognitionModel from file");
         }
 
+        /// <summary>
+        /// Finalizes an instance of the FaceRecognitionModel class.
+        /// </summary>
         ~FaceRecognitionModel()
         {
             Dispose(false);
old mode 100755 (executable)
new mode 100644 (file)
index 6653921..01ff2a6
@@ -65,6 +65,9 @@ namespace Tizen.Multimedia.Vision
             InteropModel.Load(modelPath, out _handle).Validate("Failed to load FaceTrackingModel from file.");
         }
 
+        /// <summary>
+        /// Finalizes an instance of the FaceTrackingModel class.
+        /// </summary>
         ~FaceTrackingModel()
         {
             Dispose(false);
old mode 100755 (executable)
new mode 100644 (file)
index ab0b6d9..0b4c71b
@@ -65,6 +65,9 @@ namespace Tizen.Multimedia.Vision
             InteropImage.Load(path, out _handle).Validate("Failed to load image object from file");
         }
 
+        /// <summary>
+        /// Finalizes an instance of the ImageObject class.
+        /// </summary>
         ~ImageObject()
         {
             Dispose(false);
old mode 100755 (executable)
new mode 100644 (file)
index a3b9bec..fd509f9
@@ -65,6 +65,9 @@ namespace Tizen.Multimedia.Vision
             InteropModel.Load(modelPath, out _handle).Validate("Failed to load ImageTrackingModel from file");
         }
 
+        /// <summary>
+        /// Finalizes an instance of the ImageTrackingModel class.
+        /// </summary>
         ~ImageTrackingModel()
         {
             Dispose(false);
old mode 100755 (executable)
new mode 100644 (file)
index 25a66d6..c3c663a
@@ -121,6 +121,9 @@ namespace Tizen.Multimedia.Vision
         {
         }
 
+        /// <summary>
+        /// Finalizes an instance of the MediaVisionSource class.
+        /// </summary>
         ~MediaVisionSource()
         {
             Dispose(false);
@@ -223,6 +226,9 @@ namespace Tizen.Multimedia.Vision
             }
         }
 
+        /// <summary>
+        /// Releases all resources used by the current instance.
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
old mode 100755 (executable)
new mode 100644 (file)
index b3921a4..6b845b3
@@ -42,6 +42,9 @@ namespace Tizen.Multimedia.Vision
             EventTriggerCreate(eventType, out _handle).Validate("Failed to create surveillance event trigger.");
         }
 
+        /// <summary>
+        /// Finalizes an instance of the SurveillanceEngine class.
+        /// </summary>
         ~SurveillanceEngine()
         {
             Dispose(false);
index 64e6d59..d8f3f30 100644 (file)
@@ -81,6 +81,9 @@ namespace Tizen.Multimedia
             }
         }
 
+        /// <summary>
+        /// Finalizes an instance of the MediaPacket class.
+        /// </summary>
         ~MediaPacket()
         {
             Dispose(false);
index 6dd18a8..67a1248 100755 (executable)
@@ -1,5 +1,3 @@
-/// Copyright 2016 by Samsung Electronics, Inc.,
-///
  /*
  * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
  *
@@ -192,10 +190,10 @@ namespace Tizen.Network.IoTConnectivity
         /// <since_tizen> 3 </since_tizen>
         /// <param name="item">The key value pair to add.</param>
         /// <feature>http://tizen.org/feature/iot.ocf</feature>
-        /// <code>
+        /// <code><![CDATA[
         /// Tizen.Network.IoTConnectivity.Attributes attributes = new Tizen.Network.IoTConnectivity.Attributes();
         /// attributes.Add(new KeyValuePair<string, object> ("state", "ON"));
-        /// </code>
+        /// ]]></code>
         public void Add(KeyValuePair<string, object> item)
         {
             Add(item.Key, item.Value);
@@ -326,14 +324,14 @@ namespace Tizen.Network.IoTConnectivity
         /// <since_tizen> 3 </since_tizen>
         /// <param name="item">The status key value pair.</param>
         /// <returns>true if exists. Otherwise, false.</returns>
-        /// <code>
+        /// <code><![CDATA[
         /// Tizen.Network.IoTConnectivity.Attributes attributes = new Tizen.Network.IoTConnectivity.Attributes() {
         ///     { "state", "ON" },
         ///     { "dim", 10 }
         /// };
         /// if (attributes.Contains(new KeyValuePair<string, object> ("dim", 10))
         ///     Console.WriteLine("Attribute conatins pair ('dim', 10)");
-        /// </code>
+        /// ]]></code>
         public bool Contains(KeyValuePair<string, object> item)
         {
             return _attributes.Contains(item);
@@ -364,7 +362,7 @@ namespace Tizen.Network.IoTConnectivity
         /// <since_tizen> 3 </since_tizen>
         /// <param name="array">The destination array.</param>
         /// <param name="arrayIndex">The zero-based index in an array at which copying begins.</param>
-        /// <code>
+        /// <code><![CDATA[
         /// Tizen.Network.IoTConnectivity.Attributes attributes = new Tizen.Network.IoTConnectivity.Attributes() {
         ///     { "state", "ON" },
         ///     { "dim", 10 }
@@ -373,7 +371,7 @@ namespace Tizen.Network.IoTConnectivity
         /// int index = 0;
         /// attributes.CopyTo(dest, index);
         /// Console.WriteLine("Dest conatins ({0}, {1})", dest[0].Key, dest[0].Value);
-        /// </code>
+        /// ]]></code>
         public void CopyTo(KeyValuePair<string, object>[] array, int arrayIndex)
         {
             _attributes.CopyTo(array, arrayIndex);
@@ -384,7 +382,7 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <returns> An enumerator that can be used to iterate through the collection.</returns>
-        /// <code>
+        /// <code><![CDATA[
         /// Tizen.Network.IoTConnectivity.Attributes attributes = new Tizen.Network.IoTConnectivity.Attributes() {
         ///     { "state", "ON" },
         ///     { "dim", 10 }
@@ -393,7 +391,7 @@ namespace Tizen.Network.IoTConnectivity
         /// {
         ///     Console.WriteLine("key : {0}, value : {1}", pair.Key, pair.Value);
         /// }
-        /// </code>
+        /// ]]></code>
         public IEnumerator<KeyValuePair<string, object>> GetEnumerator()
         {
             return _attributes.GetEnumerator();
@@ -409,14 +407,14 @@ namespace Tizen.Network.IoTConnectivity
         /// <exception cref="NotSupportedException">Thrown when the iotcon is not supported</exception>
         /// <exception cref="ArgumentException">Thrown when there is an invalid parameter</exception>
         /// <exception cref="InvalidOperationException">Thrown when the operation is invalid</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// Tizen.Network.IoTConnectivity.Attributes attributes = new Tizen.Network.IoTConnectivity.Attributes() {
         ///     { "state", "ON" },
         ///     { "dim", 10 }
         /// };
         /// if (attributes.Remove(new KeyValuePair<string, object>("dim", 10)))
         ///     Console.WriteLine("Remove was successful");
-        /// </code>
+        /// ]]></code>
         public bool Remove(KeyValuePair<string, object> item)
         {
             return Remove(item.Key);
index 7a8e7ed..e7d1486 100755 (executable)
@@ -281,16 +281,16 @@ namespace Tizen.Network.IoTConnectivity
         /// When the resource receive presence, <see cref="PresenceReceived"/> event handler will be invoked.\n
         /// You must destroy presence by calling StopReceivingPresence() if presence event is no longer needed.
         /// </post>
-        /// <seealso cref="IoTConnectivityServerManager.StartSendingPresence()"/>
+        /// <seealso cref="IoTConnectivityServerManager.StartSendingPresence(uint)"/>
         /// <seealso cref="IoTConnectivityServerManager.StopSendingPresence()"/>
-        /// <seealso cref="StopReceivingPresence()"/>
+        /// <seealso cref="StopReceivingPresence(int)"/>
         /// <seealso cref="PresenceReceived"/>
         /// <exception cref="NotSupportedException">Thrown when the iotcon is not supported.</exception>
         /// <exception cref="ArgumentException">Thrown when there is an invalid parameter.</exception>
         /// <exception cref="InvalidOperationException">Thrown when the operation is invalid.</exception>
         /// <exception cref="UnauthorizedAccessException">Thrown when an application does not have privilege to access.</exception>
         /// <exception cref="OutOfMemoryException">Thrown when there is not enough memory.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// EventHandler<PresenceReceivedEventArgs> handler = (sender, e) => {
         ///     Console.Log("PresenceReceived, presence id :" + e.PresenceId);
         /// }
@@ -301,7 +301,7 @@ namespace Tizen.Network.IoTConnectivity
         /// IoTConnectivityClientManager.FindingErrorOccurred += errorHandler;
         /// // Do not forget to remove these event handlers when they are not required any more.
         /// int id = IoTConnectivityClientManager.StartReceivingPresence(IoTConnectivityClientManager.MulticastAddress, "oic.iot.door");
-        /// </code>
+        /// ]]></code>
         public static int StartReceivingPresence(string hostAddress, string resourceType)
         {
             Interop.IoTConnectivity.Client.RemoteResource.ConnectivityType connectivityType = Interop.IoTConnectivity.Client.RemoteResource.ConnectivityType.Ip;
@@ -380,16 +380,16 @@ namespace Tizen.Network.IoTConnectivity
         /// <pre>
         /// Initialize() should be called to initialize.
         /// </pre>
-        /// <seealso cref="IoTConnectivityServerManager.StartSendingPresence()"/>
+        /// <seealso cref="IoTConnectivityServerManager.StartSendingPresence(uint)"/>
         /// <seealso cref="IoTConnectivityServerManager.StopSendingPresence()"/>
-        /// <seealso cref="StartReceivingPresence()"/>
+        /// <seealso cref="StartReceivingPresence(string, string)"/>
         /// <seealso cref="PresenceReceived"/>
         /// <exception cref="NotSupportedException">Thrown when the iotcon is not supported.</exception>
         /// <exception cref="ArgumentException">Thrown when there is an invalid parameter.</exception>
         /// <exception cref="InvalidOperationException">Thrown when the operation is invalid.</exception>
         /// <exception cref="UnauthorizedAccessException">Thrown when an application does not have privilege to access.</exception>
         /// <exception cref="OutOfMemoryException">Thrown when there is not enough memory.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// EventHandler<PresenceReceivedEventArgs> handler = (sender, e) => {
         ///     Console.Log("PresenceReceived, presence id :" + e.PresenceId);
         /// }
@@ -404,7 +404,7 @@ namespace Tizen.Network.IoTConnectivity
         /// IoTConnectivityClientManager.PresenceReceived -= handler;
         /// IoTConnectivityClientManager.FindingErrorOccurred -= errorHandler;
         /// IoTConnectivityClientManager.StopReceivingPresence(id);
-        /// </code>
+        /// ]]></code>
         public static void StopReceivingPresence(int presenceId)
         {
             if (!s_presenceHandlesMap.ContainsKey((IntPtr)presenceId))
@@ -468,7 +468,7 @@ namespace Tizen.Network.IoTConnectivity
         /// <exception cref="InvalidOperationException">Thrown when the operation is invalid.</exception>
         /// <exception cref="UnauthorizedAccessException">Thrown when an application does not have privilege to access.</exception>
         /// <exception cref="OutOfMemoryException">Thrown when there is not enough memory.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// EventHandler<ResourceFoundEventArgs> handler = (sender, e) => {
         ///     Console.Log("Found resource at host address :" + e.Resource.HostAddress + ", uri :" + e.Resource.UriPath);
         /// }
@@ -481,7 +481,7 @@ namespace Tizen.Network.IoTConnectivity
         /// query.Type = "oic.iot.door";
         /// // Do not forget to remove these event handlers when they are not required any more.
         /// int id = IoTConnectivityClientManager.StartFindingResource(null, query);
-        /// </code>
+        /// ]]></code>
         public static int StartFindingResource(string hostAddress, ResourceQuery query = null)
         {
             Interop.IoTConnectivity.Client.RemoteResource.ConnectivityType connectivityType = Interop.IoTConnectivity.Client.RemoteResource.ConnectivityType.Ip;
@@ -573,7 +573,7 @@ namespace Tizen.Network.IoTConnectivity
         /// <post>
         /// <see cref="DeviceInformationFound" /> event handler will be invoked.
         /// </post>
-        /// <seealso cref="IoTConnectivityServerManager.SetDeviceName()"/>
+        /// <seealso cref="IoTConnectivityServerManager.SetDeviceName(string)"/>
         /// <seealso cref="DeviceInformationFound"/>
         /// <seealso cref="DeviceInformationFoundEventArgs"/>
         /// <seealso cref="TimeOut"/>
@@ -581,7 +581,7 @@ namespace Tizen.Network.IoTConnectivity
         /// <exception cref="InvalidOperationException">Thrown when the operation is invalid.</exception>
         /// <exception cref="UnauthorizedAccessException">Thrown when an application does not have privilege to access.</exception>
         /// <exception cref="OutOfMemoryException">Thrown when there is not enough memory.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// EventHandler<DeviceInformationFoundEventArgs> handler = (sender, e) => {
         ///     Console.Log("Device information found, id : " + e.RequestId + ", name : " + e.Name);
         /// }
@@ -592,7 +592,7 @@ namespace Tizen.Network.IoTConnectivity
         /// IoTConnectivityClientManager.FindingErrorOccurred += errorHandler;
         /// // Do not forget to remove these event handlers when they are not required any more.
         /// int id = IoTConnectivityClientManager.StartFindingDeviceInformation(IoTConnectivityClientManager.MulticastAddress);
-        /// </code>
+        /// ]]></code>
         public static int StartFindingDeviceInformation(string hostAddress, ResourceQuery query = null)
         {
             Interop.IoTConnectivity.Client.RemoteResource.ConnectivityType connectivityType = Interop.IoTConnectivity.Client.RemoteResource.ConnectivityType.Ip;
@@ -683,7 +683,7 @@ namespace Tizen.Network.IoTConnectivity
         /// <exception cref="InvalidOperationException">Thrown when the operation is invalid.</exception>
         /// <exception cref="UnauthorizedAccessException">Thrown when an application does not have privilege to access.</exception>
         /// <exception cref="OutOfMemoryException">Thrown when there is not enough memory.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// EventHandler<PlatformInformationFoundEventArgs> handler = (sender, e) => {
         ///     Console.Log("PlatformInformationFound :" + e.RequestId);
         /// }
@@ -694,7 +694,7 @@ namespace Tizen.Network.IoTConnectivity
         /// IoTConnectivityClientManager.FindingErrorOccurred += errorHandler;
         /// // Do not forget to remove these event handlers when they are not required any more.
         /// int id = IoTConnectivityClientManager.StartFindingPlatformInformation(IoTConnectivityClientManager.MulticastAddress);
-        /// </code>
+        /// ]]></code>
         public static int StartFindingPlatformInformation(string hostAddress, ResourceQuery query = null)
         {
             Interop.IoTConnectivity.Client.RemoteResource.ConnectivityType connectivityType = Interop.IoTConnectivity.Client.RemoteResource.ConnectivityType.Ip;
index 34946c9..c93c532 100755 (executable)
@@ -109,7 +109,7 @@ namespace Tizen.Network.IoTConnectivity
         /// <exception cref="InvalidOperationException">Thrown when the operation is invalid.</exception>
         /// <exception cref="OutOfMemoryException">Thrown when there is not enough memory.</exception>
         /// <exception cref="UnauthorizedAccessException">Thrown when an application does not have privilege to access.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceTypes types = new ResourceTypes(new List<string>(){ "org.tizen.light" });
         /// Attributes attributes = new Attributes { { "state", "ON" }};
         /// Resource res = new LiteResource("/room/1", types, ResourcePolicy.Discoverable, attributes);
@@ -118,7 +118,7 @@ namespace Tizen.Network.IoTConnectivity
         /// } catch(Exception ex) {
         ///     Console.Log("Exception caught : " + ex.Message);
         /// }
-        /// </code>
+        /// ]]></code>
         public static void RegisterResource(Resource resource)
         {
             Log.Info(IoTConnectivityErrorFactory.LogTag, "...");
@@ -178,7 +178,7 @@ namespace Tizen.Network.IoTConnectivity
         /// <seealso cref="LiteResource"/>
         /// <exception cref="NotSupportedException">Thrown when the iotcon is not supported.</exception>
         /// <exception cref="UnauthorizedAccessException">Thrown when an application does not have privilege to access.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceTypes types = new ResourceTypes(new List<string>(){ "org.tizen.light" });
         /// Attributes attributes = new Attributes { { "state", "ON" }};
         /// Resource res = new LiteResource("/room/1", types, ResourcePolicy.Discoverable, attributes);
@@ -188,7 +188,7 @@ namespace Tizen.Network.IoTConnectivity
         /// } catch(Exception ex) {
         ///     Console.Log("Exception caught : " + ex.Message);
         /// }
-        /// </code>
+        /// ]]></code>
         public static void UnregisterResource(Resource resource)
         {
             if (resource != null)
index b7b4801..a69e2ae 100755 (executable)
@@ -14,6 +14,8 @@
  * limitations under the License.
  */
 
+using System;
+using System.ComponentModel;
 
 namespace Tizen.Network.IoTConnectivity
 {
@@ -30,7 +32,7 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <remarks>
-        /// Creates a lite resource, which can then be registered in server using <see cref="IoTConnectivityServerManager.RegisterResource()"/>.\n
+        /// Creates a lite resource, which can then be registered in server using <see cref="IoTConnectivityServerManager.RegisterResource(Resource)"/>.\n
         /// When client requests some operations, it sends a response to client automatically.\n
         /// @a uri length must be less than 128.
         /// </remarks>
@@ -49,13 +51,13 @@ namespace Tizen.Network.IoTConnectivity
         /// <seealso cref="ResourceTypes"/>
         /// <seealso cref="ResourcePolicy"/>
         /// <seealso cref="Attributes"/>
-        /// <code>
+        /// <code><![CDATA[
         /// List<string> list = new List<string>() { "org.tizen.light" };
         /// Attributes attributes = new Attributes() {
         ///     { "state", "ON" }
         /// };
         /// LiteResource res = new LiteResource("/light/1", new ResourceTypes(list), ResourcePolicy.Discoverable, attributes);
-        /// </code>
+        /// ]]></code>
         public LiteResource(string uri, ResourceTypes types, ResourcePolicy policy, Attributes attribs = null)
             : base(uri, types, new ResourceInterfaces(new string[] { ResourceInterfaces.DefaultInterface }), policy)
         {
@@ -67,7 +69,7 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <value>The attributes of the lite resource.</value>
-        /// <code>
+        /// <code><![CDATA[
         /// List<string> list = new List<string>() { "org.tizen.light" };
         /// LiteResource res = new LiteResource("/light/1", new ResourceTypes(list), ResourcePolicy.Discoverable);
         /// Attributes attributes = new Attributes() {
@@ -78,7 +80,7 @@ namespace Tizen.Network.IoTConnectivity
         /// {
         ///     Console.WriteLine("key : {0}, value : {1}", pair.Key, pair.Value);
         /// }
-        /// </code>
+        /// ]]></code>
         public Attributes Attributes { get; set; }
 
         /// <summary>
@@ -108,8 +110,13 @@ namespace Tizen.Network.IoTConnectivity
             return true;
         }
 
-        // The code block untill @endcond should not appear in doxygen spec.
-        /// @cond
+        /// <summary>
+        /// This is called when the client performs get operation on this resource.
+        /// </summary>
+        /// <since_tizen> 3 </since_tizen>
+        /// <param name="request">A request from client.</param>
+        /// <returns>A response having the representation and the result.</returns>
+        [EditorBrowsable(EditorBrowsableState.Never)]
         protected sealed override Response OnGet(Request request)
         {
             Representation representation = new Representation()
@@ -129,6 +136,13 @@ namespace Tizen.Network.IoTConnectivity
             return response;
         }
 
+        /// <summary>
+        /// This is called when the client performs put operation on this resource.
+        /// </summary>
+        /// <since_tizen> 3 </since_tizen>
+        /// <param name="request">A request from client.</param>
+        /// <returns>A response.</returns>
+        [EditorBrowsable(EditorBrowsableState.Never)]
         protected sealed override Response OnPut(Request request)
         {
             Response response = new Response();
@@ -136,6 +150,13 @@ namespace Tizen.Network.IoTConnectivity
             return response;
         }
 
+        /// <summary>
+        /// This is called when the client performs post operation on this resource.
+        /// </summary>
+        /// <since_tizen> 3 </since_tizen>
+        /// <param name="request">A request from client.</param>
+        /// <returns>A response having the representation and the result.</returns>
+        [EditorBrowsable(EditorBrowsableState.Never)]
         protected sealed override Response OnPost(Request request)
         {
             if (OnPost(request.Representation.Attributes))
@@ -163,6 +184,13 @@ namespace Tizen.Network.IoTConnectivity
             };
         }
 
+        /// <summary>
+        /// This is called when the client performs delete operation on this resource.
+        /// </summary>
+        /// <since_tizen> 3 </since_tizen>
+        /// <param name="request">A request from client.</param>
+        /// <returns>A response.</returns>
+        [EditorBrowsable(EditorBrowsableState.Never)]
         protected sealed override Response OnDelete(Request request)
         {
             Response response = new Response();
@@ -170,10 +198,18 @@ namespace Tizen.Network.IoTConnectivity
             return response;
         }
 
+        /// <summary>
+        /// Called on the observing event.
+        /// </summary>
+        /// <since_tizen> 3 </since_tizen>
+        /// <param name="request">A request from client.</param>
+        /// <param name="observeType">Observer type.</param>
+        /// <param name="observeId">Observe identifier.</param>
+        /// <returns>Returns true.</returns>
+        [EditorBrowsable(EditorBrowsableState.Never)]
         protected sealed override bool OnObserving(Request request, ObserveType observeType, int observeId)
         {
             return true;
         }
-        /// @endcond
     }
 }
index 8281a55..0e60112 100755 (executable)
@@ -133,7 +133,7 @@ namespace Tizen.Network.IoTConnectivity
         /// <exception cref="NotSupportedException">Thrown when the iotcon is not supported.</exception>
         /// <exception cref="ArgumentException">Thrown when there is an invalid parameter.</exception>
         /// <exception cref="InvalidOperationException">Thrown when the operation is invalid.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// Representation repr = new Representation();
         /// ResourceTypes types = new ResourceTypes (new List<string>(){ "org.tizen.light" });
         /// repr.Type = types;
@@ -142,7 +142,7 @@ namespace Tizen.Network.IoTConnectivity
         /// {
         ///     Console.WriteLine("Type is {0}", item);
         /// }
-        /// </code>
+        /// ]]></code>
         public ResourceTypes Type
         {
             get
@@ -178,7 +178,7 @@ namespace Tizen.Network.IoTConnectivity
         /// <exception cref="NotSupportedException">Thrown when the iotcon is not supported.</exception>
         /// <exception cref="ArgumentException">Thrown when there is an invalid parameter.</exception>
         /// <exception cref="InvalidOperationException">Thrown when the operation is invalid.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// Representation repr = new Representation();
         /// ResourceInterfaces ifaces = new ResourceInterfaces (new List<string>(){ ResourceInterfaces.DefaultInterface });
         /// repr.Interface = ifaces;
@@ -187,7 +187,7 @@ namespace Tizen.Network.IoTConnectivity
         /// {
         ///     Console.WriteLine("Interface is {0}", iface);
         /// }
-        /// </code>
+        /// ]]></code>
         public ResourceInterfaces Interface
         {
             get
@@ -268,7 +268,7 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <value>List of Child resource representation.</value>
-        /// <code>
+        /// <code><![CDATA[
         /// Representation repr = new Representation();
         /// Representation child1 = new Representation();
         /// ResourceTypes types1 = new ResourceTypes(new List<string>() { "org.tizen.light" });
@@ -284,7 +284,7 @@ namespace Tizen.Network.IoTConnectivity
         /// {
         ///     Console.WriteLine("Exception caught : " + ex.Message);
         /// }
-        /// </code>
+        /// ]]></code>
         public ICollection<Representation> Children
         {
             get
index deb277c..e3a4535 100755 (executable)
@@ -59,7 +59,7 @@ namespace Tizen.Network.IoTConnectivity
         /// <seealso cref="ResourcePolicy"/>
         /// <exception cref="NotSupportedException">Thrown when the iotcon is not supported.</exception>
         /// <exception cref="OutOfMemoryException">Thrown when there is not enough memory.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// // Create a class which inherits from Resource
         /// public class DoorResource : Resource
         /// {
@@ -79,7 +79,7 @@ namespace Tizen.Network.IoTConnectivity
         /// ResourceInterfaces ifaces = new ResourceInterfaces(new List<string>(){ ResourceInterfaces.DefaultInterface });
         /// ResourceTypes types = new ResourceTypes(new List<string>(){ "oic.iot.door.new" });
         /// Resource resource = new DoorResource("/door/uri1", types, ifaces, ResourcePolicy.Discoverable | ResourcePolicy.Observable);
-        /// </code>
+        /// ]]></code>
         protected Resource(string uri, ResourceTypes types, ResourceInterfaces interfaces, ResourcePolicy policy)
         {
             UriPath = uri;
@@ -177,7 +177,7 @@ namespace Tizen.Network.IoTConnectivity
         /// <exception cref="NotSupportedException">Thrown when the iotcon is not supported.</exception>
         /// <exception cref="UnauthorizedAccessException">Thrown when an application does not have privilege to access.</exception>
         /// <exception cref="InvalidOperationException">Thrown when the operation is invalid.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceInterfaces ifaces = new ResourceInterfaces(new List<string>(){ ResourceInterfaces.DefaultInterface });
         /// ResourceTypes types = new ResourceTypes(new List<string>(){ "oic.iot.door.new.notify" });
         /// Resource resource = new DoorResource("/door/uri/new/notify", types, ifaces, ResourcePolicy.Discoverable | ResourcePolicy.Observable);
@@ -190,7 +190,7 @@ namespace Tizen.Network.IoTConnectivity
         ///      _attribute, 1 }
         /// };
         /// resource.Notify(repr, QualityOfService.High);
-        /// </code>
+        /// ]]></code>
         public void Notify(Representation representation, QualityOfService qos)
         {
             int ret = (int)IoTConnectivityError.None;
index 49a928b..8947003 100755 (executable)
@@ -95,10 +95,10 @@ namespace Tizen.Network.IoTConnectivity
         /// <exception cref="NotSupportedException">Thrown when the iotcon is not supported.</exception>
         /// <exception cref="OutOfMemoryException">Thrown when there is not enough memory.</exception>
         /// <exception cref="ArgumentException">Thrown when there is an invalid parameter.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceInterfaces resourceInterfaces = new ResourceInterfaces(new List<string>()
         ///     { ResourceInterfaces.LinkInterface, ResourceInterfaces.ReadonlyInterface });
-        /// </code>
+        /// ]]></code>
         public ResourceInterfaces(IEnumerable<string> ifaces)
         {
             int ret = Interop.IoTConnectivity.Common.ResourceInterfaces.Create(out _resourceInterfacesHandle);
@@ -157,11 +157,11 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <value>Count of interfaces in the list.</value>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceInterfaces resourceInterfaces = new ResourceInterfaces(new List<string>()
         ///     { ResourceInterfaces.LinkInterface, ResourceInterfaces.ReadonlyInterface });
         /// Console.WriteLine("There are {0} interfaces", resourceInterfaces.Count);
-        /// </code>
+        /// ]]></code>
         public int Count
         {
             get
@@ -212,14 +212,14 @@ namespace Tizen.Network.IoTConnectivity
         /// <since_tizen> 3 </since_tizen>
         /// <param name="item">The string data to delete from the resource ifaces.</param>
         /// <feature>http://tizen.org/feature/iot.ocf</feature>
-        /// <seealso cref="Add()"/>
+        /// <seealso cref="Add(string)"/>
         /// <exception cref="NotSupportedException">Thrown when the iotcon is not supported.</exception>
         /// <exception cref="ArgumentException">Thrown when there is an invalid parameter.</exception>
         /// <exception cref="InvalidOperationException">Thrown when the operation is invalid.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceInterfaces resourceInterfaces = new ResourceInterfaces(new List<string>(){ ResourceInterfaces.BatchInterface });
         /// resourceInterfaces.Add(ResourceInterfaces.BatchInterface);
-        /// </code>
+        /// ]]></code>
         public void Remove(string item)
         {
             bool isRemoved = _resourceInterfaces.Remove(item);
@@ -241,14 +241,14 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <returns>The enumerator.</returns>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceInterfaces resourceInterfaces = new ResourceInterfaces(new List<string>()
         ///     { ResourceInterfaces.LinkInterface, ResourceInterfaces.ReadonlyInterface });
         /// foreach(string item in resourceInterfaces)
         /// {
         ///     Console.WriteLine("Interface : {0}", item);
         /// }
-        /// </code>
+        /// ]]></code>
         public IEnumerator<string> GetEnumerator()
         {
             return _resourceInterfaces.GetEnumerator();
@@ -259,14 +259,14 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <returns>The enumerator.</returns>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceInterfaces resourceInterfaces = new ResourceInterfaces(new List<string>()
         ///     { ResourceInterfaces.LinkInterface, ResourceInterfaces.ReadonlyInterface });
         /// foreach(string item in resourceInterfaces)
         /// {
         ///     Console.WriteLine("Interface : {0}", item);
         /// }
-        /// </code>
+        /// ]]></code>
         IEnumerator IEnumerable.GetEnumerator()
         {
             return _resourceInterfaces.GetEnumerator();
index 736291e..f3353c1 100755 (executable)
@@ -306,11 +306,11 @@ namespace Tizen.Network.IoTConnectivity
         /// <since_tizen> 3 </since_tizen>
         /// <param name="item">The key value pair.</param>
         /// <feature>http://tizen.org/feature/iot.ocf</feature>
-        /// <seealso cref="Remove()"/>
-        /// <code>
+        /// <seealso cref="Remove(KeyValuePair{ushort, string})"/>
+        /// <code><![CDATA[
         /// ResourceOptions options = new ResourceOptions();
         /// options.Add(new KeyValuePair<ushort, string>(2050, "12345"));
-        /// </code>
+        /// ]]></code>
         public void Add(KeyValuePair<ushort, string> item)
         {
             Add(item.Key, item.Value);
@@ -348,13 +348,13 @@ namespace Tizen.Network.IoTConnectivity
         /// <since_tizen> 3 </since_tizen>
         /// <param name="item">The key value pair.</param>
         /// <returns>True if exists. Otherwise, false.</returns>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceOptions options = new ResourceOptions();
         /// options.Add(new KeyValuePair<ushort, string>(2050, "12345"));
         /// var isPresent = options.Contains(new KeyValuePair<ushort, string>(2050, "12345"));
         /// if (isPresent)
         ///     Console.WriteLine("Key value pair is present");
-        /// </code>
+        /// ]]></code>
         public bool Contains(KeyValuePair<ushort, string> item)
         {
             return _options.Contains(item);
@@ -366,13 +366,13 @@ namespace Tizen.Network.IoTConnectivity
         /// <since_tizen> 3 </since_tizen>
         /// <param name="array">The destination array.</param>
         /// <param name="arrayIndex">Index parameter.</param>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceOptions options = new ResourceOptions();
         /// options.Add(new KeyValuePair<ushort, string>(2050, "12345"));
         /// KeyValuePair<ushort, string>[] dest = new KeyValuePair<ushort, string>[options.Count];
         /// options.CopyTo(dest, 0);
         /// Console.WriteLine("Dest conatins ({0}, {1})", dest[0].Key, dest[0].Value);
-        /// </code>
+        /// ]]></code>
         public void CopyTo(KeyValuePair<ushort, string>[] array, int arrayIndex)
         {
             _options.CopyTo(array, arrayIndex);
@@ -385,13 +385,13 @@ namespace Tizen.Network.IoTConnectivity
         /// <param name="item">The key value pair to remove</param>
         /// <returns>True if operation is successful. Otherwise, false</returns>
         /// <feature>http://tizen.org/feature/iot.ocf</feature>
-        /// <seealso cref="Add()"/>
+        /// <seealso cref="Add(KeyValuePair{ushort, string})"/>
         /// <exception cref="ArgumentException">Thrown when there is an invalid parameter</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceOptions options = new ResourceOptions();
         /// options.Add(new KeyValuePair<ushort, string>(2050, "12345"));
         /// var result = options.Remove(new KeyValuePair<ushort, string>(2050, "12345"));
-        /// </code>
+        /// ]]></code>
         public bool Remove(KeyValuePair<ushort, string> item)
         {
             return Remove(item.Key);
@@ -402,7 +402,7 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <returns>Enumerator to option pairs.</returns>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceOptions options = new ResourceOptions();
         /// options.Add(new KeyValuePair<ushort, string>(2050, "sample1"));
         /// options.Add(new KeyValuePair<ushort, string>(2055, "sample2"));
@@ -410,7 +410,7 @@ namespace Tizen.Network.IoTConnectivity
         /// {
         ///     Console.WriteLine("key : {0}, value : {1}", pair.Key, pair.Value);
         /// }
-        /// </code>
+        /// ]]></code>
         public IEnumerator<KeyValuePair<ushort, string>> GetEnumerator()
         {
             return _options.GetEnumerator();
@@ -432,7 +432,7 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <returns>Enumerator to option pairs.</returns>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceOptions options = new ResourceOptions();
         /// options.Add(new KeyValuePair<ushort, string>(2050, "sample1"));
         /// options.Add(new KeyValuePair<ushort, string>(2055, "sample2"));
@@ -440,7 +440,7 @@ namespace Tizen.Network.IoTConnectivity
         /// {
         ///     Console.WriteLine("key : {0}, value : {1}", pair.Key, pair.Value);
         /// }
-        /// </code>
+        /// ]]></code>
         IEnumerator IEnumerable.GetEnumerator()
         {
             return _options.GetEnumerator();
index 7622ee0..1f1a478 100755 (executable)
@@ -381,11 +381,11 @@ namespace Tizen.Network.IoTConnectivity
         /// <since_tizen> 3 </since_tizen>
         /// <param name="item">The key value pair.</param>
         /// <feature>http://tizen.org/feature/iot.ocf</feature>
-        /// <seealso cref="Remove()"/>
-        /// <code>
+        /// <seealso cref="Remove(KeyValuePair{string, string})"/>
+        /// <code><![CDATA[
         /// ResourceQuery query = new ResourceQuery();
         /// query.Add(new KeyValuePair<string, string>("key1", "value1"));
-        /// </code>
+        /// ]]></code>
         public void Add(KeyValuePair<string, string> item)
         {
             Add(item.Key, item.Value);
@@ -424,13 +424,13 @@ namespace Tizen.Network.IoTConnectivity
         /// <since_tizen> 3 </since_tizen>
         /// <param name="item">The key value pair.</param>
         /// <returns>True if exists. Otherwise, false.</returns>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceQuery query = new ResourceQuery();
         /// query.Add(new KeyValuePair<string, string>("key1", "value1"));
         /// var isPresent = query.Contains(new KeyValuePair<string, string>("key1", "value1"));
         /// if (isPresent)
         ///     Console.WriteLine("Key value pair is present");
-        /// </code>
+        /// ]]></code>
         public bool Contains(KeyValuePair<string, string> item)
         {
             return _query.Contains(item);
@@ -442,13 +442,13 @@ namespace Tizen.Network.IoTConnectivity
         /// <since_tizen> 3 </since_tizen>
         /// <param name="array">The destination array.</param>
         /// <param name="arrayIndex">Index parameter.</param>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceQuery query = new ResourceQuery();
         /// query.Add(new KeyValuePair<string, string>("key1", "value1"));
         /// KeyValuePair<string, string>[] dest = new KeyValuePair<string, string>[query.Count];
         /// query.CopyTo(dest, 0);
         /// Console.WriteLine("Dest conatins ({0}, {1})", dest[0].Key, dest[0].Value);
-        /// </code>
+        /// ]]></code>
         public void CopyTo(KeyValuePair<string, string>[] array, int arrayIndex)
         {
             _query.CopyTo(array, arrayIndex);
@@ -461,13 +461,13 @@ namespace Tizen.Network.IoTConnectivity
         /// <param name="item">The key value pair to remove.</param>
         /// <returns>True if operation is successful. Otherwise, false.</returns>
         /// <feature>http://tizen.org/feature/iot.ocf</feature>
-        /// <seealso cref="Add()"/>
+        /// <seealso cref="Add(KeyValuePair{string, string})"/>
         /// <exception cref="ArgumentException">Thrown when there is an invalid parameter.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceQuery query = new ResourceQuery();
         /// query.Add(new KeyValuePair<string, string>("key1", "value1"));
         /// var result = query.Remove(new KeyValuePair<string, string>("key1", "value1"));
-        /// </code>
+        /// ]]></code>
         public bool Remove(KeyValuePair<string, string> item)
         {
             return Remove(item.Key);
@@ -478,7 +478,7 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <returns>Enumerator to query pairs.</returns>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceQuery query = new ResourceQuery();
         /// query.Add(new KeyValuePair<string, string>("key1", "value1"));
         /// query.Add(new KeyValuePair<string, string>("key2", "value2"));
@@ -486,7 +486,7 @@ namespace Tizen.Network.IoTConnectivity
         /// {
         ///     Console.WriteLine("key : {0}, value : {1}", pair.Key, pair.Value);
         /// }
-        /// </code>
+        /// ]]></code>
         public IEnumerator<KeyValuePair<string, string>> GetEnumerator()
         {
             return _query.GetEnumerator();
@@ -497,7 +497,7 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <returns>The enumerator to the query pairs.</returns>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceQuery query = new ResourceQuery();
         /// query.Add(new KeyValuePair<string, string>("key1", "value1"));
         /// query.Add(new KeyValuePair<string, string>("key2", "value2"));
@@ -505,7 +505,7 @@ namespace Tizen.Network.IoTConnectivity
         /// {
         ///     Console.WriteLine("key : {0}, value : {1}", pair.Key, pair.Value);
         /// }
-        /// </code>
+        /// ]]></code>
         IEnumerator IEnumerable.GetEnumerator()
         {
             return _query.GetEnumerator();
index 8f91afb..4205bde 100755 (executable)
@@ -63,9 +63,9 @@ namespace Tizen.Network.IoTConnectivity
         /// <param name="types">List of resource types.</param>
         /// <feature>http://tizen.org/feature/iot.ocf</feature>
         /// <exception cref="ArgumentException">Thrown when there is an invalid parameter.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceTypes types = new ResourceTypes(new List<string>() { "org.tizen.light", "oic.if.room" });
-        /// </code>
+        /// ]]></code>
         public ResourceTypes(IEnumerable<string> types)
         {
             int ret = Interop.IoTConnectivity.Common.ResourceTypes.Create(out _resourceTypeHandle);
@@ -117,10 +117,10 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <value>Count of types in the list.</value>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceTypes types = new ResourceTypes(new List<string>() { "org.tizen.light", "oic.if.room" });
         /// Console.WriteLine("There are {0} items", types.Count);
-        /// </code>
+        /// ]]></code>
         public int Count
         {
             get
@@ -174,14 +174,14 @@ namespace Tizen.Network.IoTConnectivity
         /// <since_tizen> 3 </since_tizen>
         /// <param name="item">The string data to delete from the resource types.</param>
         /// <feature>http://tizen.org/feature/iot.ocf</feature>
-        /// <seealso cref="Add()"/>
+        /// <seealso cref="Add(string)"/>
         /// <exception cref="NotSupportedException">Thrown when the iotcon is not supported.</exception>
         /// <exception cref="ArgumentException">Thrown when there is an invalid parameter.</exception>
         /// <exception cref="InvalidOperationException">Thrown when the operation is invalid.</exception>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceTypes resourceTypes = new ResourceTypes(new List<string>() { "org.tizen.light", "oic.if.room" });
         /// resourceTypes.Remove("oic.if.room");
-        /// </code>
+        /// ]]></code>
         public void Remove(string item)
         {
             int ret = Interop.IoTConnectivity.Common.ResourceTypes.Remove(_resourceTypeHandle, item);
@@ -199,13 +199,13 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <returns>The enumerator.</returns>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceTypes resourceTypes = new ResourceTypes(new List<string>() { "org.tizen.light", "oic.if.room" });
         /// foreach(string item in resourceTypes)
         /// {
         ///     Console.WriteLine("Type : {0}", item);
         /// }
-        /// </code>
+        /// ]]></code>
         public IEnumerator<string> GetEnumerator()
         {
             return _resourceTypes.GetEnumerator();
@@ -216,13 +216,13 @@ namespace Tizen.Network.IoTConnectivity
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
         /// <returns>The enumerator.</returns>
-        /// <code>
+        /// <code><![CDATA[
         /// ResourceTypes resourceTypes = new ResourceTypes(new List<string>() { "org.tizen.light", "oic.if.room" });
         /// foreach(string item in resourceTypes)
         /// {
         ///     Console.WriteLine("Type : {0}", item);
         /// }
-        /// </code>
+        /// ]]></code>
         IEnumerator IEnumerable.GetEnumerator()
         {
             return _resourceTypes.GetEnumerator();
index 7780694..ab2430a 100644 (file)
@@ -115,11 +115,17 @@ namespace Tizen.Network.Mtp
             _deviceHandle = handle;
         }
 
+        /// <summary>
+        /// MtpDevice destructor.
+        /// </summary>
         ~MtpDevice()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index 5362b1e..06d318b 100644 (file)
@@ -30,19 +30,57 @@ namespace Tizen.Network.Mtp
     /// <since_tizen> 5 </since_tizen>
     public enum MtpError
     {
+        /// <summary>
+        /// Successful.
+        /// </summary>
         None = ErrorCode.None,
+        /// <summary>
+        /// I/O Error.
+        /// </summary>
         IoError = ErrorCode.IoError,
+        /// <summary>
+        /// Invalid Parameter.
+        /// </summary>
         InvalidParameterError = ErrorCode.InvalidParameter,
+        /// <summary>
+        /// Out of memory.
+        /// </summary>
         OutOfMemoryError = ErrorCode.OutOfMemory,
+        /// <summary>
+        /// Permission Denied.
+        /// </summary>
         PermissionDeniedError = ErrorCode.PermissionDenied,
+        /// <summary>
+        /// Not Supported.
+        /// </summary>
         NotSupportedError = ErrorCode.NotSupported,
-
+        /// <summary>
+        /// Not available communication with Mtp framework.
+        /// </summary>
         CommunicationError = MtpErrorValue.Base | 0x01,
+        /// <summary>
+        /// Controller Error.
+        /// </summary>
         ControllerError = MtpErrorValue.Base | 0x02,
+        /// <summary>
+        /// No device.
+        /// </summary>
         NoDeviceError = MtpErrorValue.Base | 0x03,
+        /// <summary>
+        /// Not Initialized.
+        /// </summary>
         NotInitializedError = MtpErrorValue.Base | 0x04,
+        /// <summary>
+        /// Not Activated.
+        /// </summary>
         NotActivatedError = MtpErrorValue.Base | 0x05,
+        /// <summary>
+        /// Not Activated Communication.
+        /// </summary>
         NotActivatedCommunicationError = MtpErrorValue.Base | 0x06,
+        /// <summary>
+        /// Plugin Fail.
+        /// </summary>
         PluginFailError = MtpErrorValue.Base | 0x07
     }
 
index 6607e13..d8209c4 100644 (file)
@@ -361,11 +361,17 @@ namespace Tizen.Network.Mtp
             _objectHandle = objectHandle;
         }
 
+        /// <summary>
+        /// MtpObject destructor.
+        /// </summary>
         ~MtpObject()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index c6e38b4..df192e6 100644 (file)
@@ -136,11 +136,17 @@ namespace Tizen.Network.Mtp
             _storageHandle = storageHandle;
         }
 
+        /// <summary>
+        /// MtpStorage destructor.
+        /// </summary>
         ~MtpStorage()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index 1fadabb..e445da3 100755 (executable)
@@ -141,11 +141,17 @@ namespace Tizen.Network.Nfc
         {
         }
 
+        /// <summary>
+        /// NfcCardEmulationAdpater destructor.
+        /// </summary>
         ~NfcCardEmulationAdapter()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index fd6849e..71d5f00 100644 (file)
@@ -25,29 +25,101 @@ namespace Tizen.Network.Nfc
     /// <since_tizen> 3 </since_tizen>
     public enum NfcError
     {
+        /// <summary>
+        /// Successful.
+        /// </summary>
         None = ErrorCode.None,
+        /// <summary>
+        /// I/O Error.
+        /// </summary>
         IoError = ErrorCode.IoError,
+        /// <summary>
+        /// Invalid Parameter.
+        /// </summary>
         InvalidParameterError = ErrorCode.InvalidParameter,
+        /// <summary>
+        /// Out of Memory.
+        /// </summary>
         OutOfMemoryError = ErrorCode.OutOfMemory,
+        /// <summary>
+        /// Timed Out.
+        /// </summary>
         TimedOutError = ErrorCode.TimedOut,
+        /// <summary>
+        /// Device Busy.
+        /// </summary>
         DeviceBusyError = ErrorCode.ResourceBusy,
+        /// <summary>
+        /// Not Supported.
+        /// </summary>
         NotSupportedError = ErrorCode.NotSupported,
+        /// <summary>
+        /// Permission Denied.
+        /// </summary>
         PermissionDeniedError = ErrorCode.PermissionDenied,
+        /// <summary>
+        /// Operation Failed.
+        /// </summary>
         OperationFailedError = -0x01C20000 | 0x01,
+        /// <summary>
+        /// Invalied Ndef Message.
+        /// </summary>
         InvalidNdefMessageError = -0x01C20000 | 0x02,
+        /// <summary>
+        /// Invalid Record Type.
+        /// </summary>
         InvalidRecordTypeError = -0x01C20000 | 0x03,
+        /// <summary>
+        /// No Device.
+        /// </summary>
         NoDeviceError = -0x01C20000 | 0x04,
+        /// <summary>
+        /// Not Activated.
+        /// </summary>
         NotActivatedError = -0x01C20000 | 0x05,
+        /// <summary>
+        /// Already Activated.
+        /// </summary>
         AlreadyActivatedError = -0x01C20000 | 0x06,
+        /// <summary>
+        /// Already Deactivated.
+        /// </summary>
         AlreadyDeactivatedError = -0x01C20000 | 0x07,
+        /// <summary>
+        /// Read Only Ndef.
+        /// </summary>
         ReadOnlyNdefError = -0x01C20000 | 0x08,
+        /// <summary>
+        /// No Space On Ndef.
+        /// </summary>
         NoSpaceOnNdefError = -0x01C20000 | 0x09,
+        /// <summary>
+        /// No Ndef Message
+        /// </summary>
         NoNdefMessageError = -0x01C20000 | 0x0a,
+        /// <summary>
+        /// No Ndef Format
+        /// </summary>
         NotNdefFormatError = -0x01C20000 | 0x0b,
+        /// <summary>
+        /// Security Restricted
+        /// </summary>
         SecurityRestrictedError = -0x01C20000 | 0x0c,
+        /// <summary>
+        /// Illegal State
+        /// </summary>
         IllegalStateError = -0x01C20000 | 0x0d,
+        /// <summary>
+        /// Not Initialized
+        /// </summary>
         NotInitializedError = -0x01C20000 | 0x0e,
+        /// <summary>
+        /// Tag Not Supported
+        /// </summary>
         TagNotSupportedError = -0x01C20000 | 0x0f,
+        /// <summary>
+        /// Aid Already Registered
+        /// </summary>
         AidAlreadyRegisteredError = -0x01C20000 | 0x10
     }
 
index 1f74fcc..ae61d0d 100755 (executable)
@@ -70,11 +70,17 @@ namespace Tizen.Network.Nfc
             _messageHandle = messageHandle;
         }
 
+        /// <summary>
+        /// NfcNdefMessage destructor.
+        /// </summary>
         ~NfcNdefMessage()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index 25d330d..0eb894e 100755 (executable)
@@ -283,12 +283,18 @@ namespace Tizen.Network.Nfc
                 NfcErrorFactory.ThrowNfcException(ret);
             }
         }
-        
+
+        /// <summary>
+        /// NfcNdefRecord destructor.
+        /// </summary>
         ~NfcNdefRecord()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index 441bb08..15531de 100755 (executable)
@@ -56,11 +56,17 @@ namespace Tizen.Network.Nfc
             RegisterP2pDataReceivedEvent();
         }
 
+        /// <summary>
+        /// NfcP2p destructor.
+        /// </summary>
         ~NfcP2p()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
@@ -150,11 +156,17 @@ namespace Tizen.Network.Nfc
             _snepHandle = handle;
         }
 
+        /// <summary>
+        /// NfcSnep Distructor
+        /// </summary>
         ~NfcSnep()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index 6ee377b..3e50575 100755 (executable)
@@ -55,11 +55,17 @@ namespace Tizen.Network.Nfc
             RegisterP2pTargetDiscoveredEvent();
         }
 
+        /// <summary>
+        /// NfcP2pAdapter destructor
+        /// </summary>
         ~NfcP2pAdapter()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index 228890d..0bcaf31 100755 (executable)
@@ -34,11 +34,17 @@ namespace Tizen.Network.Nfc
             _secureElementHandle = handle;
         }
 
+        /// <summary>
+        /// NfcSecureElement destructor.
+        /// </summary>
         ~NfcSecureElement()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index 883a0d3..f7be13c 100755 (executable)
@@ -108,11 +108,17 @@ namespace Tizen.Network.Nfc
             _tagHandle = handle;
         }
 
+        /// <summary>
+        /// NfcTag destructor.
+        /// </summary>
         ~NfcTag()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index 0f0dbc2..0c3c392 100755 (executable)
@@ -55,11 +55,17 @@ namespace Tizen.Network.Nfc
             RegisterTagDiscoveredEvent();
         }
 
+        /// <summary>
+        /// NfcTagAdapter destructor.
+        /// </summary>
         ~NfcTagAdapter()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index e6a5255..e9015ac 100644 (file)
@@ -115,11 +115,17 @@ namespace Tizen.Network.Smartcard
             _channelHandle = channelHandle;
         }
 
+        /// <summary>
+        /// SmartcardChannel destructor.
+        /// </summary>
         ~SmartcardChannel()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index 13e7c99..9bfca63 100644 (file)
@@ -74,11 +74,17 @@ namespace Tizen.Network.Smartcard
             _readerHandle = handle;
         }
 
+        /// <summary>
+        /// SmartcardReader destructor.
+        /// </summary>
         ~SmartcardReader()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index 8ecc7aa..02815f4 100644 (file)
@@ -110,11 +110,17 @@ namespace Tizen.Network.Smartcard
             _sessionHandle = sessionHandle;
         }
 
+        /// <summary>
+        /// SmartcardSession destructor.
+        /// </summary>
         ~SmartcardSession()
         {
             Dispose(false);
         }
 
+        /// <summary>
+        /// Dispose
+        /// </summary>
         public void Dispose()
         {
             Dispose(true);
index f6da610..56fa50b 100644 (file)
@@ -39,6 +39,11 @@ The key design principles of the TEE Client API are:
        the format of the messages which pass over the channel, or the protocols used by specific
        Trusted Applications.
 
+For security reasons, each device vendor usually uses their own TEE solution.
+If you intend your LibTeec application to be used on a real device,
+you must test your application on the TEE solution provided by the specific vendor.
+When developing and installing your trusted application, refer to the documentation provided by the vendor.
+
 ## Example
 The following example demonstrates how to invoke command on Trused Application.
 
index 6eaad73..7fa3669 100644 (file)
@@ -86,6 +86,19 @@ namespace Tizen.System
         private const string LogTag = "Tizen.System.Feedback";
 
         private readonly FeedbackPattern[] Pattern = new FeedbackPattern[39];
+
+        /// <summary>
+        /// Constructor of Feedback class
+        /// </summary>
+        /// <since_tizen> 3 </since_tizen>
+        /// <exception cref="NotSupportedException">Thrown when failed becuase the device (haptic, sound) is not supported.</exception>
+        /// <exception cref="InvalidOperationException">Thrown when failed because of a system error.</exception>
+        /// <privilege>http://tizen.org/privilege/haptic</privilege>
+        /// <example>
+        /// <code>
+        /// Feedback feedback = new Feedback();
+        /// </code>
+        /// </example>
         public Feedback()
         {
             Pattern[0].PatternNumber = 0;
@@ -181,6 +194,9 @@ namespace Tizen.System
             }
         }
 
+        /// <summary>
+        /// Finalizes an instance of the Feedback class.
+        /// </summary>
         ~Feedback()
         {
             Interop.Feedback.FeedbackError res = (Interop.Feedback.FeedbackError)Interop.Feedback.Deinitialize();
index 13da678..a2b5553 100755 (executable)
@@ -21,6 +21,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the IncomingCallRingtoneChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class IncomingCallRingtoneChangedEventArgs : EventArgs
     {
         private readonly string _incomingCallRingtone = null;
@@ -44,6 +46,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the WallpaperHomeScreenChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class WallpaperHomeScreenChangedEventArgs : EventArgs
     {
         private readonly string _wallpaperHomeScreen = null;
@@ -67,6 +71,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the WallpaperLockScreenChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class WallpaperLockScreenChangedEventArgs : EventArgs
     {
         private readonly string _wallpaperLockScreen = null;
@@ -90,6 +96,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the FontSizeChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class FontSizeChangedEventArgs : EventArgs
     {
         private readonly SystemSettingsFontSize _fontSize;
@@ -113,6 +121,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the FontTypeChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class FontTypeChangedEventArgs : EventArgs
     {
         private readonly string _fontType = null;
@@ -136,6 +146,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the MotionActivationChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class MotionActivationSettingChangedEventArgs : EventArgs
     {
         private readonly bool _motionActivation;
@@ -159,6 +171,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the EmailAlertRingtoneChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class EmailAlertRingtoneChangedEventArgs : EventArgs
     {
         private readonly string _emailAlertRingtone = null;
@@ -182,6 +196,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the UsbDebuggingSettingChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class UsbDebuggingSettingChangedEventArgs : EventArgs
     {
         private readonly bool _usbDebuggingEnabled;
@@ -205,6 +221,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the Data3GNetworkSettingChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class Data3GNetworkSettingChangedEventArgs : EventArgs
     {
         private readonly bool _data3GNetworkEnabled;
@@ -228,6 +246,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the LockscreenAppChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class LockscreenAppChangedEventArgs : EventArgs
     {
         private readonly string _lockscreenApp = null;
@@ -251,6 +271,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the LocaleCountryChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class LocaleCountryChangedEventArgs : EventArgs
     {
         private readonly string _localeCountry = null;
@@ -275,6 +297,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the LocaleLanguageChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class LocaleLanguageChangedEventArgs : EventArgs
     {
         private readonly string _localeLanguage = null;
@@ -299,6 +323,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the LocaleTimeFormat24HourChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class LocaleTimeFormat24HourSettingChangedEventArgs : EventArgs
     {
         private readonly bool _localeTimeFormat24Hour;
@@ -322,6 +348,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the LocaleTimeZoneChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class LocaleTimeZoneChangedEventArgs : EventArgs
     {
         private readonly string _localeTimeZone = null;
@@ -345,6 +373,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the TimeChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class TimeChangedEventArgs : EventArgs
     {
         private readonly int _time;
@@ -368,6 +398,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the SoundLockChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class SoundLockSettingChangedEventArgs : EventArgs
     {
         private readonly bool _soundLock;
@@ -391,6 +423,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the SoundSilentModeChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class SoundSilentModeSettingChangedEventArgs : EventArgs
     {
         private readonly bool _soundSilentMode;
@@ -414,6 +448,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the SoundTouchChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class SoundTouchSettingChangedEventArgs : EventArgs
     {
         private readonly bool _soundTouch;
@@ -437,6 +473,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the DisplayScreenRotationAutoChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class DisplayScreenRotationAutoSettingChangedEventArgs : EventArgs
     {
         private readonly bool _displayScreenRotationAuto;
@@ -460,6 +498,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the DeviceNameChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class DeviceNameChangedEventArgs : EventArgs
     {
         private readonly string _deviceName = null;
@@ -483,6 +523,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the MotionSettingChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class MotionSettingChangedEventArgs : EventArgs
     {
         private readonly bool _motionEnabled;
@@ -506,6 +548,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the NetworkWifiNotificationChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class NetworkWifiNotificationSettingChangedEventArgs : EventArgs
     {
         private readonly bool _networkWifiNotification;
@@ -529,6 +573,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the NetworkFlightModeChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class NetworkFlightModeSettingChangedEventArgs : EventArgs
     {
         private readonly bool _networkFlightMode;
@@ -552,6 +598,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the ScreenBacklightTimeChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class ScreenBacklightTimeChangedEventArgs : EventArgs
     {
         private readonly int _screenBacklightTime;
@@ -575,6 +623,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the SoundNotificationChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class SoundNotificationChangedEventArgs : EventArgs
     {
         private readonly string _soundNotification = null;
@@ -598,6 +648,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the SoundNotificationRepetitionPeriodChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class SoundNotificationRepetitionPeriodChangedEventArgs : EventArgs
     {
         private readonly int _soundNotificationRepetitionPeriod;
@@ -621,6 +673,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the LockStateChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class LockStateChangedEventArgs : EventArgs
     {
         private readonly SystemSettingsIdleLockState _lockState;
@@ -644,6 +698,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the AdsIdChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class AdsIdChangedEventArgs : EventArgs
     {
         private readonly string _adsId = null;
@@ -667,6 +723,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the UltraDataSaveChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class UltraDataSaveChangedEventArgs : EventArgs
     {
         private readonly SystemSettingsUdsState _ultraDataSave = SystemSettingsUdsState.UdsOff;
@@ -690,6 +748,8 @@ namespace Tizen.System
     /// <summary>
     /// EventArgs type for the UltraDataSavePackageListChanged event.
     /// </summary>
+       /// <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+       /// <privlevel>platform</privlevel>
     public class UltraDataSavePackageListChangedEventArgs : EventArgs
     {
         private readonly string _ultraDataSavePackageList = null;