@openui5/sap.ui.core 1.105.0 → 1.106.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (314) hide show
  1. package/.reuse/dep5 +20 -17
  2. package/THIRDPARTY.txt +31 -21
  3. package/package.json +1 -1
  4. package/src/jquery.sap.dom.js +10 -10
  5. package/src/jquery.sap.global.js +24 -216
  6. package/src/jquery.sap.history.js +1 -1
  7. package/src/jquery.sap.properties.js +2 -2
  8. package/src/jquery.sap.resources.js +1 -1
  9. package/src/jquery.sap.script.js +1 -1
  10. package/src/jquery.sap.storage.js +4 -4
  11. package/src/sap/base/i18n/ResourceBundle.js +7 -11
  12. package/src/sap/base/util/ObjectPath.js +1 -1
  13. package/src/sap/base/util/Properties.js +1 -1
  14. package/src/sap/base/util/fetch.js +8 -10
  15. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  16. package/src/sap/base/util/restricted/_castArray.js +1 -1
  17. package/src/sap/base/util/restricted/_compact.js +1 -1
  18. package/src/sap/base/util/restricted/_curry.js +1 -1
  19. package/src/sap/base/util/restricted/_debounce.js +1 -1
  20. package/src/sap/base/util/restricted/_difference.js +1 -1
  21. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  22. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  23. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  24. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  25. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  26. package/src/sap/base/util/restricted/_flatten.js +1 -1
  27. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  28. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  29. package/src/sap/base/util/restricted/_intersection.js +1 -1
  30. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  31. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  32. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  33. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  34. package/src/sap/base/util/restricted/_isNil.js +1 -1
  35. package/src/sap/base/util/restricted/_max.js +1 -1
  36. package/src/sap/base/util/restricted/_merge.js +1 -1
  37. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  38. package/src/sap/base/util/restricted/_min.js +1 -1
  39. package/src/sap/base/util/restricted/_omit.js +1 -1
  40. package/src/sap/base/util/restricted/_pick.js +1 -1
  41. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  42. package/src/sap/base/util/restricted/_throttle.js +1 -1
  43. package/src/sap/base/util/restricted/_toArray.js +1 -1
  44. package/src/sap/base/util/restricted/_union.js +1 -1
  45. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  46. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  47. package/src/sap/base/util/restricted/_uniq.js +1 -1
  48. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  49. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  50. package/src/sap/base/util/restricted/_without.js +1 -1
  51. package/src/sap/base/util/restricted/_xor.js +1 -1
  52. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  53. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  54. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  55. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  56. package/src/sap/base/util/syncFetch.js +9 -16
  57. package/src/sap/ui/Device.js +3 -3
  58. package/src/sap/ui/Global.js +7 -14
  59. package/src/sap/ui/VersionInfo.js +57 -54
  60. package/src/sap/ui/base/BindingInfo.js +198 -0
  61. package/src/sap/ui/base/DataType.js +1 -1
  62. package/src/sap/ui/base/Event.js +2 -2
  63. package/src/sap/ui/base/EventProvider.js +2 -2
  64. package/src/sap/ui/base/Interface.js +1 -1
  65. package/src/sap/ui/base/ManagedObject.js +209 -979
  66. package/src/sap/ui/base/ManagedObjectMetadata.js +6 -6
  67. package/src/sap/ui/base/Metadata.js +1 -1
  68. package/src/sap/ui/base/Object.js +1 -1
  69. package/src/sap/ui/base/ObjectPool.js +1 -1
  70. package/src/sap/ui/core/.library +13 -9
  71. package/src/sap/ui/core/BusyIndicator.js +1 -1
  72. package/src/sap/ui/core/Component.js +5 -5
  73. package/src/sap/ui/core/ComponentContainer.js +1 -1
  74. package/src/sap/ui/core/ComponentMetadata.js +5 -12
  75. package/src/sap/ui/core/ComponentSupport.js +1 -1
  76. package/src/sap/ui/core/Configuration.js +525 -336
  77. package/src/sap/ui/core/Control.js +1 -1
  78. package/src/sap/ui/core/Core.js +78 -125
  79. package/src/sap/ui/core/CustomData.js +1 -1
  80. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  81. package/src/sap/ui/core/Element.js +60 -4
  82. package/src/sap/ui/core/ElementMetadata.js +1 -1
  83. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  84. package/src/sap/ui/core/EventBus.js +1 -1
  85. package/src/sap/ui/core/FocusHandler.js +29 -7
  86. package/src/sap/ui/core/Fragment.js +1 -1
  87. package/src/sap/ui/core/HTML.js +1 -1
  88. package/src/sap/ui/core/History.js +1 -1
  89. package/src/sap/ui/core/Icon.js +1 -1
  90. package/src/sap/ui/core/IconPool.js +8 -8
  91. package/src/sap/ui/core/IndicationColorSupport.js +2 -2
  92. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  93. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  94. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  95. package/src/sap/ui/core/InvisibleText.js +1 -1
  96. package/src/sap/ui/core/Item.js +1 -1
  97. package/src/sap/ui/core/LabelEnablement.js +1 -1
  98. package/src/sap/ui/core/LayoutData.js +1 -1
  99. package/src/sap/ui/core/ListItem.js +1 -1
  100. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  101. package/src/sap/ui/core/Locale.js +1 -1
  102. package/src/sap/ui/core/LocaleData.js +5 -5
  103. package/src/sap/ui/core/Manifest.js +1 -1
  104. package/src/sap/ui/core/Message.js +1 -1
  105. package/src/sap/ui/core/Popup.js +13 -8
  106. package/src/sap/ui/core/RenderManager.js +7 -1
  107. package/src/sap/ui/core/Renderer.js +1 -1
  108. package/src/sap/ui/core/ResizeHandler.js +7 -7
  109. package/src/sap/ui/core/ScrollBar.js +1 -1
  110. package/src/sap/ui/core/SeparatorItem.js +1 -1
  111. package/src/sap/ui/core/Title.js +1 -1
  112. package/src/sap/ui/core/TooltipBase.js +12 -13
  113. package/src/sap/ui/core/UIArea.js +8 -9
  114. package/src/sap/ui/core/UIComponent.js +3 -3
  115. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  116. package/src/sap/ui/core/ValueStateSupport.js +2 -2
  117. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  118. package/src/sap/ui/core/XMLComposite.js +2 -2
  119. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  120. package/src/sap/ui/core/XMLTemplateProcessor.js +7 -7
  121. package/src/sap/ui/core/_ConfigurationProvider.js +187 -0
  122. package/src/sap/ui/core/cache/CacheManager.js +2 -2
  123. package/src/sap/ui/core/cldr/es_BO.json +3 -3
  124. package/src/sap/ui/core/cldr/es_CL.json +3 -3
  125. package/src/sap/ui/core/cldr/es_MX.json +3 -3
  126. package/src/sap/ui/core/cldr/es_PE.json +3 -3
  127. package/src/sap/ui/core/cldr/es_UY.json +3 -3
  128. package/src/sap/ui/core/cldr/es_VE.json +2 -2
  129. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  130. package/src/sap/ui/core/delegate/ScrollEnablement.js +7 -6
  131. package/src/sap/ui/core/dnd/DragAndDrop.js +13 -9
  132. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  133. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  134. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  135. package/src/sap/ui/core/dnd/DropInfo.js +1 -1
  136. package/src/sap/ui/core/format/DateFormat.js +5 -0
  137. package/src/sap/ui/core/format/NumberFormat.js +1 -1
  138. package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
  139. package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
  140. package/src/sap/ui/core/library.js +3 -3
  141. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  142. package/src/sap/ui/core/message/Message.js +1 -1
  143. package/src/sap/ui/core/message/MessageManager.js +1 -1
  144. package/src/sap/ui/core/message/MessageParser.js +1 -1
  145. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  146. package/src/sap/ui/core/mvc/Controller.js +5 -0
  147. package/src/sap/ui/core/mvc/HTMLView.js +1 -1
  148. package/src/sap/ui/core/mvc/JSONView.js +1 -1
  149. package/src/sap/ui/core/mvc/JSView.js +2 -2
  150. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  151. package/src/sap/ui/core/mvc/View.js +1 -1
  152. package/src/sap/ui/core/mvc/XMLView.js +1 -1
  153. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  154. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  155. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  156. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  157. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  158. package/src/sap/ui/core/routing/Router.js +1 -1
  159. package/src/sap/ui/core/rules/App.support.js +11 -13
  160. package/src/sap/ui/core/rules/Config.support.js +13 -13
  161. package/src/sap/ui/core/rules/CoreHelper.support.js +3 -3
  162. package/src/sap/ui/core/rules/Model.support.js +8 -8
  163. package/src/sap/ui/core/rules/Rendering.support.js +1 -1
  164. package/src/sap/ui/core/rules/Theming.support.js +8 -8
  165. package/src/sap/ui/core/rules/View.support.js +9 -9
  166. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
  167. package/src/sap/ui/core/search/SearchProvider.js +1 -1
  168. package/src/sap/ui/core/service/Service.js +1 -1
  169. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  170. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  171. package/src/sap/ui/core/support/Hotkeys.js +2 -3
  172. package/src/sap/ui/core/support/Plugin.js +1 -1
  173. package/src/sap/ui/core/support/Support.js +1 -1
  174. package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
  175. package/src/sap/ui/core/support/plugins/Debugging.js +3 -3
  176. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  177. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  178. package/src/sap/ui/core/support/plugins/Performance.js +1 -1
  179. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  180. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  181. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  182. package/src/sap/ui/core/support/plugins/ViewInfo.js +2 -2
  183. package/src/sap/ui/core/support/support.html +1 -1
  184. package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +3 -3
  185. package/src/sap/ui/core/themes/base/shared.less +6 -0
  186. package/src/sap/ui/core/theming/Parameters.js +8 -15
  187. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  188. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  189. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  190. package/src/sap/ui/core/tmpl/Template.js +6 -4
  191. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  192. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  193. package/src/sap/ui/core/util/Export.js +1 -1
  194. package/src/sap/ui/core/util/ExportCell.js +1 -1
  195. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  196. package/src/sap/ui/core/util/ExportRow.js +1 -1
  197. package/src/sap/ui/core/util/ExportType.js +1 -1
  198. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  199. package/src/sap/ui/core/util/File.js +1 -1
  200. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  201. package/src/sap/ui/core/util/MockServer.js +45 -71
  202. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  203. package/src/sap/ui/core/util/ResponsivePaddingsEnablement.js +4 -3
  204. package/src/sap/ui/core/util/XMLPreprocessor.js +2 -2
  205. package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +1 -1
  206. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  207. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  208. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  209. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  210. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  211. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  212. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  213. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  214. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  215. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  216. package/src/sap/ui/debug/ControlTree.js +1 -1
  217. package/src/sap/ui/debug/DebugEnv.js +1 -1
  218. package/src/sap/ui/debug/PropertyList.css +1 -31
  219. package/src/sap/ui/debug/PropertyList.js +6 -250
  220. package/src/sap/ui/dom/getScrollbarSize.js +1 -1
  221. package/src/sap/ui/dom/jquery/control.js +1 -0
  222. package/src/sap/ui/events/jquery/EventSimulation.js +4 -4
  223. package/src/sap/ui/model/ClientModel.js +1 -1
  224. package/src/sap/ui/model/CompositeDataState.js +1 -1
  225. package/src/sap/ui/model/CompositeType.js +1 -1
  226. package/src/sap/ui/model/Context.js +3 -0
  227. package/src/sap/ui/model/ContextBinding.js +1 -1
  228. package/src/sap/ui/model/DataState.js +2 -2
  229. package/src/sap/ui/model/ListBinding.js +2 -2
  230. package/src/sap/ui/model/ManagedObjectBindingSupport.js +871 -0
  231. package/src/sap/ui/model/MetaModel.js +1 -1
  232. package/src/sap/ui/model/Model.js +16 -5
  233. package/src/sap/ui/model/SelectionModel.js +1 -1
  234. package/src/sap/ui/model/SimpleType.js +2 -2
  235. package/src/sap/ui/model/Sorter.js +2 -2
  236. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  237. package/src/sap/ui/model/Type.js +1 -1
  238. package/src/sap/ui/model/json/JSONModel.js +2 -2
  239. package/src/sap/ui/model/message/MessageModel.js +1 -1
  240. package/src/sap/ui/model/odata/AnnotationHelper.js +4 -4
  241. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  242. package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
  243. package/src/sap/ui/model/odata/ODataMetaModel.js +10 -10
  244. package/src/sap/ui/model/odata/ODataMetadata.js +1 -1
  245. package/src/sap/ui/model/odata/ODataModel.js +1 -1
  246. package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +22 -29
  247. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  248. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  249. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  250. package/src/sap/ui/model/odata/type/Date.js +1 -1
  251. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  252. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  253. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  254. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
  255. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  256. package/src/sap/ui/model/odata/type/Double.js +1 -1
  257. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  258. package/src/sap/ui/model/odata/type/Int.js +1 -1
  259. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  260. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  261. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  262. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  263. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  264. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  265. package/src/sap/ui/model/odata/type/Single.js +1 -1
  266. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  267. package/src/sap/ui/model/odata/type/String.js +1 -1
  268. package/src/sap/ui/model/odata/type/Time.js +1 -1
  269. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  270. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  271. package/src/sap/ui/model/odata/v2/Context.js +5 -5
  272. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
  273. package/src/sap/ui/model/odata/v2/ODataContextBinding.js +1 -1
  274. package/src/sap/ui/model/odata/v2/ODataListBinding.js +1 -1
  275. package/src/sap/ui/model/odata/v2/ODataModel.js +4 -4
  276. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
  277. package/src/sap/ui/model/odata/v4/AnnotationHelper.js +3 -3
  278. package/src/sap/ui/model/odata/v4/Context.js +88 -54
  279. package/src/sap/ui/model/odata/v4/ODataBinding.js +47 -4
  280. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +86 -66
  281. package/src/sap/ui/model/odata/v4/ODataListBinding.js +96 -68
  282. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +13 -10
  283. package/src/sap/ui/model/odata/v4/ODataModel.js +247 -27
  284. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +23 -5
  285. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +14 -8
  286. package/src/sap/ui/model/odata/v4/ODataUtils.js +7 -4
  287. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +8 -8
  288. package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +40 -6
  289. package/src/sap/ui/model/odata/v4/lib/_Cache.js +89 -69
  290. package/src/sap/ui/model/odata/v4/lib/_ConcatHelper.js +2 -3
  291. package/src/sap/ui/model/odata/v4/lib/_Helper.js +47 -35
  292. package/src/sap/ui/model/odata/v4/lib/_MinMaxHelper.js +2 -3
  293. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +5 -0
  294. package/src/sap/ui/model/resource/ResourceModel.js +2 -2
  295. package/src/sap/ui/model/type/Boolean.js +1 -1
  296. package/src/sap/ui/model/type/Currency.js +2 -2
  297. package/src/sap/ui/model/type/Date.js +1 -1
  298. package/src/sap/ui/model/type/DateInterval.js +1 -1
  299. package/src/sap/ui/model/type/DateTime.js +1 -1
  300. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  301. package/src/sap/ui/model/type/FileSize.js +1 -1
  302. package/src/sap/ui/model/type/Float.js +1 -1
  303. package/src/sap/ui/model/type/Integer.js +1 -1
  304. package/src/sap/ui/model/type/String.js +2 -2
  305. package/src/sap/ui/model/type/Time.js +1 -1
  306. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  307. package/src/sap/ui/model/type/Unit.js +1 -1
  308. package/src/sap/ui/model/xml/XMLModel.js +1 -1
  309. package/src/sap/ui/qunit/QUnitUtils.js +1 -2
  310. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  311. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  312. package/src/sap/ui/test/OpaBuilder.js +1 -1
  313. package/src/sap/ui/test/generic/TestBase.js +1 -1
  314. package/src/sap/ui/util/Storage.js +1 -1
