-//
-// Copyright (c) 2013 Ford Motor Company
-//
-package com.smartdevicelink.proxy.rpc;
-
-import java.util.Hashtable;
-
-import com.smartdevicelink.proxy.RPCNotification;
-import com.smartdevicelink.proxy.constants.Names;
-import com.smartdevicelink.proxy.rpc.enums.AppInterfaceUnregisteredReason;
-import com.smartdevicelink.util.DebugTool;
-
-public class OnAppInterfaceUnregistered extends RPCNotification {
-
- public OnAppInterfaceUnregistered() {
- super("OnAppInterfaceUnregistered");
- }
- public OnAppInterfaceUnregistered(Hashtable hash) {
- super(hash);
- }
- public AppInterfaceUnregisteredReason getReason() {
- Object obj = parameters.get(Names.reason);
- if (obj instanceof AppInterfaceUnregisteredReason) {
- return (AppInterfaceUnregisteredReason) obj;
- } else if (obj instanceof String) {
- AppInterfaceUnregisteredReason theCode = null;
- try {
- theCode = AppInterfaceUnregisteredReason.valueForString((String) obj);
- } catch (Exception e) {
- DebugTool.logError("Failed to parse " + getClass().getSimpleName() + "." + Names.reason, e);
- }
- return theCode;
- }
- return null;
- }
- public void setReason( AppInterfaceUnregisteredReason reason ) {
- if (reason != null) {
- parameters.put(Names.reason, reason );
- }
- }
-}
+package com.smartdevicelink.proxy.rpc;\r
+\r
+import java.util.Hashtable;\r
+\r
+import com.smartdevicelink.proxy.RPCNotification;\r
+import com.smartdevicelink.proxy.constants.Names;\r
+import com.smartdevicelink.proxy.rpc.enums.AppInterfaceUnregisteredReason;\r
+import com.smartdevicelink.util.DebugTool;\r
+\r
+/**\r
+ * <p>Notifies an application that its interface registration has been terminated. This means that all SMARTDEVICELINK resources \r
+ * associated with the application are discarded, including the Command Menu, Choice Sets, button subscriptions, etc.</p>\r
+ * For more information about SMARTDEVICELINK resources related to an interface registration, see {@linkplain RegisterAppInterface}.\r
+ * <p></p>\r
+ * <b>HMI Status Requirements:</b>\r
+ * <ul>\r
+ * HMILevel: \r
+ * <ul><li>Any</li></ul>\r
+ * AudioStreamingState: \r
+ * <ul><li>Any</li></ul>\r
+ * SystemContext: \r
+ * <ul><li>Any</li></ul>\r
+ * </ul>\r
+ * <p>\r
+ * <b>Parameter List:</b>\r
+ * <table border="1" rules="all">\r
+ * <tr>\r
+ * <th>Name</th>\r
+ * <th>Type</th>\r
+ * <th>Description</th>\r
+ * <th>Applink Ver Available</th>\r
+ * </tr>\r
+ * <tr>\r
+ * <td>reason</td>\r
+ * <td>{@linkplain AppInterfaceUnregisteredReason}</td>\r
+ * <td>The reason the application's interface registration was terminated</td>\r
+ * <td>SmartDeviceLink 1.0</td>\r
+ * </tr>\r
+ * </table>\r
+ * </p>\r
+ * @since SmartDeviceLink 1.0\r
+ * @see RegisterAppInterface\r
+ */\r
+public class OnAppInterfaceUnregistered extends RPCNotification {\r
+ /**\r
+ *Constructs a newly allocated OnAppInterfaceUnregistered object\r
+ */ \r
+ public OnAppInterfaceUnregistered() {\r
+ super("OnAppInterfaceUnregistered");\r
+ }\r
+ /**\r
+ *<p>Constructs a newly allocated OnAppInterfaceUnregistered object indicated by the Hashtable parameter</p>\r
+ *@param hash The Hashtable to use\r
+ */ \r
+ public OnAppInterfaceUnregistered(Hashtable hash) {\r
+ super(hash);\r
+ }\r
+ /**\r
+ * <p>Get the reason the registration was terminated</p>\r
+ * @return {@linkplain AppInterfaceUnregisteredReason} the reason the application's interface registration was terminated\r
+ */ \r
+ public AppInterfaceUnregisteredReason getReason() {\r
+ Object obj = parameters.get(Names.reason);\r
+ if (obj instanceof AppInterfaceUnregisteredReason) {\r
+ return (AppInterfaceUnregisteredReason) obj;\r
+ } else if (obj instanceof String) {\r
+ AppInterfaceUnregisteredReason theCode = null;\r
+ try {\r
+ theCode = AppInterfaceUnregisteredReason.valueForString((String) obj);\r
+ } catch (Exception e) {\r
+ DebugTool.logError("Failed to parse " + getClass().getSimpleName() + "." + Names.reason, e);\r
+ }\r
+ return theCode;\r
+ }\r
+ return null;\r
+ }\r
+ /**\r
+ * <p>Set the reason application's interface was terminated</p>\r
+ * @param reason The reason application's interface registration was terminated\r
+ */ \r
+ public void setReason( AppInterfaceUnregisteredReason reason ) {\r
+ if (reason != null) {\r
+ parameters.put(Names.reason, reason );\r
+ }\r
+ }\r
+}\r