web_app_types_mojom_traits.cc 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204
  1. // Copyright 2022 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "chromeos/crosapi/mojom/web_app_types_mojom_traits.h"
  5. #include "chromeos/crosapi/mojom/web_app_types.mojom.h"
  6. #include "components/webapps/browser/install_result_code.h"
  7. #include "components/webapps/browser/uninstall_result_code.h"
  8. namespace mojo {
  9. crosapi::mojom::WebAppInstallResultCode EnumTraits<
  10. crosapi::mojom::WebAppInstallResultCode,
  11. webapps::InstallResultCode>::ToMojom(webapps::InstallResultCode input) {
  12. switch (input) {
  13. case webapps::InstallResultCode::kSuccessNewInstall:
  14. return crosapi::mojom::WebAppInstallResultCode::kSuccessNewInstall;
  15. case webapps::InstallResultCode::kSuccessAlreadyInstalled:
  16. return crosapi::mojom::WebAppInstallResultCode::kSuccessAlreadyInstalled;
  17. case webapps::InstallResultCode::kGetWebAppInstallInfoFailed:
  18. return crosapi::mojom::WebAppInstallResultCode::
  19. kGetWebAppInstallInfoFailed;
  20. case webapps::InstallResultCode::kPreviouslyUninstalled:
  21. return crosapi::mojom::WebAppInstallResultCode::kPreviouslyUninstalled;
  22. case webapps::InstallResultCode::kWebContentsDestroyed:
  23. return crosapi::mojom::WebAppInstallResultCode::kWebContentsDestroyed;
  24. case webapps::InstallResultCode::kWriteDataFailed:
  25. return crosapi::mojom::WebAppInstallResultCode::kWriteDataFailed;
  26. case webapps::InstallResultCode::kUserInstallDeclined:
  27. return crosapi::mojom::WebAppInstallResultCode::kUserInstallDeclined;
  28. case webapps::InstallResultCode::kNotValidManifestForWebApp:
  29. return crosapi::mojom::WebAppInstallResultCode::
  30. kNotValidManifestForWebApp;
  31. case webapps::InstallResultCode::kIntentToPlayStore:
  32. return crosapi::mojom::WebAppInstallResultCode::kIntentToPlayStore;
  33. case webapps::InstallResultCode::kWebAppDisabled:
  34. return crosapi::mojom::WebAppInstallResultCode::kWebAppDisabled;
  35. case webapps::InstallResultCode::kInstallURLRedirected:
  36. return crosapi::mojom::WebAppInstallResultCode::kInstallURLRedirected;
  37. case webapps::InstallResultCode::kInstallURLLoadFailed:
  38. return crosapi::mojom::WebAppInstallResultCode::kInstallURLLoadFailed;
  39. case webapps::InstallResultCode::kExpectedAppIdCheckFailed:
  40. return crosapi::mojom::WebAppInstallResultCode::kExpectedAppIdCheckFailed;
  41. case webapps::InstallResultCode::kInstallURLLoadTimeOut:
  42. return crosapi::mojom::WebAppInstallResultCode::kInstallURLLoadTimeOut;
  43. case webapps::InstallResultCode::kFailedPlaceholderUninstall:
  44. return crosapi::mojom::WebAppInstallResultCode::
  45. kFailedPlaceholderUninstall;
  46. case webapps::InstallResultCode::kNotInstallable:
  47. return crosapi::mojom::WebAppInstallResultCode::kNotInstallable;
  48. case webapps::InstallResultCode::kApkWebAppInstallFailed:
  49. return crosapi::mojom::WebAppInstallResultCode::kApkWebAppInstallFailed;
  50. case webapps::InstallResultCode::kCancelledOnWebAppProviderShuttingDown:
  51. return crosapi::mojom::WebAppInstallResultCode::
  52. kCancelledOnWebAppProviderShuttingDown;
  53. case webapps::InstallResultCode::kWebAppProviderNotReady:
  54. return crosapi::mojom::WebAppInstallResultCode::kWebAppProviderNotReady;
  55. case webapps::InstallResultCode::kSuccessOfflineOnlyInstall:
  56. return crosapi::mojom::WebAppInstallResultCode::
  57. kSuccessOfflineOnlyInstall;
  58. case webapps::InstallResultCode::kSuccessOfflineFallbackInstall:
  59. return crosapi::mojom::WebAppInstallResultCode::
  60. kSuccessOfflineFallbackInstall;
  61. case webapps::InstallResultCode::kInstallTaskDestroyed:
  62. return crosapi::mojom::WebAppInstallResultCode::kInstallTaskDestroyed;
  63. case webapps::InstallResultCode::kUpdateTaskFailed:
  64. return crosapi::mojom::WebAppInstallResultCode::kUpdateTaskFailed;
  65. case webapps::InstallResultCode::kAppNotInRegistrarAfterCommit:
  66. return crosapi::mojom::WebAppInstallResultCode::
  67. kAppNotInRegistrarAfterCommit;
  68. case webapps::InstallResultCode::kHaltedBySyncUninstall:
  69. return crosapi::mojom::WebAppInstallResultCode::kHaltedBySyncUninstall;
  70. };
  71. }
  72. bool EnumTraits<crosapi::mojom::WebAppInstallResultCode,
  73. webapps::InstallResultCode>::
  74. FromMojom(crosapi::mojom::WebAppInstallResultCode input,
  75. webapps::InstallResultCode* output) {
  76. switch (input) {
  77. case crosapi::mojom::WebAppInstallResultCode::kSuccessNewInstall:
  78. *output = webapps::InstallResultCode::kSuccessNewInstall;
  79. return true;
  80. case crosapi::mojom::WebAppInstallResultCode::kSuccessAlreadyInstalled:
  81. *output = webapps::InstallResultCode::kSuccessAlreadyInstalled;
  82. return true;
  83. case crosapi::mojom::WebAppInstallResultCode::kGetWebAppInstallInfoFailed:
  84. *output = webapps::InstallResultCode::kGetWebAppInstallInfoFailed;
  85. return true;
  86. case crosapi::mojom::WebAppInstallResultCode::kPreviouslyUninstalled:
  87. *output = webapps::InstallResultCode::kPreviouslyUninstalled;
  88. return true;
  89. case crosapi::mojom::WebAppInstallResultCode::kWebContentsDestroyed:
  90. *output = webapps::InstallResultCode::kWebContentsDestroyed;
  91. return true;
  92. case crosapi::mojom::WebAppInstallResultCode::kWriteDataFailed:
  93. *output = webapps::InstallResultCode::kWriteDataFailed;
  94. return true;
  95. case crosapi::mojom::WebAppInstallResultCode::kUserInstallDeclined:
  96. *output = webapps::InstallResultCode::kUserInstallDeclined;
  97. return true;
  98. case crosapi::mojom::WebAppInstallResultCode::kNotValidManifestForWebApp:
  99. *output = webapps::InstallResultCode::kNotValidManifestForWebApp;
  100. return true;
  101. case crosapi::mojom::WebAppInstallResultCode::kIntentToPlayStore:
  102. *output = webapps::InstallResultCode::kIntentToPlayStore;
  103. return true;
  104. case crosapi::mojom::WebAppInstallResultCode::kWebAppDisabled:
  105. *output = webapps::InstallResultCode::kWebAppDisabled;
  106. return true;
  107. case crosapi::mojom::WebAppInstallResultCode::kInstallURLRedirected:
  108. *output = webapps::InstallResultCode::kInstallURLRedirected;
  109. return true;
  110. case crosapi::mojom::WebAppInstallResultCode::kInstallURLLoadFailed:
  111. *output = webapps::InstallResultCode::kInstallURLLoadFailed;
  112. return true;
  113. case crosapi::mojom::WebAppInstallResultCode::kExpectedAppIdCheckFailed:
  114. *output = webapps::InstallResultCode::kExpectedAppIdCheckFailed;
  115. return true;
  116. case crosapi::mojom::WebAppInstallResultCode::kInstallURLLoadTimeOut:
  117. *output = webapps::InstallResultCode::kInstallURLLoadTimeOut;
  118. return true;
  119. case crosapi::mojom::WebAppInstallResultCode::kFailedPlaceholderUninstall:
  120. *output = webapps::InstallResultCode::kFailedPlaceholderUninstall;
  121. return true;
  122. case crosapi::mojom::WebAppInstallResultCode::kNotInstallable:
  123. *output = webapps::InstallResultCode::kNotInstallable;
  124. return true;
  125. case crosapi::mojom::WebAppInstallResultCode::kApkWebAppInstallFailed:
  126. *output = webapps::InstallResultCode::kApkWebAppInstallFailed;
  127. return true;
  128. case crosapi::mojom::WebAppInstallResultCode::
  129. kCancelledOnWebAppProviderShuttingDown:
  130. *output =
  131. webapps::InstallResultCode::kCancelledOnWebAppProviderShuttingDown;
  132. return true;
  133. case crosapi::mojom::WebAppInstallResultCode::kWebAppProviderNotReady:
  134. *output = webapps::InstallResultCode::kWebAppProviderNotReady;
  135. return true;
  136. case crosapi::mojom::WebAppInstallResultCode::kSuccessOfflineOnlyInstall:
  137. *output = webapps::InstallResultCode::kSuccessOfflineOnlyInstall;
  138. return true;
  139. case crosapi::mojom::WebAppInstallResultCode::
  140. kSuccessOfflineFallbackInstall:
  141. *output = webapps::InstallResultCode::kSuccessOfflineFallbackInstall;
  142. return true;
  143. case crosapi::mojom::WebAppInstallResultCode::kInstallTaskDestroyed:
  144. *output = webapps::InstallResultCode::kInstallTaskDestroyed;
  145. return true;
  146. case crosapi::mojom::WebAppInstallResultCode::kUpdateTaskFailed:
  147. *output = webapps::InstallResultCode::kUpdateTaskFailed;
  148. return true;
  149. case crosapi::mojom::WebAppInstallResultCode::kAppNotInRegistrarAfterCommit:
  150. *output = webapps::InstallResultCode::kAppNotInRegistrarAfterCommit;
  151. return true;
  152. case crosapi::mojom::WebAppInstallResultCode::kHaltedBySyncUninstall:
  153. *output = webapps::InstallResultCode::kHaltedBySyncUninstall;
  154. return true;
  155. };
  156. NOTREACHED();
  157. return false;
  158. }
  159. crosapi::mojom::WebAppUninstallResultCode EnumTraits<
  160. crosapi::mojom::WebAppUninstallResultCode,
  161. webapps::UninstallResultCode>::ToMojom(webapps::UninstallResultCode input) {
  162. switch (input) {
  163. case webapps::UninstallResultCode::kSuccess:
  164. return crosapi::mojom::WebAppUninstallResultCode::kSuccess;
  165. case webapps::UninstallResultCode::kNoAppToUninstall:
  166. return crosapi::mojom::WebAppUninstallResultCode::kNoAppToUninstall;
  167. case webapps::UninstallResultCode::kCancelled:
  168. return crosapi::mojom::WebAppUninstallResultCode::kCancelled;
  169. case webapps::UninstallResultCode::kError:
  170. return crosapi::mojom::WebAppUninstallResultCode::kError;
  171. };
  172. }
  173. bool EnumTraits<crosapi::mojom::WebAppUninstallResultCode,
  174. webapps::UninstallResultCode>::
  175. FromMojom(crosapi::mojom::WebAppUninstallResultCode input,
  176. webapps::UninstallResultCode* output) {
  177. switch (input) {
  178. case crosapi::mojom::WebAppUninstallResultCode::kSuccess:
  179. *output = webapps::UninstallResultCode::kSuccess;
  180. return true;
  181. case crosapi::mojom::WebAppUninstallResultCode::kNoAppToUninstall:
  182. *output = webapps::UninstallResultCode::kNoAppToUninstall;
  183. return true;
  184. case crosapi::mojom::WebAppUninstallResultCode::kCancelled:
  185. *output = webapps::UninstallResultCode::kCancelled;
  186. return true;
  187. case crosapi::mojom::WebAppUninstallResultCode::kError:
  188. *output = webapps::UninstallResultCode::kError;
  189. return true;
  190. };
  191. NOTREACHED();
  192. return false;
  193. }
  194. } // namespace mojo