@@ -63,7 +63,7 @@ sap.ui.define([
63
63
  * @extends sap.ui.model.type.Unit
64
64
  * @public
65
65
  * @since 1.63.0
66
- * @version 1.105.0
66
+ * @version 1.106.0
67
67
  */
68
68
  var Unit = BaseUnit.extend("sap.ui.model.odata.type.Unit", {
69
69
  constructor : function (oFormatOptions, oConstraints, aDynamicFormatOptionNames) {
@@ -60,7 +60,7 @@ sap.ui.define([
60
60
  * @hideconstructor
61
61
  * @public
62
62
  * @since 1.93.0
63
- * @version 1.105.0
63
+ * @version 1.106.0
64
64
  */
65
65
  var Context = BaseContext.extend("sap.ui.model.odata.v2.Context", {
66
66
  constructor : function (oModel, sPath, sDeepPath, oCreatePromise, bInactive) {
@@ -129,7 +129,7 @@ sap.ui.define([
129
129
  * the entity for this context has been stored in the back end, {@link #created} returns
130
130
  * <code>undefined</code>.
131
131
  *
132
- * @returns {Promise}
132
+ * @returns {Promise<any|undefined>|undefined}
133
133
  * A promise for a context which has been created via
134
134
  * {@link sap.ui.model.odata.v2.ODataModel#createEntry} or
135
135
  * {@link sap.ui.model.odata.v2.ODataListBinding#create}, otherwise <code>undefined</code>.
@@ -176,8 +176,8 @@ sap.ui.define([
176
176
  * Defines whether to update all bindings after submitting this change operation,
177
177
  * see {@link #setRefreshAfterChange}. If given, this overrules the model-wide
178
178
  * <code>refreshAfterChange</code> flag for this operation only.
179
- * @returns {Promise} A promise resolving with <code>undefined</code> in case of successful
180
- * deletion or rejecting with an error in case the deletion failed
179
+ * @returns {Promise<undefined>} A promise resolving with <code>undefined</code> in case of
180
+ * successful deletion or rejecting with an error in case the deletion failed
181
181
  * @throws {Error}
182
182
  * If the given parameter map contains any other parameter than those documented above in case
183
183
  * of a persistent context
@@ -308,7 +308,7 @@ sap.ui.define([
308
308
  * "@$ui5.context.isTransient" instance annotation at the entity, see
309
309
  * {@link sap.ui.model.odata.v2.ODataModel#getProperty} for details.
310
310
  *
311
- * @returns {boolean}
311
+ * @returns {boolean|undefined}
312
312
  * <ul>
313
313
  * <li><code>true</code>: if the context has been created via
314
314
  * {@link sap.ui.model.odata.v2.ODataModel#createEntry} or
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @class Annotation loader for OData V2 services
36
36
  *
37
37
  * @author SAP SE
38
- * @version 1.105.0
38
+ * @version 1.106.0
39
39
  *
40
40
  * @public
41
41
  * @since 1.37.0
@@ -59,7 +59,7 @@ sap.ui.define([
59
59
  /**
60
60
  * Returns the bound context.
61
61
  *
62
- * @returns {sap.ui.model.odata.v2.Context}
62
+ * @returns {sap.ui.model.odata.v2.Context|null}
63
63
  * The context object used by this context binding or <code>null</code>
64
64
  * @function
65
65
  * @name sap.ui.model.odata.v2.ODataContextBinding#getBoundContext
@@ -1973,7 +1973,7 @@ sap.ui.define([
1973
1973
  * A callback function to filter only relevant messages. The callback returns whether the
1974
1974
  * given {@link sap.ui.core.message.Message} is considered. If no callback function is given,
1975
1975
  * all messages are considered.
1976
- * @returns {Promise<sap.ui.model.Filter>}
1976
+ * @returns {Promise<sap.ui.model.Filter|null>}
1977
1977
  * A Promise that resolves with a {@link sap.ui.model.Filter} representing the entries with
1978
1978
  * messages; it resolves with <code>null</code> if the binding is not resolved or if there is
1979
1979
  * no message for any entry
@@ -203,7 +203,7 @@ sap.ui.define([
203
203
  * This model is not prepared to be inherited from.
204
204
  *
205
205
  * @author SAP SE
206
- * @version 1.105.0
206
+ * @version 1.106.0
207
207
  *
208
208
  * @public
209
209
  * @alias sap.ui.model.odata.v2.ODataModel
@@ -2771,7 +2771,7 @@ sap.ui.define([
2771
2771
  * <code>undefined</code> when the <code>vValue</code> can't be interpreted.
2772
2772
  *
2773
2773
  * @param {string|object|sap.ui.model.Context} vValue The canonical entry URI, the context or entry object
2774
- * @returns {string} Key of the entry or <code>undefined</code>
2774
+ * @returns {string|undefined} Key of the entry or <code>undefined</code>
2775
2775
  * @public
2776
2776
  */
2777
2777
  ODataModel.prototype.getKey = function(vValue) {
@@ -2916,7 +2916,7 @@ sap.ui.define([
2916
2916
  * Comma-separated list of properties or paths to properties to select
2917
2917
  * @param {string} [mParameters.expand]
2918
2918
  * Comma-separated list of navigation properties or paths to navigation properties to expand
2919
- * @returns {any}
2919
+ * @returns {any|undefined}
2920
2920
  * The value for the given path and context or <code>undefined</code> if data or entity type
2921
2921
  * cannot be found or if not all selected properties are available
2922
2922
  *
@@ -4767,7 +4767,7 @@ sap.ui.define([
4767
4767
  * @param {sap.ui.model.Context} [oContext] The binding context
4768
4768
  * @param {object} [oEntity] The entity data
4769
4769
  *
4770
- * @returns {string} The found ETag (or <code>null</code> if none could be found)
4770
+ * @returns {string|null} The found ETag (or <code>null</code> if none could be found)
4771
4771
  * @public
4772
4772
  */
4773
4773
  ODataModel.prototype.getETag = function(sPath, oContext, oEntity) {
@@ -94,7 +94,7 @@ sap.ui.define([
94
94
  * @extends sap.ui.model.TreeBinding
95
95
  * @hideconstructor
96
96
  * @public
97
- * @version 1.105.0
97
+ * @version 1.106.0
98
98
  */
99
99
  var ODataTreeBinding = TreeBinding.extend("sap.ui.model.odata.v2.ODataTreeBinding", /** @lends sap.ui.model.odata.v2.ODataTreeBinding.prototype */ {
100
100
 
@@ -17,9 +17,9 @@ sap.ui.define([
17
17
  rUnsupportedPathSegments = /\$(?:Navigation)?PropertyPath/,
18
18
  /**
19
19
  * @classdesc
20
- * A collection of methods which help to consume
21
- * <a href="http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part3-csdl.html">
22
- * OData V4 annotations</a> in XML template views. Every context argument must belong to a
20
+ * A collection of methods which help to consume <a href=
21
+ * "https://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part3-csdl.html#_Vocabulary_and_Annotation"
22
+ * >OData V4 annotations</a> in XML template views. Every context argument must belong to a
23
23
  * {@link sap.ui.model.odata.v4.ODataMetaModel} instance.
24
24
  *
25
25
  * @alias sap.ui.model.odata.v4.AnnotationHelper
@@ -42,7 +42,7 @@ sap.ui.define([
42
42
  * @hideconstructor
43
43
  * @public
44
44
  * @since 1.39.0
45
- * @version 1.105.0
45
+ * @version 1.106.0
46
46
  */
47
47
  Context = BaseContext.extend("sap.ui.model.odata.v4.Context", {
48
48
  constructor : constructor
@@ -258,7 +258,7 @@ sap.ui.define([
258
258
  * Once the promise is resolved, {@link #getPath} returns a path including the key predicate
259
259
  * of the new entity. This requires that all key properties are available.
260
260
  *
261
- * @returns {Promise}
261
+ * @returns {Promise<void>|undefined}
262
262
  * A promise that is resolved without data when the entity represented by this context has
263
263
  * been created in the back end. It is rejected with an <code>Error</code> instance where
264
264
  * <code>oError.canceled === true</code> if the transient entity is deleted before it is
@@ -322,11 +322,11 @@ sap.ui.define([
322
322
  * <ul>
323
323
  * <li> the given group ID is invalid,
324
324
  * <li> this context's root binding is suspended,
325
- * <li> a <code>null</code> group ID is used with a context which is not kept-alive
326
- * (see {@link #isKeepAlive}),
325
+ * <li> a <code>null</code> group ID is used with a context which is not
326
+ * {@link #isKeepAlive kept alive},
327
327
  * <li> the context is already being deleted,
328
328
  * <li> the resulting group ID has {@link sap.ui.model.odata.v4.SubmitMode.API}, and the
329
- * context is kept alive (see {@link #isKeepAlive}), but not in the current collection,
329
+ * context is {@link #isKeepAlive kept alive}, but not in the current collection,
330
330
  * <li> (only before 1.105) the resulting group ID has
331
331
  * {@link sap.ui.model.odata.v4.SubmitMode.API}
332
332
  * </ul>
@@ -441,7 +441,8 @@ sap.ui.define([
441
441
  * @private
442
442
  */
443
443
  Context.prototype.doSetProperty = function (sPath, vValue, oGroupLock, bSkipRetry) {
444
- var oMetaModel = this.oModel.getMetaModel(),
444
+ var oModel = this.oModel,
445
+ oMetaModel = oModel.getMetaModel(),
445
446
  oPromise,
446
447
  oValue,
447
448
  that = this;
@@ -493,8 +494,7 @@ sap.ui.define([
493
494
  * @param {Error} oError
494
495
  */
495
496
  function errorCallback(oError) {
496
- that.oModel.reportError(
497
- "Failed to update path " + that.oModel.resolve(sPath, that),
497
+ oModel.reportError("Failed to update path " + oModel.resolve(sPath, that),
498
498
  sClassName, oError);
499
499
  firePatchCompleted(false);
500
500
  }
@@ -643,12 +643,13 @@ sap.ui.define([
643
643
  };
644
644
 
645
645
  /**
646
- * Returns the "canonical path" of the entity for this context.
647
- * According to "4.3.1 Canonical URL" of the specification "OData Version 4.0 Part 2: URL
648
- * Conventions", this is the "name of the entity set associated with the entity followed by the
649
- * key predicate identifying the entity within the collection".
650
- * Use the canonical path in {@link sap.ui.core.Element#bindElement} to create an element
651
- * binding.
646
+ * Returns the "canonical path" of the entity for this context. According to <a href=
647
+ * "https://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part2-url-conventions.html#canonical-urlurl4.1.1"
648
+ * >"4.3.1 Canonical URL"</a> of the specification "OData Version 4.0 Part 2: URL Conventions",
649
+ * this is the "name of the entity set associated with the entity followed by the key predicate
650
+ * identifying the entity within the collection". Use the canonical path in
651
+ * {@link sap.ui.core.Element#bindElement} to create an element binding.
652
+ *
652
653
  * Note: For a transient context (see {@link #isTransient}) a wrong path is returned unless all
653
654
  * key properties are available within the initial data.
654
655
  *
@@ -708,7 +709,7 @@ sap.ui.define([
708
709
  * The context's index within the binding's collection. It is <code>undefined</code> if
709
710
  * <ul>
710
711
  * <li> it does not belong to a list binding,
711
- * <li> it is kept alive (see {@link #isKeepAlive}), but not in the collection currently.
712
+ * <li> it is {@link #isKeepAlive kept alive}, but not in the collection currently.
712
713
  * </ul>
713
714
  *
714
715
  * @public
@@ -740,7 +741,7 @@ sap.ui.define([
740
741
  * The context's index within the binding's collection. It is <code>undefined</code> if
741
742
  * <ul>
742
743
  * <li> it does not belong to a list binding,
743
- * <li> it is kept alive (see {@link #isKeepAlive}), but not in the collection currently.
744
+ * <li> it is {@link #isKeepAlive kept alive}, but not in the collection currently.
744
745
  * </ul>
745
746
  *
746
747
  * @private
@@ -755,10 +756,9 @@ sap.ui.define([
755
756
  /**
756
757
  * Returns the value for the given path relative to this context. The function allows access to
757
758
  * the complete data the context points to (if <code>sPath</code> is "") or any part thereof.
758
- * The data is a JSON structure as described in
759
- * <a
760
- * href="http://docs.oasis-open.org/odata/odata-json-format/v4.0/odata-json-format-v4.0.html">
761
- * "OData JSON Format Version 4.0"</a>.
759
+ * The data is a JSON structure as described in <a href=
760
+ * "https://docs.oasis-open.org/odata/odata-json-format/v4.0/odata-json-format-v4.0.html"
761
+ * >"OData JSON Format Version 4.0"</a>.
762
762
  * Note that the function clones the result. Modify values via
763
763
  * {@link sap.ui.model.odata.v4.ODataPropertyBinding#setValue}.
764
764
  *
@@ -863,10 +863,9 @@ sap.ui.define([
863
863
  /**
864
864
  * Returns the value for the given path relative to this context. The function allows access to
865
865
  * the complete data the context points to (if <code>sPath</code> is "") or any part thereof.
866
- * The data is a JSON structure as described in
867
- * <a
868
- * href="http://docs.oasis-open.org/odata/odata-json-format/v4.0/odata-json-format-v4.0.html">
869
- * "OData JSON Format Version 4.0"</a>.
866
+ * The data is a JSON structure as described in <a href=
867
+ * "https://docs.oasis-open.org/odata/odata-json-format/v4.0/odata-json-format-v4.0.html"
868
+ * >"OData JSON Format Version 4.0"</a>.
870
869
  * Note that the function returns the cache instance. Do not modify the result, use
871
870
  * {@link sap.ui.model.odata.v4.ODataPropertyBinding#setValue} instead.
872
871
  *
@@ -902,8 +901,8 @@ sap.ui.define([
902
901
  * Returns whether there are pending changes for bindings dependent on this context, or for
903
902
  * unresolved bindings (see {@link sap.ui.model.Binding#isResolved}) which were dependent on
904
903
  * this context at the time the pending change was created. This includes the context itself
905
- * being {@link #isTransient transient}. Since 1.98.0, {@link #isInactive inactive} contexts are
906
- * ignored.
904
+ * being {@link #isTransient transient} or {@link #isDeleted deleted}. Since 1.98.0,
905
+ * {@link #isInactive inactive} contexts are ignored.
907
906
  *
908
907
  * @returns {boolean}
909
908
  * Whether there are pending changes
@@ -914,8 +913,11 @@ sap.ui.define([
914
913
  Context.prototype.hasPendingChanges = function () {
915
914
  return this.isTransient()
916
915
  || this.isDeleted()
916
+ || this.getBinding().hasPendingChangesForPath(this.sPath)
917
917
  || this.oModel.getDependentBindings(this).some(function (oDependentBinding) {
918
- return oDependentBinding.hasPendingChanges();
918
+ return oDependentBinding.oCache
919
+ ? oDependentBinding.hasPendingChanges()
920
+ : oDependentBinding.hasPendingChangesInDependents();
919
921
  })
920
922
  || this.oModel.withUnresolvedBindings("hasPendingChangesInCaches", this.sPath.slice(1));
921
923
  };
@@ -929,7 +931,7 @@ sap.ui.define([
929
931
  *
930
932
  * @public
931
933
  * @see #delete
932
- * @since 1.105
934
+ * @since 1.105.0
933
935
  */
934
936
  Context.prototype.isDeleted = function () {
935
937
  return this.bDeleted;
@@ -955,9 +957,9 @@ sap.ui.define([
955
957
  * Returns whether this context is inactive. The result of this function can also be accessed
956
958
  * via instance annotation "@$ui5.context.isInactive" at the entity.
957
959
  *
958
- * @returns {boolean} <code>true</code> if this context is inactive, <code>false</code> if it
959
- * was created in an inactive state and has been activated, and <code>undefined</code>
960
- * otherwise.
960
+ * @returns {boolean|undefined} <code>true</code> if this context is inactive,
961
+ * <code>false</code> if it was created in an inactive state and has been activated, and
962
+ * <code>undefined</code> otherwise.
961
963
  *
962
964
  * @public
963
965
  * @see #isTransient
@@ -970,7 +972,9 @@ sap.ui.define([
970
972
  };
971
973
 
972
974
  /**
973
- * Returns whether this context is kept alive.
975
+ * Returns whether this context is kept alive even when it is removed from its binding's
976
+ * collection, for example if a filter is applied and the entity represented by this context
977
+ * does not match the filter criteria.
974
978
  *
975
979
  * @returns {boolean} <code>true</code> if this context is kept alive
976
980
  *
@@ -989,7 +993,7 @@ sap.ui.define([
989
993
  * if the context is not transient. The result of this function can also be accessed via
990
994
  * instance annotation "@$ui5.context.isTransient" at the entity.
991
995
  *
992
- * @returns {boolean}
996
+ * @returns {boolean|undefined}
993
997
  * Whether this context is transient if it is created using
994
998
  * {@link sap.ui.model.odata.v4.ODataListBinding#create}; <code>undefined</code> if it is not
995
999
  * created using {@link sap.ui.model.odata.v4.ODataListBinding#create}
@@ -1033,9 +1037,9 @@ sap.ui.define([
1033
1037
  * binding, the parameter must not be used.
1034
1038
  * Supported since 1.55.0
1035
1039
  *
1036
- * Since 1.84.0, if this context is kept alive (see {@link #isKeepAlive}), it is only
1037
- * destroyed if the corresponding entity does no longer exist in the back end. In this case,
1038
- * the <code>fnOnBeforeDestroy</code> callback passed with {@link #setKeepAlive}) is called.
1040
+ * Since 1.84.0, if this context is {@link #isKeepAlive kept alive}, it is only destroyed if
1041
+ * the corresponding entity does no longer exist in the back end. In this case, the
1042
+ * <code>fnOnBeforeDestroy</code> callback passed with {@link #setKeepAlive}) is called.
1039
1043
  * @throws {Error}
1040
1044
  * If the group ID is not valid, if this context has pending changes or does not represent a
1041
1045
  * single entity (see {@link sap.ui.model.odata.v4.ODataListBinding#getHeaderContext}), if the
@@ -1093,8 +1097,9 @@ sap.ui.define([
1093
1097
  * <ul>
1094
1098
  * <li> this context's root binding is suspended,
1095
1099
  * <li> this context is transient (see {@link #isTransient}),
1096
- * <li> the given other context does not belong to the same list binding as this context, or
1097
- * is already in the collection (has an index, see {@link #getIndex}).
1100
+ * <li> the given other context does not belong to the same list binding as this context, is
1101
+ * already in the collection (has an index, see {@link #getIndex}), or is not
1102
+ * {@link #isKeepAlive kept alive}.
1098
1103
  * </ul>
1099
1104
  *
1100
1105
  * @public
@@ -1107,7 +1112,8 @@ sap.ui.define([
1107
1112
  if (this.isTransient()) {
1108
1113
  throw new Error("Cannot replace " + this);
1109
1114
  }
1110
- if (oOtherContext.oBinding !== this.oBinding || oOtherContext.iIndex !== undefined) {
1115
+ if (oOtherContext.oBinding !== this.oBinding || oOtherContext.iIndex !== undefined
1116
+ || !oOtherContext.bKeepAlive) {
1111
1117
  throw new Error("Cannot replace with " + oOtherContext);
1112
1118
  }
1113
1119
  oElement = oOtherContext.getValue();
@@ -1116,12 +1122,14 @@ sap.ui.define([
1116
1122
  };
1117
1123
 
1118
1124
  /**
1119
- * Returns a promise for the "canonical path" of the entity for this context.
1120
- * According to "4.3.1 Canonical URL" of the specification "OData Version 4.0 Part 2: URL
1121
- * Conventions", this is the "name of the entity set associated with the entity followed by the
1122
- * key predicate identifying the entity within the collection".
1123
- * Use the canonical path in {@link sap.ui.core.Element#bindElement} to create an element
1124
- * binding.
1125
+ * Returns a promise for the "canonical path" of the entity for this context. According to
1126
+ * <a href=
1127
+ * "https://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part2-url-conventions.html#canonical-urlurl4.1.1"
1128
+ * >"4.3.1 Canonical URL"</a> of the specification "OData Version 4.0 Part 2: URL Conventions",
1129
+ * this is the "name of the entity set associated with the entity followed by the key predicate
1130
+ * identifying the entity within the collection". Use the canonical path in
1131
+ * {@link sap.ui.core.Element#bindElement} to create an element binding.
1132
+ *
1125
1133
  * Note: For a transient context (see {@link #isTransient}) a wrong path is returned unless all
1126
1134
  * key properties are available within the initial data.
1127
1135
  *
@@ -1139,10 +1147,9 @@ sap.ui.define([
1139
1147
  /**
1140
1148
  * Returns a promise on the value for the given path relative to this context. The function
1141
1149
  * allows access to the complete data the context points to (if <code>sPath</code> is "") or
1142
- * any part thereof. The data is a JSON structure as described in
1143
- * <a
1144
- * href="http://docs.oasis-open.org/odata/odata-json-format/v4.0/odata-json-format-v4.0.html">
1145
- * "OData JSON Format Version 4.0"</a>.
1150
+ * any part thereof. The data is a JSON structure as described in <a href=
1151
+ * "https://docs.oasis-open.org/odata/odata-json-format/v4.0/odata-json-format-v4.0.html"
1152
+ * >"OData JSON Format Version 4.0"</a>.
1146
1153
  * Note that the function clones the result. Modify values via
1147
1154
  * {@link sap.ui.model.odata.v4.Context#setProperty}.
1148
1155
  *
@@ -1322,7 +1329,7 @@ sap.ui.define([
1322
1329
  * specified, make sure that {@link #requestSideEffects} is called after the corresponding
1323
1330
  * updates have been successfully processed by the server and that there are no pending
1324
1331
  * changes for the affected properties.
1325
- * @returns {Promise}
1332
+ * @returns {Promise<undefined>}
1326
1333
  * Promise resolved with <code>undefined</code>, or rejected with an error if loading of side
1327
1334
  * effects fails. Use it to set fields affected by side effects to read-only before
1328
1335
  * {@link #requestSideEffects} and make them editable again when the promise resolves; in the
@@ -1708,19 +1715,46 @@ sap.ui.define([
1708
1715
  };
1709
1716
 
1710
1717
  /**
1711
- * Returns a string representation of this object including the binding path.
1718
+ * Returns a string representation of this object including the {@link #getPath binding path),
1719
+ * {@link #getIndex index}, and state (see also "Context states" of
1720
+ * {@link topic:c9723f8265f644af91c0ed941e114d46 Creating an Entity}).
1712
1721
  *
1713
1722
  * @return {string} A string description of this binding
1723
+ *
1714
1724
  * @public
1725
+ * @see #destroy
1726
+ * @see #isDeleted
1727
+ * @see #isInactive
1728
+ * @see #isTransient
1715
1729
  * @since 1.39.0
1716
1730
  */
1717
1731
  Context.prototype.toString = function () {
1718
- var sIndex = "";
1732
+ var sSuffix = "";
1733
+
1734
+ if (!this.oModel) {
1735
+ sSuffix = ";destroyed";
1736
+ } else if (this.bDeleted) {
1737
+ sSuffix = ";deleted";
1738
+ }
1719
1739
 
1720
1740
  if (this.iIndex !== undefined) {
1721
- sIndex = "[" + this.iIndex + (this.isTransient() ? "|transient" : "") + "]";
1741
+ if (!sSuffix) {
1742
+ switch (this.isTransient()) {
1743
+ case false:
1744
+ sSuffix = ";createdPersisted";
1745
+ break;
1746
+
1747
+ case true:
1748
+ sSuffix = this.bInactive ? ";inactive" : ";transient";
1749
+ break;
1750
+
1751
+ // no default
1752
+ }
1753
+ }
1754
+ sSuffix = "[" + this.iIndex + sSuffix + "]";
1722
1755
  }
1723
- return this.sPath + sIndex;
1756
+
1757
+ return this.sPath + sSuffix;
1724
1758
  };
1725
1759
 
1726
1760
  /**
@@ -384,6 +384,15 @@ sap.ui.define([
384
384
  this.oCache.deregisterChangeListener(sPath, oListener);
385
385
  };
386
386
 
387
+ /**
388
+ * @override
389
+ * @see sap.ui.base.EventProvider#getEventingParent
390
+ */
391
+ ODataBinding.prototype.getEventingParent = function () {
392
+ // this allows that dataRequested/dataReceived events are bubbled up to the model
393
+ return this.oModel;
394
+ };
395
+
387
396
  /**
388
397
  * Hook method for {@link #fetchQueryOptionsForOwnCache} to determine the query options for this
389
398
  * binding.
@@ -635,6 +644,40 @@ sap.ui.define([
635
644
  });
636
645
  };
637
646
 
647
+ /**
648
+ * Fires the 'dataReceived' event. It may be bubbled up to the model.
649
+ *
650
+ * @param {object} oParameters
651
+ * The event parameters
652
+ * @param {object} [oParameters.data]
653
+ * An empty data object if a back-end request succeeds
654
+ * @param {Error} [oParameters.error]
655
+ * The error object if a back-end request failed.
656
+ * @param {boolean} [bPreventBubbling]
657
+ * Whether the dataRequested and dataReceived events must not be bubbled up to the model
658
+ *
659
+ * @private
660
+ */
661
+ // @override sap.ui.model.Binding#fireDataReceived
662
+ ODataBinding.prototype.fireDataReceived = function (oParameters, bPreventBubbling) {
663
+ this.fireEvent("dataReceived", oParameters, /*bAllowPreventDefault*/false,
664
+ /*bEnableEventBubbling*/!bPreventBubbling);
665
+ };
666
+
667
+ /**
668
+ * Fires the 'dataRequested' event. It may be bubbled up to the model.
669
+ *
670
+ * @param {boolean} [bPreventBubbling]
671
+ * Whether the dataRequested and dataReceived events must not be bubbled up to the model
672
+ *
673
+ * @private
674
+ */
675
+ // @override sap.ui.model.Binding#fireDataRequested
676
+ ODataBinding.prototype.fireDataRequested = function (bPreventBubbling) {
677
+ this.fireEvent("dataRequested", undefined, /*bAllowPreventDefault*/false,
678
+ /*bEnableEventBubbling*/!bPreventBubbling);
679
+ };
680
+
638
681
  /**
639
682
  * Returns all bindings which have this binding as parent binding.
640
683
  *
@@ -751,8 +794,8 @@ sap.ui.define([
751
794
  */
752
795
 
753
796
  /**
754
- * Returns the root binding of this binding's hierarchy, see binding
755
- * {@link topic:54e0ddf695af4a6c978472cecb01c64d Initialization and Read Requests}.
797
+ * Returns the root binding of this binding's hierarchy, see
798
+ * {@link topic:fccfb2eb41414f0792c165e69a878717 Initialization and Read Requests}.
756
799
  *
757
800
  * @returns {sap.ui.model.odata.v4.ODataContextBinding|sap.ui.model.odata.v4.ODataListBinding|
758
801
  * sap.ui.model.odata.v4.ODataPropertyBinding|undefined}
@@ -837,7 +880,7 @@ sap.ui.define([
837
880
  * {@link sap.ui.model.odata.v4.ODataListBinding#refresh refresh} (since 1.100.0),
838
881
  * {@link sap.ui.model.odata.v4.ODataListBinding#sort sort}, or
839
882
  * {@link sap.ui.model.odata.v4.ODataListBinding#suspend suspend} because they relate to a
840
- * {@link sap.ui.model.odata.v4.Context#setKeepAlive kept-alive} context of this binding
883
+ * {@link sap.ui.model.odata.v4.Context#isKeepAlive kept-alive} context of this binding
841
884
  * (since 1.97.0). Since 1.98.0, {@link sap.ui.model.odata.v4.Context#isTransient transient}
842
885
  * contexts of a {@link #getRootBinding root binding} are treated as kept-alive by this flag.
843
886
  * Since 1.99.0, the same happens for bindings using the <code>$$ownRequest</code> parameter
@@ -1033,7 +1076,7 @@ sap.ui.define([
1033
1076
  * binding,
1034
1077
  * <li> or a value of type boolean is given.
1035
1078
  * </ul> Since 1.100.0, pending changes are ignored if they relate to a
1036
- * {@link sap.ui.model.odata.v4.Context#setKeepAlive kept-alive} context of this binding, and
1079
+ * {@link sap.ui.model.odata.v4.Context#isKeepAlive kept-alive} context of this binding, and
1037
1080
  * {@link sap.ui.model.odata.v4.Context#isTransient transient} contexts of a
1038
1081
  * {@link #getRootBinding root binding} do not count as pending changes.
1039
1082
  *