Merge "[Tizen.Multimedia] Fix XML Doc warnings" preview1-00295
authorHaesu Gwon <haesu.gwon@samsung.com>
Thu, 12 Oct 2017 08:04:57 +0000 (08:04 +0000)
committerGerrit Code Review <gerrit@review.ap-northeast-2.compute.internal>
Thu, 12 Oct 2017 08:04:57 +0000 (08:04 +0000)
56 files changed:
src/Tizen.Applications.AttachPanel/Interop/Interop.AttachPanel.cs
src/Tizen.Applications.AttachPanel/Interop/Interop.Libraries.cs
src/Tizen.Applications.AttachPanel/Tizen.Applications.AttachPanel.csproj
src/Tizen.Applications.AttachPanel/Tizen.Applications.AttachPanel.sln
src/Tizen.Applications.AttachPanel/Tizen.Applications.AttachPanel/AttachPanel.cs
src/Tizen.Applications.AttachPanel/Tizen.Applications.AttachPanel/AttachPanelInternal.cs
src/Tizen.Applications.AttachPanel/Tizen.Applications.AttachPanel/ResultEventArgs.cs
src/Tizen.Applications.AttachPanel/Tizen.Applications.AttachPanel/StateEventArgs.cs
src/Tizen.Applications.Notification/Tizen.Applications.Notifications/Notification.cs
src/Tizen.Applications.Notification/Tizen.Applications.Notifications/NotificationManager.cs
src/Tizen.Applications.Notification/Tizen.Applications.Notifications/NotificationSafeHandle.cs
src/Tizen.Applications.NotificationEventListener/Tizen.Applications.NotificationEventListener/NotificationEventArgs.cs
src/Tizen.Applications.NotificationEventListener/Tizen.Applications.NotificationEventListener/NotificationEventArgsStyle.cs
src/Tizen.Applications.NotificationEventListener/Tizen.Applications.NotificationEventListener/NotificationListenerManager.cs
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.Radio/Radio/Radio.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/Interop/Interop.Types.cs
src/Tizen.Security.TEEC/Tizen.Security.TEEC/Libteec.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
test/ElmSharp.Test/TC/EntryTest1.cs

index 3718191..6d0d864 100755 (executable)
@@ -2,8 +2,14 @@ using System;
 using System.Runtime.InteropServices;
 using Tizen.Applications;
 
+/// <summary>
+/// Interoperability support class for Tizen APIs
+/// </summary>
 internal static partial class Interop
 {
+    /// <summary>
+    /// Interoperability support class for the attach panel APIs
+    /// </summary>
     internal static partial class AttachPanel
     {
         internal enum ErrorCode : int
index 4b4049b..b0f7efa 100755 (executable)
@@ -1,5 +1,11 @@
+/// <summary>
+/// Interoperability support class for the attach panel APIs
+/// </summary>
 internal static partial class Interop
 {
+    /// <summary>
+    /// Interoperability support class for the API library
+    /// </summary>
     internal static partial class Libraries
     {
         public const string AttachPanel = "libattach-panel.so.0.1.0";
index 020b2cb..b16fa50 100755 (executable)
@@ -5,6 +5,7 @@
   </PropertyGroup>
 
   <ItemGroup>
+    <ProjectReference Include="..\ElmSharp\ElmSharp.csproj" />
     <ProjectReference Include="..\Tizen.Applications.Common\Tizen.Applications.Common.csproj" />
   </ItemGroup>
 
index 8eeff18..644bd5d 100755 (executable)
@@ -1,9 +1,12 @@
 ï»¿
 Microsoft Visual Studio Solution File, Format Version 12.00
 # Visual Studio 15
-VisualStudioVersion = 15.0.26430.12
+VisualStudioVersion = 15.0.26730.12
 MinimumVisualStudioVersion = 10.0.40219.1
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.Applications.AttachPanel", "Tizen.Applications.AttachPanel.csproj", "{C8C93D46-CACE-4BF1-8B50-6A6A00967045}"
+       ProjectSection(ProjectDependencies) = postProject
+               {AF2CEEB1-B3B2-4E2D-8854-A54871CD0D1C} = {AF2CEEB1-B3B2-4E2D-8854-A54871CD0D1C}
+       EndProjectSection
 EndProject
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.Applications.Common", "..\Tizen.Applications.Common\Tizen.Applications.Common.csproj", "{D2B5F854-4FE1-473C-A8E3-53ABB0A966AA}"
 EndProject
@@ -11,6 +14,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen", "..\Tizen\Tizen.csp
 EndProject
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tizen.Log", "..\Tizen.Log\Tizen.Log.csproj", "{AFF3D5BA-42DA-40CE-BC57-0DC1E92673B9}"
 EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ElmSharp", "..\ElmSharp\ElmSharp.csproj", "{AF2CEEB1-B3B2-4E2D-8854-A54871CD0D1C}"
+EndProject
 Global
        GlobalSection(SolutionConfigurationPlatforms) = preSolution
                Debug|Any CPU = Debug|Any CPU
@@ -33,8 +38,15 @@ Global
                {AFF3D5BA-42DA-40CE-BC57-0DC1E92673B9}.Debug|Any CPU.Build.0 = Debug|Any CPU
                {AFF3D5BA-42DA-40CE-BC57-0DC1E92673B9}.Release|Any CPU.ActiveCfg = Release|Any CPU
                {AFF3D5BA-42DA-40CE-BC57-0DC1E92673B9}.Release|Any CPU.Build.0 = Release|Any CPU
+               {AF2CEEB1-B3B2-4E2D-8854-A54871CD0D1C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {AF2CEEB1-B3B2-4E2D-8854-A54871CD0D1C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {AF2CEEB1-B3B2-4E2D-8854-A54871CD0D1C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {AF2CEEB1-B3B2-4E2D-8854-A54871CD0D1C}.Release|Any CPU.Build.0 = Release|Any CPU
        EndGlobalSection
        GlobalSection(SolutionProperties) = preSolution
                HideSolutionNode = FALSE
        EndGlobalSection
+       GlobalSection(ExtensibilityGlobals) = postSolution
+               SolutionGuid = {7169FEAE-EE0D-4B29-B710-F504A6B82E8C}
+       EndGlobalSection
 EndGlobal
index 3c220bd..33c777b 100755 (executable)
@@ -1,3 +1,4 @@
+using ElmSharp;
 using System;
 
 namespace Tizen.Applications.AttachPanel
@@ -14,15 +15,49 @@ namespace Tizen.Applications.AttachPanel
         /// <param name="conformant">The caller's conformant</param>
         /// <exception cref="OutOfMemoryException">Thrown when an attempt to allocate memory fails.</exception>
         /// <exception cref="InvalidOperationException">Thrown when the AttachPanel is already exist or the <paramref name="conformant"/> is not a conformant object</exception>
-        public AttachPanel(IntPtr conformant)
+        public AttachPanel(EvasObject conformant)
         {
             if (conformant == IntPtr.Zero)
             {
                 throw new ArgumentNullException("Use the value property, not null value");
             }
+
+            IntPtr candidateAttachPanel = new IntPtr();
+            Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.CreateAttachPanel(conformant, ref candidateAttachPanel);
+            CheckException(err);
+
+            Tizen.Log.Debug("AttachPanelSharp", "Success to create an AttachPanel Instance");
+            isCreationSucceed = true;
+            _attachPanel = candidateAttachPanel;
+
+            if (_eventEventHandler == null)
+            {
+                StateEventListenStart();
+            }
+
+            if (_resultEventHandler == null)
+            {
+                ResultEventListenStart();
+            }
+        }
+
+        /// <summary>
+        /// Represents immutable class for attach panel.
+        /// </summary>
+        /// <since_tizen> 3 </since_tizen>
+        /// <param name="conformant">The caller's conformant</param>
+        /// <exception cref="OutOfMemoryException">Thrown when an attempt to allocate memory fails.</exception>
+        /// <exception cref="InvalidOperationException">Thrown when the AttachPanel is already exist or the <paramref name="conformant"/> is not a conformant object</exception>
+        public AttachPanel(Conformant conformant)
+        {
+            if (conformant == IntPtr.Zero)
+            {
+                throw new ArgumentNullException("Use the value property, not null value");
+            }
+
             IntPtr candidateAttachPanel = new IntPtr();
             Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.CreateAttachPanel(conformant, ref candidateAttachPanel);
-            checkException(err);
+            CheckException(err);
 
             Tizen.Log.Debug("AttachPanelSharp", "Success to create an AttachPanel Instance");
             isCreationSucceed = true;
@@ -48,7 +83,7 @@ namespace Tizen.Applications.AttachPanel
                 _attachPanel != IntPtr.Zero)
             {
                 Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.DestroyAttachPanel(_attachPanel);
-                checkException(err);
+                CheckException(err);
                 _attachPanel = IntPtr.Zero;
             }
         }
@@ -57,13 +92,14 @@ namespace Tizen.Applications.AttachPanel
         /// Gets the state of the AttachPanel.
         /// </summary>
         /// <value>The AttachPanel window state</value>
-        public int State
+        public StateType State
         {
             get
             {
-                int state;
-                Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.GetState(_attachPanel, out state);
-                checkException(err);
+                int interopState;
+                Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.GetState(_attachPanel, out interopState);
+                CheckException(err);
+                StateType state = (StateType)Enum.ToObject(typeof(StateType), interopState);
                 return state;
             }
         }
@@ -72,14 +108,14 @@ namespace Tizen.Applications.AttachPanel
         /// Gets the value that indicates whether the AttachPanel is visible.
         /// </summary>
         /// <value>visible value of AttachPanel state</value>
-        public int Visible
+        public bool Visible
         {
             get
             {
                 int visible;
                 Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.GetVisibility(_attachPanel, out visible);
-                checkException(err);
-                return visible;
+                CheckException(err);
+                return (visible == 1);
             }
         }
 
@@ -121,8 +157,9 @@ namespace Tizen.Applications.AttachPanel
             {
                 bundle = extraData.SafeBundleHandle.DangerousGetHandle();
             }
+
             Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.AddCategory(_attachPanel, (int)category, bundle);
-            checkException(err);
+            CheckException(err);
         }
 
         /// <summary>
@@ -134,7 +171,7 @@ namespace Tizen.Applications.AttachPanel
         public void RemoveCategory(ContentCategory category)
         {
             Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.RemoveCategory(_attachPanel, (int)category);
-            checkException(err);
+            CheckException(err);
         }
 
         /// <summary>
@@ -147,9 +184,9 @@ namespace Tizen.Applications.AttachPanel
         /// <exception cref="OutOfMemoryException">Thrown when an attempt to allocate memory fails.</exception>
         public void SetExtraData(ContentCategory category, Bundle extraData)
         {
-            if(extraData == null)
+            if (extraData == null)
             {
-                checkException(Interop.AttachPanel.ErrorCode.InvalidParameter);
+                CheckException(Interop.AttachPanel.ErrorCode.InvalidParameter);
             }
 
             IntPtr bundle = IntPtr.Zero;
@@ -157,8 +194,9 @@ namespace Tizen.Applications.AttachPanel
             {
                 bundle = extraData.SafeBundleHandle.DangerousGetHandle();
             }
+
             Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.SetExtraData(_attachPanel, (int)category, bundle);
-            checkException(err);
+            CheckException(err);
         }
 
         /// <summary>
@@ -168,24 +206,25 @@ namespace Tizen.Applications.AttachPanel
         public void Show()
         {
             Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.Show(_attachPanel);
-            checkException(err);
+            CheckException(err);
         }
 
         /// <summary>
         /// Shows the attach panel and selects whether or not to animate
         /// </summary>
+        /// <param name="animation">A flag which turn on or turn off the animation while attach panel showing.</param>
         /// <exception cref="InvalidOperationException">Thrown when the AttachPanel is destroyed</exception>
         public void Show(bool animation)
         {
             if (animation)
             {
                 Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.Show(_attachPanel);
-                checkException(err);
+                CheckException(err);
             }
             else
             {
                 Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.ShowWithoutAnimation(_attachPanel);
-                checkException(err);
+                CheckException(err);
             }
         }
 
@@ -196,24 +235,25 @@ namespace Tizen.Applications.AttachPanel
         public void Hide()
         {
             Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.Hide(_attachPanel);
-            checkException(err);
+            CheckException(err);
         }
 
         /// <summary>
         /// Hides the attach panel and selects whether or not to animate
         /// </summary>
+        /// <param name="animation">A flag which turn on or turn off the animation while attach panel hiding.</param>
         /// <exception cref="InvalidOperationException">Thrown when the AttachPanel is destroyed</exception>
         public void Hide(bool animation)
         {
             if (animation)
             {
                 Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.Hide(_attachPanel);
-                checkException(err);
+                CheckException(err);
             }
             else
             {
                 Interop.AttachPanel.ErrorCode err = Interop.AttachPanel.HideWithoutAnimation(_attachPanel);
-                checkException(err);
+                CheckException(err);
             }
         }
 
@@ -228,8 +268,10 @@ namespace Tizen.Applications.AttachPanel
                 {
                     StateEventListenStart();
                 }
+
                 _eventEventHandler += value;
             }
+
             remove
             {
                 _eventEventHandler -= value;
@@ -251,8 +293,10 @@ namespace Tizen.Applications.AttachPanel
                 {
                     ResultEventListenStart();
                 }
+
                 _resultEventHandler += value;
             }
+
             remove
             {
                 _resultEventHandler -= value;
index e40af2d..7eaa1be 100755 (executable)
@@ -3,6 +3,9 @@ using System.Collections.Generic;
 
 namespace Tizen.Applications.AttachPanel
 {
+    /// <summary>
+    /// Attach panel internal implementation
+    /// </summary>
     public partial class AttachPanel
     {
         private static IntPtr _attachPanel;
@@ -20,16 +23,17 @@ namespace Tizen.Applications.AttachPanel
 
             SetEventListener = (attachPanel, eventType, eventInfo, userData) =>
             {
-                _eventEventHandler?.Invoke(null, new StateEventArgs(attachPanel, (EventType)eventType, eventInfo, userData));
+                _eventEventHandler?.Invoke(null, new StateEventArgs((EventType)eventType));
             };
             err = Interop.AttachPanel.SetEventCb(_attachPanel, SetEventListener, IntPtr.Zero);
-            checkException(err);
+            CheckException(err);
         }
+
         private void StateEventListenStop()
         {
             Interop.AttachPanel.ErrorCode err = 0;
-            err =  Interop.AttachPanel.UnsetEventCb(_attachPanel);
-            checkException(err);
+            err = Interop.AttachPanel.UnsetEventCb(_attachPanel);
+            CheckException(err);
         }
 
         private void ResultEventListenStart()
@@ -39,20 +43,20 @@ namespace Tizen.Applications.AttachPanel
             {
                 SafeAppControlHandle handle = new SafeAppControlHandle(resulthandler, false);
                 AppControl result = new AppControl(handle);
-                _resultEventHandler?.Invoke(null, new ResultEventArgs(attachPanel, (ContentCategory)category, result, (AppControlReplyResult)resultCode, userData));
+                _resultEventHandler?.Invoke(null, new ResultEventArgs((ContentCategory)category, result, (AppControlReplyResult)resultCode));
             };
             err = Interop.AttachPanel.SetResultCb(_attachPanel, SetResultListener, IntPtr.Zero);
-            checkException(err);
+            CheckException(err);
         }
 
         private void ResultEventListenStop()
         {
             Interop.AttachPanel.ErrorCode err = 0;
             err = Interop.AttachPanel.UnsetResultCb(_attachPanel);
-            checkException(err);
+            CheckException(err);
         }
 
-        internal static void checkException(Interop.AttachPanel.ErrorCode err)
+        internal static void CheckException(Interop.AttachPanel.ErrorCode err)
         {
             switch (err)
             {
index 6628b9d..9c933d7 100755 (executable)
@@ -7,45 +7,49 @@ namespace Tizen.Applications.AttachPanel
     /// </summary>
     public class ResultEventArgs : EventArgs
     {
-        private readonly IntPtr _attachPanel;
         private readonly ContentCategory _category;
         private readonly AppControl _result;
         private readonly AppControlReplyResult _resultCode;
-        private readonly IntPtr _userData;
 
-        internal ResultEventArgs(IntPtr attachPanel, ContentCategory category, AppControl result, AppControlReplyResult resultCode, IntPtr userData)
+        internal ResultEventArgs(ContentCategory category, AppControl result, AppControlReplyResult resultCode)
         {
-            _attachPanel = attachPanel;
             _category = category;
             _result = result;
             _resultCode = resultCode;
-            _userData = userData;
         }
 
         /// <summary>
-        ///  Property for attach panel object.
-        /// </summary>
-        public IntPtr AttachPanel { get { return _attachPanel; } }
-
-        /// <summary>
         /// Results are from the content category.
         /// </summary>
-        public ContentCategory Category { get { return _category; } }
+        public ContentCategory Category
+        {
+            get
+            {
+                return _category;
+            }
+        }
 
         /// <summary>
         /// Property for result
         /// The caller app has to use ExtraData property to get received data.
         /// </summary>
-        public AppControl Result {  get { return _result; } }
+        public AppControl Result
+        {
+            get
+            {
+                return _result;
+            }
+        }
 
         /// <summary>
         /// Property for result of AppControl
         /// </summary>
-        public AppControlReplyResult ResultCode { get { return _resultCode; } }
-
-        /// <summary>
-        /// Property for user data
-        /// </summary>
-        public IntPtr UserData { get { return _userData; } }
+        public AppControlReplyResult ResultCode
+        {
+            get
+            {
+                return _resultCode;
+            }
+        }
     }
 }
index 5354c5f..4373e27 100755 (executable)
@@ -7,38 +7,22 @@ namespace Tizen.Applications.AttachPanel
     /// </summary>
     public class StateEventArgs : EventArgs
     {
-        private readonly IntPtr _attachPanel;
         private readonly EventType _eventType;
-        private readonly IntPtr _eventInfo;
-        private readonly IntPtr _userData;
 
-        internal StateEventArgs(IntPtr attachPanel, EventType eventType, IntPtr eventInfo, IntPtr userData)
+        internal StateEventArgs(EventType eventType)
         {
-            _attachPanel = attachPanel;
             _eventType = eventType;
-            _eventInfo = eventInfo;
-            _userData = userData;
         }
 
         /// <summary>
-        /// Property for attach panel object
-        /// </summary>
-        public IntPtr AttachPanel { get { return _attachPanel;  } }
-
-        /// <summary>
         /// Property for event type.
         /// </summary>
-        public EventType EventType { get { return _eventType;  } }
-
-        /// <summary>
-        /// Additional event information.
-        /// This can be NULL if there are no necessary information.
-        /// </summary>
-        public IntPtr EventInfo {  get { return _eventInfo;  } }
-
-        /// <summary>
-        /// Property for user data.
-        /// </summary>
-        public IntPtr UserData { get { return _userData; } }
+        public EventType EventType
+        {
+            get
+            {
+                return _eventType;
+            }
+        }
     }
 }
index 4f0a97a..8c12f40 100755 (executable)
@@ -60,14 +60,14 @@ namespace Tizen.Applications.Notifications
 
         /// <summary>
         /// Gets or sets the icon of notification.
-       /// You should set an absolute path for an image file.
+        /// You should set an absolute path for an image file.
         /// </summary>
         public string Icon { get; set; } = string.Empty;
 
         /// <summary>
         /// Gets or sets the sub icon of notification.
         /// This SubIcon is displayed in Icon you set.
-       /// You should set an absolute path for an image file.
+        /// You should set an absolute path for an image file.
         /// </summary>
         public string SubIcon { get; set; } = string.Empty;
 
@@ -128,6 +128,10 @@ namespace Tizen.Applications.Notifications
             }
         }
 
+        /// <summary>
+        /// Gets or sets a value indicating whether the notification is Onging or not.
+        /// Default value is false.
+        /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
         public bool IsOngoing { get; set; } = false;
 
index 84758f2..59e5711 100755 (executable)
@@ -451,6 +451,12 @@ namespace Tizen.Applications.Notifications
             return state;
         }
 
+        /// <summary>
+        /// Make a NotificationSafeHandle from Notification.
+        /// </summary>
+        /// <param name="notification">The Notification class.</param>
+        /// <returns>The NotificationSafeHandle class.</returns>
+        /// <exception cref="ArgumentException">Thrown when an argument is invalid.</exception>
         [EditorBrowsable(EditorBrowsableState.Never)]
         public static NotificationSafeHandle MakeNotificationSafeHandle(Notification notification)
         {
@@ -464,6 +470,12 @@ namespace Tizen.Applications.Notifications
             return notification.Handle;
         }
 
+        /// <summary>
+        /// Make a Notification from NotificationSafeHandle.
+        /// </summary>
+        /// <param name="handle">The NotificationSafeHandle class.</param>
+        /// <returns>The Notification class.</returns>
+        /// <exception cref="ArgumentException">Thrown when an argument is invalid.</exception>
         [EditorBrowsable(EditorBrowsableState.Never)]
         public static Notification MakeNotification(NotificationSafeHandle handle)
         {
index 28ce60a..deb503d 100755 (executable)
@@ -20,9 +20,15 @@ namespace Tizen.Applications.Notifications
     using System.ComponentModel;
     using System.Runtime.InteropServices;
 
+    /// <summary>
+    /// This class manages the notification handle resources.
+    /// </summary>
     [EditorBrowsable(EditorBrowsableState.Never)]
     public sealed class NotificationSafeHandle : SafeHandle
     {
+        /// <summary>
+        /// Initializes a new instance of the NotificationSafeHandle class.
+        /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
         public NotificationSafeHandle()
             : base(IntPtr.Zero, true)
@@ -43,6 +49,10 @@ namespace Tizen.Applications.Notifications
             get { return this.DangerousGetHandle() == IntPtr.Zero; }
         }
 
+        /// <summary>
+        /// Executes the code required to free the NotificationSafeHandle.
+        /// </summary>
+        /// <returns></returns>
         protected override bool ReleaseHandle()
         {
             Interop.Notification.Destroy(this.handle);
index 140ab96..88221b3 100755 (executable)
@@ -93,6 +93,9 @@ namespace Tizen.Applications.NotificationEventListener
         /// </summary>
         public string Tag { get; internal set; }
 
+        /// <summary>
+        /// Gets a value indicating whether the notification is Onging or not.
+        /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
         public bool IsOngoing { get; internal set; } = false;
 
@@ -102,6 +105,10 @@ namespace Tizen.Applications.NotificationEventListener
         /// </summary>
         public bool IsVisible { get; internal set; } = true;
 
+        /// <summary>
+        /// Gets the event flag.
+        /// If this flag is true, you can do SendEvent.
+        /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
         public bool HasEventFlag { get; internal set; } = false;
 
index 69af7d2..9438f81 100755 (executable)
@@ -21,6 +21,9 @@ namespace Tizen.Applications.NotificationEventListener
     /// </summary>
     public partial class NotificationEventArgs
     {
+        /// <summary>
+        /// An object can get a rich notification style to a notification object.
+        /// </summary>
         public abstract class StyleArgs
         {
             internal abstract string Key { get; }
index 4d6f582..dd86791 100755 (executable)
@@ -402,6 +402,15 @@ namespace Tizen.Applications.NotificationEventListener
             return list;
         }
 
+        /// <summary>
+        /// Sends occured event from viewer application to the notification owner.
+        /// </summary>
+        /// <param name="uniqueNumber">The unique number of the notification.</param>
+        /// <param name="type">Event type on notification.</param>
+        /// <exception cref="ArgumentException">Thrown in case of an invalid parameter.</exception>
+        /// <exception cref="UnauthorizedAccessException"> Thrown in case of a permission is denied.</exception>
+        /// <exception cref="InvalidOperationException">Thrown in case of any internal error.</exception>
+        /// <privilege>http://tizen.org/privilege/notification</privilege>
         [EditorBrowsable(EditorBrowsableState.Never)]
         public static void SendEvent(int uniqueNumber, UserEventType type)
         {
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 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;
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 86432d3..ece1f6d 100644 (file)
@@ -57,27 +57,45 @@ internal static partial class Interop
     }
 
     [StructLayout(LayoutKind.Sequential)]
-    internal struct sTEEC_SharedMemoryImp
+    internal class TEEC_SharedMemory
     {
-        public IntPtr context;
-        public IntPtr context_imp;
+        public IntPtr buffer;
+        public UInt32 size;
         public UInt32 flags;
-        public UInt32 memid;
+        public IntPtr imp;
+    }
+
+    [StructLayout(LayoutKind.Sequential)]
+    internal struct TEEC_Value
+    {
+        public UInt32 a;
+        public UInt32 b;
     }
 
     [StructLayout(LayoutKind.Sequential)]
-    internal struct TEEC_SharedMemory
+    internal struct TEEC_TempMemoryReference
     {
         public IntPtr buffer;
         public UInt32 size;
-        public UInt32 flags;
     }
 
     [StructLayout(LayoutKind.Sequential)]
+    internal struct TEEC_RegisteredMemoryReference
+    {
+        public TEEC_SharedMemory parent;
+        public UInt32 size;
+        public UInt32 offset;
+    }
+
+    [StructLayout(LayoutKind.Explicit)]
     internal struct TEEC_Parameter
     {
-        public UInt32 a;
-        public UInt32 b;
+        [FieldOffset(0)]
+        public TEEC_TempMemoryReference tmpref;
+        [FieldOffset(0)]
+        public TEEC_RegisteredMemoryReference memref;
+        [FieldOffset(0)]
+        public TEEC_Value value;
     }
 
     [StructLayout(LayoutKind.Sequential)]
index 8b39e79..52c612b 100644 (file)
@@ -216,7 +216,7 @@ namespace Tizen.Security.TEEC
         /// This property represents the size of the buffer.
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
-        public uint Size { get; }
+        public uint Size { get; internal set; }
     };
 
     /// <summary>
@@ -249,7 +249,7 @@ namespace Tizen.Security.TEEC
         /// This property represents the size (in bytes) of the shared memory.
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
-        public uint Size { get; }
+        public uint Size { get; internal set; }
         /// <summary>
         /// This property represents the offset (in bytes) from the start of the shared memory.
         /// </summary>
@@ -281,12 +281,12 @@ namespace Tizen.Security.TEEC
         /// This property represents an unsigned integer A.
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
-        public uint A { get; }
+        public uint A { get; internal set; }
         /// <summary>
         /// This property represents an unsigned integer B.
         /// </summary>
         /// <since_tizen> 3 </since_tizen>
-        public uint B { get; }
+        public uint B { get; internal set; }
     };
 
 
@@ -304,20 +304,90 @@ namespace Tizen.Security.TEEC
             this.session = new Interop.TEEC_Session();
         }
 
+        /// <summary>
+        /// Destructor of the class.
+        /// </summary>
         ~Session()
         {
             Close();
         }
 
+        internal UInt32 InitParam(ref Interop.TEEC_Parameter dst, Parameter src)
+        {
+            switch (src.NativeType) {
+               case (int)TEFValueType.Input:
+               case (int)TEFValueType.Output:
+               case (int)TEFValueType.InOut:
+                   dst.value.a = ((Value)src).A;
+                   dst.value.b = ((Value)src).B;
+                   break;
+
+               case (int)TEFTempMemoryType.Input:
+               case (int)TEFTempMemoryType.Output:
+               case (int)TEFTempMemoryType.InOut:
+                   dst.tmpref.buffer = ((TempMemoryReference)src).Buffer;
+                   dst.tmpref.size = ((TempMemoryReference)src).Size;
+                   break;
+
+               case (int)TEFRegisteredMemoryType.Whole:
+               case (int)TEFRegisteredMemoryType.PartialInput:
+               case (int)TEFRegisteredMemoryType.PartialOutput:
+               case (int)TEFRegisteredMemoryType.PartialInOut:
+                   dst.memref.parent = ((RegisteredMemoryReference)src).Parent.shm;
+                   dst.memref.size = ((RegisteredMemoryReference)src).Size;
+                   dst.memref.offset = ((RegisteredMemoryReference)src).Offset;
+                   break;
+
+               default: return 0;
+            }
+            return src.NativeType;
+        }
+
+        internal void UpdateParam(Interop.TEEC_Parameter src, ref Parameter dst)
+        {
+            switch (dst.NativeType) {
+               case (int)TEFValueType.Input:
+               case (int)TEFValueType.Output:
+               case (int)TEFValueType.InOut:
+                   ((Value)dst).A = src.value.a;
+                   ((Value)dst).B = src.value.b;
+                   break;
+
+               case (int)TEFTempMemoryType.Input:
+               case (int)TEFTempMemoryType.Output:
+               case (int)TEFTempMemoryType.InOut:
+                   ((TempMemoryReference)dst).Size = src.tmpref.size;
+                   break;
+
+               case (int)TEFRegisteredMemoryType.Whole:
+               case (int)TEFRegisteredMemoryType.PartialInput:
+               case (int)TEFRegisteredMemoryType.PartialOutput:
+               case (int)TEFRegisteredMemoryType.PartialInOut:
+                   ((RegisteredMemoryReference)dst).Size = src.memref.size;
+                   break;
+
+               default: break;
+            }
+        }
+
         internal void Open(Guid destination, uint loginMethod, byte[] connectionData, Parameter[] paramlist)
         {
             Interop.TEEC_UUID uuid = Interop.TEEC_UUID.ToTeecUuid(destination);
             Interop.TEEC_Operation op = new Interop.TEEC_Operation();
-            uint ro;
 
+            op.started=0;
+            op.paramTypes=0;
+            for (int i=0; i < 4 && i < paramlist.Length; ++i) {
+                op.paramTypes |= InitParam(ref op.paramlist[i], paramlist[i]) << (4*i);
+            }
+
+            uint ro;
             int ret = Interop.Libteec.OpenSession(ref context, ref session, ref uuid, loginMethod, connectionData, ref op, out ro);
             //MAYBE map origin of return code to specyfic Exception
             Interop.CheckNThrowException(ret, string.Format("OpenSession('{0}')", destination));
+            for (int i=0; i < 4 && i < paramlist.Length; ++i) {
+                UpdateParam(op.paramlist[i], ref paramlist[i]);
+            }
         }
 
         /// <summary>
@@ -358,16 +428,17 @@ namespace Tizen.Security.TEEC
             Interop.TEEC_Operation op = new Interop.TEEC_Operation();
             op.started=0;
             op.paramTypes=0;
-
-            for (int i=0; i < 4; ++i) {
-                Parameter p = paramlist[i];
-                //TODO fill TEEC_Operation struct
+            for (int i=0; i < 4 && i < paramlist.Length; ++i) {
+                op.paramTypes |= InitParam(ref op.paramlist[i], paramlist[i]) << (4*i);
             }
 
             uint ro;
             int ret = Interop.Libteec.InvokeCommand(ref session, commandID, ref op, out ro);
             //MAYBE map origin of return code to specific Exception
             Interop.CheckNThrowException(ret, string.Format("InvokeCommand({0})", commandID));
+            for (int i=0; i < 4 && i < paramlist.Length; ++i) {
+                UpdateParam(op.paramlist[i], ref paramlist[i]);
+            }
         }
 
         /// <summary>
@@ -417,10 +488,21 @@ namespace Tizen.Security.TEEC
             context = new Interop.TEEC_Context();
             if (name != null && name.Length == 0)
                 name = null;
-            int ret = Interop.Libteec.InitializeContext(name, ref context);
-            Interop.CheckNThrowException(ret, string.Format("InititalizeContext('{0}')", name));
+            try {
+                int ret = Interop.Libteec.InitializeContext(name, ref context);
+                Interop.CheckNThrowException(ret, string.Format("InititalizeContext('{0}')", name));
+            }
+            catch (global::System.DllNotFoundException e)
+            {
+                unchecked {
+                    Interop.CheckNThrowException((int)Interop.LibteecError.NotImplemented, "Not found: " + e.Message);
+                }
+            }
         }
 
+        /// <summary>
+        /// Destructor of the class.
+        /// </summary>
         ~Context()
         {
             Dispose();
@@ -434,8 +516,10 @@ namespace Tizen.Security.TEEC
         /// <privlevel>partner</privlevel>
         /// <feature>http://tizen.org/feature/security.tee</feature>
         public void Dispose() {
-            Interop.Libteec.FinalizeContext(ref context);
-            //context.imp = null;
+            try {
+                Interop.Libteec.FinalizeContext(ref context);
+            }
+            catch (global::System.DllNotFoundException) { }
         }
 
         /// <summary>
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;
index 2dc8437..ae7e185 100644 (file)
@@ -65,15 +65,11 @@ namespace ElmSharp.Test
 
             Entry entry3 = new Entry(window)
             {
-                AlignmentX = -1,
-                AlignmentY = 0,
-                WeightX = 1,
-                WeightY = 1,
                 IsSingleLine = true,
                 Scrollable = true,
             };
             entry3.SetPartText("guide", "<span color=#808080FF font_size=28 align=left valign=top wrap=mixed>Enter a System.Double</span>");
-            //entry3.Geometry = new Rect(0, 163, 720, 37);
+            entry3.Geometry = new Rect(0, 100, 720, 37);
             entry3.Show();
 
             var capital1 = new Entry(window)
@@ -144,7 +140,6 @@ namespace ElmSharp.Test
 
             box.PackEnd(entry1);
             box.PackEnd(entry2);
-            box.PackEnd(entry3);
             box.PackEnd(capital1);
             box.PackEnd(capital2);
             box.PackEnd(capital3);
@@ -153,7 +148,6 @@ namespace ElmSharp.Test
 
             entry1.Show();
             entry2.Show();
-            entry3.Show();
             capital1.Show();
             capital2.Show();
             capital3.Show();