@openui5/sap.ui.core 1.140.0 → 1.141.1
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.
- package/THIRDPARTY.txt +2 -2
- package/package.json +1 -1
- package/src/jquery.sap.global.js +1 -1
- package/src/jquery.sap.properties.js +1 -1
- package/src/jquery.sap.resources.js +1 -1
- package/src/jquery.sap.script.js +1 -1
- package/src/jquery.sap.storage.js +3 -3
- package/src/sap/base/Event.js +1 -1
- package/src/sap/base/Eventing.js +1 -1
- package/src/sap/base/config.js +1 -1
- package/src/sap/base/i18n/Formatting.js +1 -1
- package/src/sap/base/i18n/LanguageTag.js +9 -9
- package/src/sap/base/i18n/Localization.js +2 -2
- package/src/sap/base/i18n/date/TimezoneUtils.js +1 -1
- package/src/sap/base/security/encodeURL.js +1 -1
- package/src/sap/base/util/resolveReference.js +3 -1
- package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
- package/src/sap/base/util/restricted/_castArray.js +1 -1
- package/src/sap/base/util/restricted/_compact.js +1 -1
- package/src/sap/base/util/restricted/_curry.js +1 -1
- package/src/sap/base/util/restricted/_debounce.js +1 -1
- package/src/sap/base/util/restricted/_difference.js +1 -1
- package/src/sap/base/util/restricted/_differenceBy.js +1 -1
- package/src/sap/base/util/restricted/_differenceWith.js +1 -1
- package/src/sap/base/util/restricted/_flatMap.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
- package/src/sap/base/util/restricted/_flatten.js +1 -1
- package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
- package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
- package/src/sap/base/util/restricted/_intersection.js +1 -1
- package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
- package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
- package/src/sap/base/util/restricted/_isEqual.js +1 -1
- package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
- package/src/sap/base/util/restricted/_isNil.js +1 -1
- package/src/sap/base/util/restricted/_max.js +1 -1
- package/src/sap/base/util/restricted/_merge.js +1 -1
- package/src/sap/base/util/restricted/_mergeWith.js +1 -1
- package/src/sap/base/util/restricted/_min.js +1 -1
- package/src/sap/base/util/restricted/_omit.js +1 -1
- package/src/sap/base/util/restricted/_pick.js +1 -1
- package/src/sap/base/util/restricted/_pickBy.js +1 -1
- package/src/sap/base/util/restricted/_throttle.js +1 -1
- package/src/sap/base/util/restricted/_toArray.js +1 -1
- package/src/sap/base/util/restricted/_union.js +1 -1
- package/src/sap/base/util/restricted/_unionBy.js +1 -1
- package/src/sap/base/util/restricted/_unionWith.js +1 -1
- package/src/sap/base/util/restricted/_uniq.js +1 -1
- package/src/sap/base/util/restricted/_uniqBy.js +1 -1
- package/src/sap/base/util/restricted/_uniqWith.js +1 -1
- package/src/sap/base/util/restricted/_without.js +1 -1
- package/src/sap/base/util/restricted/_xor.js +1 -1
- package/src/sap/base/util/restricted/_xorBy.js +1 -1
- package/src/sap/base/util/restricted/_xorWith.js +1 -1
- package/src/sap/base/util/restricted/_zipObject.js +1 -1
- package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
- package/src/sap/ui/Device.js +3 -3
- package/src/sap/ui/Global.js +3 -3
- package/src/sap/ui/base/BindingParser.js +21 -4
- package/src/sap/ui/base/DataType.js +1 -1
- package/src/sap/ui/base/Event.js +1 -1
- package/src/sap/ui/base/EventProvider.js +1 -1
- package/src/sap/ui/base/ExpressionParser.js +5 -1
- package/src/sap/ui/base/Interface.js +1 -1
- package/src/sap/ui/base/ManagedObject.js +1 -1
- package/src/sap/ui/base/ManagedObjectMetadata.js +3 -3
- package/src/sap/ui/base/Metadata.js +1 -1
- package/src/sap/ui/base/Object.js +1 -1
- package/src/sap/ui/base/ObjectPool.js +1 -1
- package/src/sap/ui/base/SyncPromise.js +3 -2
- package/src/sap/ui/core/.library +2 -2
- package/src/sap/ui/core/BusyIndicator.js +1 -1
- package/src/sap/ui/core/Component.js +1 -1
- package/src/sap/ui/core/ComponentContainer.js +2 -2
- package/src/sap/ui/core/ComponentMetadata.js +1 -1
- package/src/sap/ui/core/ComponentSupport.js +3 -3
- package/src/sap/ui/core/Configuration.js +4 -4
- package/src/sap/ui/core/Control.js +1 -1
- package/src/sap/ui/core/Core.js +2 -2
- package/src/sap/ui/core/CustomData.js +1 -1
- package/src/sap/ui/core/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/Element.js +3 -3
- package/src/sap/ui/core/ElementMetadata.js +1 -1
- package/src/sap/ui/core/EnabledPropagator.js +1 -1
- package/src/sap/ui/core/EventBus.js +1 -1
- package/src/sap/ui/core/Fragment.js +1 -1
- package/src/sap/ui/core/HTML.js +1 -1
- package/src/sap/ui/core/History.js +1 -1
- package/src/sap/ui/core/Icon.js +1 -1
- package/src/sap/ui/core/IndicationColorSupport.js +1 -1
- package/src/sap/ui/core/IntervalTrigger.js +1 -1
- package/src/sap/ui/core/InvisibleMessage.js +1 -1
- package/src/sap/ui/core/InvisibleRenderer.js +1 -1
- package/src/sap/ui/core/InvisibleText.js +1 -1
- package/src/sap/ui/core/Item.js +1 -1
- package/src/sap/ui/core/LabelEnablement.js +1 -1
- package/src/sap/ui/core/LayoutData.js +1 -1
- package/src/sap/ui/core/Lib.js +41 -38
- package/src/sap/ui/core/ListItem.js +1 -1
- package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
- package/src/sap/ui/core/Locale.js +7 -7
- package/src/sap/ui/core/LocaleData.js +7 -4
- package/src/sap/ui/core/Manifest.js +1 -1
- package/src/sap/ui/core/Message.js +1 -1
- package/src/sap/ui/core/RenderManager.js +1 -1
- package/src/sap/ui/core/Renderer.js +1 -1
- package/src/sap/ui/core/ResizeHandler.js +1 -1
- package/src/sap/ui/core/ScrollBar.js +1 -1
- package/src/sap/ui/core/SeparatorItem.js +1 -1
- package/src/sap/ui/core/Theming.js +22 -18
- package/src/sap/ui/core/Title.js +1 -1
- package/src/sap/ui/core/TooltipBase.js +1 -1
- package/src/sap/ui/core/UIArea.js +1 -1
- package/src/sap/ui/core/UIComponent.js +16 -7
- package/src/sap/ui/core/UIComponentMetadata.js +1 -1
- package/src/sap/ui/core/ValueStateSupport.js +1 -1
- package/src/sap/ui/core/VariantLayoutData.js +1 -1
- package/src/sap/ui/core/XMLComposite.js +1 -1
- package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
- package/src/sap/ui/core/_IconRegistry.js +19 -39
- package/src/sap/ui/core/date/UI5Date.js +1 -1
- package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
- package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
- package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
- package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
- package/src/sap/ui/core/dnd/DragInfo.js +1 -1
- package/src/sap/ui/core/dnd/DropInfo.js +1 -1
- package/src/sap/ui/core/format/FormatUtils.js +1 -1
- package/src/sap/ui/core/format/NumberFormat.js +1 -1
- package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
- package/src/sap/ui/core/getCompatibilityVersion.js +1 -1
- package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
- package/src/sap/ui/core/library.js +3 -3
- package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
- package/src/sap/ui/core/message/Message.js +1 -1
- package/src/sap/ui/core/message/MessageManager.js +1 -1
- package/src/sap/ui/core/message/MessageParser.js +1 -1
- package/src/sap/ui/core/message/MessageProcessor.js +1 -1
- package/src/sap/ui/core/messagebundle_pt.properties +2 -2
- package/src/sap/ui/core/mvc/HTMLView.js +1 -1
- package/src/sap/ui/core/mvc/JSONView.js +1 -1
- package/src/sap/ui/core/mvc/JSView.js +1 -1
- package/src/sap/ui/core/mvc/TemplateView.js +1 -1
- package/src/sap/ui/core/mvc/View.js +2 -2
- package/src/sap/ui/core/mvc/XMLView.js +1 -1
- package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
- package/src/sap/ui/core/postmessage/Bus.js +1 -1
- package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
- package/src/sap/ui/core/routing/History.js +14 -5
- package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
- package/src/sap/ui/core/search/SearchProvider.js +1 -1
- package/src/sap/ui/core/service/Service.js +1 -1
- package/src/sap/ui/core/service/ServiceFactory.js +1 -1
- package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
- package/src/sap/ui/core/support/Plugin.js +1 -1
- package/src/sap/ui/core/support/Support.js +1 -1
- package/src/sap/ui/core/support/ViewInfo.css +12 -12
- package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
- package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
- package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
- package/src/sap/ui/core/support/plugins/Performance.js +1 -1
- package/src/sap/ui/core/support/plugins/Selector.js +1 -1
- package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
- package/src/sap/ui/core/support/plugins/Trace.js +1 -1
- package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
- package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +1 -3
- package/src/sap/ui/core/support/trace/E2eTraceLib.js +13 -7
- package/src/sap/ui/core/themes/base/BrowserScrollbar.less +0 -28
- package/src/sap/ui/core/themes/base/ScrollBar.less +4 -0
- package/src/sap/ui/core/themes/base/base.less +66 -17
- package/src/sap/ui/core/themes/base/global.less +5 -0
- package/src/sap/ui/core/themes/base/skeleton.less +7 -3
- package/src/sap/ui/core/themes/sap_hcb/LocalBusyIndicator.less +4 -0
- package/src/sap/ui/core/themes/sap_hcb/base_LocalBusyIndicator.less +4 -0
- package/src/sap/ui/core/themes/sap_hcb/base_ScrollBar.less +4 -0
- package/src/sap/ui/core/theming/Parameters.js +24 -11
- package/src/sap/ui/core/theming/ThemeManager.js +4 -3
- package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
- package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
- package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
- package/src/sap/ui/core/tmpl/Template.js +1 -1
- package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
- package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
- package/src/sap/ui/core/util/DraftEnabledMockServer.js +47 -43
- package/src/sap/ui/core/util/Export.js +1 -1
- package/src/sap/ui/core/util/ExportCell.js +1 -1
- package/src/sap/ui/core/util/ExportColumn.js +1 -1
- package/src/sap/ui/core/util/ExportRow.js +1 -1
- package/src/sap/ui/core/util/ExportType.js +1 -1
- package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
- package/src/sap/ui/core/util/File.js +1 -1
- package/src/sap/ui/core/util/LibraryInfo.js +1 -1
- package/src/sap/ui/core/util/MockServer.js +1 -1
- package/src/sap/ui/core/util/PasteHelper.js +1 -1
- package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
- package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
- package/src/sap/ui/core/webc/WebComponent.js +1 -1
- package/src/sap/ui/core/webc/WebComponentMetadata.js +1 -1
- package/src/sap/ui/core/ws/ReadyState.js +1 -1
- package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
- package/src/sap/ui/core/ws/WebSocket.js +1 -1
- package/src/sap/ui/debug/ControlTree.js +1 -1
- package/src/sap/ui/debug/DebugEnv.js +1 -1
- package/src/sap/ui/debug/PropertyList.js +1 -1
- package/src/sap/ui/events/F6Navigation.js +11 -3
- package/src/sap/ui/model/ClientModel.js +1 -1
- package/src/sap/ui/model/CompositeDataState.js +1 -1
- package/src/sap/ui/model/CompositeType.js +1 -1
- package/src/sap/ui/model/DataState.js +1 -1
- package/src/sap/ui/model/MetaModel.js +1 -1
- package/src/sap/ui/model/Model.js +1 -1
- package/src/sap/ui/model/SelectionModel.js +1 -1
- package/src/sap/ui/model/SimpleType.js +1 -1
- package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
- package/src/sap/ui/model/Type.js +1 -1
- package/src/sap/ui/model/json/JSONModel.js +1 -1
- package/src/sap/ui/model/message/MessageModel.js +1 -1
- package/src/sap/ui/model/odata/AnnotationHelper.js +1 -1
- package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
- package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
- package/src/sap/ui/model/odata/ODataMetadata.js +1 -1
- package/src/sap/ui/model/odata/ODataModel.js +1 -1
- package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +25 -73
- package/src/sap/ui/model/odata/type/Boolean.js +1 -1
- package/src/sap/ui/model/odata/type/Byte.js +1 -1
- package/src/sap/ui/model/odata/type/Currency.js +1 -1
- package/src/sap/ui/model/odata/type/Date.js +1 -1
- package/src/sap/ui/model/odata/type/DateTime.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
- package/src/sap/ui/model/odata/type/Decimal.js +1 -1
- package/src/sap/ui/model/odata/type/Double.js +1 -1
- package/src/sap/ui/model/odata/type/Guid.js +1 -1
- package/src/sap/ui/model/odata/type/Int.js +1 -1
- package/src/sap/ui/model/odata/type/Int16.js +1 -1
- package/src/sap/ui/model/odata/type/Int32.js +1 -1
- package/src/sap/ui/model/odata/type/Int64.js +1 -1
- package/src/sap/ui/model/odata/type/ODataType.js +1 -1
- package/src/sap/ui/model/odata/type/Raw.js +1 -1
- package/src/sap/ui/model/odata/type/SByte.js +1 -1
- package/src/sap/ui/model/odata/type/Single.js +1 -1
- package/src/sap/ui/model/odata/type/Stream.js +1 -1
- package/src/sap/ui/model/odata/type/String.js +1 -1
- package/src/sap/ui/model/odata/type/Time.js +1 -1
- package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
- package/src/sap/ui/model/odata/type/Unit.js +1 -1
- package/src/sap/ui/model/odata/v2/Context.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataModel.js +23 -9
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +3 -11
- package/src/sap/ui/model/odata/v4/AnnotationHelper.js +11 -7
- package/src/sap/ui/model/odata/v4/Context.js +27 -27
- package/src/sap/ui/model/odata/v4/ODataBinding.js +44 -28
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +16 -15
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +35 -23
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +47 -34
- package/src/sap/ui/model/odata/v4/ODataModel.js +40 -24
- package/src/sap/ui/model/odata/v4/ODataParentBinding.js +19 -15
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +3 -3
- package/src/sap/ui/model/odata/v4/_AnnotationHelperExpression.js +14 -14
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +57 -17
- package/src/sap/ui/model/odata/v4/lib/_Batch.js +10 -7
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +57 -65
- package/src/sap/ui/model/odata/v4/lib/_GroupLock.js +1 -1
- package/src/sap/ui/model/odata/v4/lib/_Helper.js +3 -3
- package/src/sap/ui/model/odata/v4/lib/_MetadataConverter.js +35 -4
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +13 -10
- package/src/sap/ui/model/odata/v4/lib/_V2Requestor.js +2 -2
- package/src/sap/ui/model/resource/ResourceModel.js +1 -1
- package/src/sap/ui/model/type/Boolean.js +1 -1
- package/src/sap/ui/model/type/Currency.js +1 -1
- package/src/sap/ui/model/type/Date.js +1 -1
- package/src/sap/ui/model/type/DateInterval.js +1 -1
- package/src/sap/ui/model/type/DateTime.js +1 -1
- package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
- package/src/sap/ui/model/type/FileSize.js +1 -1
- package/src/sap/ui/model/type/Float.js +1 -1
- package/src/sap/ui/model/type/Integer.js +1 -1
- package/src/sap/ui/model/type/String.js +1 -1
- package/src/sap/ui/model/type/Time.js +1 -1
- package/src/sap/ui/model/type/TimeInterval.js +1 -1
- package/src/sap/ui/model/type/Unit.js +1 -1
- package/src/sap/ui/model/xml/XMLModel.js +1 -1
- package/src/sap/ui/performance/XHRInterceptor.js +14 -9
- package/src/sap/ui/performance/trace/FESR.js +4 -11
- package/src/sap/ui/performance/trace/Passport.js +3 -10
- package/src/sap/ui/performance/trace/_InteractionImpl.js +4 -10
- package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
- package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
- package/src/sap/ui/test/generic/TestBase.js +1 -1
- package/src/sap/ui/test/gherkin/dataTableUtils.js +2 -2
- package/src/sap/ui/thirdparty/caja-html-sanitizer.js +8 -2
- package/src/sap/ui/util/Storage.js +1 -1
- package/src/sap/ui/util/isCrossOriginURL.js +1 -1
- package/src/ui5loader.js +1 -1
|
@@ -215,7 +215,7 @@ sap.ui.define([
|
|
|
215
215
|
+ sForbidden);
|
|
216
216
|
}
|
|
217
217
|
});
|
|
218
|
-
//
|
|
218
|
+
// fall through
|
|
219
219
|
case "$$canonicalPath":
|
|
220
220
|
case "$$clearSelectionOnFilter":
|
|
221
221
|
case "$$noPatch":
|
|
@@ -242,14 +242,16 @@ sap.ui.define([
|
|
|
242
242
|
* one. The error has the property <code>canceled : true</code>
|
|
243
243
|
*
|
|
244
244
|
* @param {sap.ui.model.odata.v4.lib._Cache} oExpectedCache - The expected cache
|
|
245
|
+
* @param {number} [iResetCount] - The cache's expected reset count
|
|
245
246
|
* @throws {Error} If the current cache is not the expected one
|
|
246
247
|
*
|
|
247
248
|
* @private
|
|
248
249
|
*/
|
|
249
|
-
ODataBinding.prototype.checkSameCache = function (oExpectedCache) {
|
|
250
|
+
ODataBinding.prototype.checkSameCache = function (oExpectedCache, iResetCount) {
|
|
250
251
|
var oError;
|
|
251
252
|
|
|
252
|
-
if (this.oCache !== oExpectedCache
|
|
253
|
+
if (this.oCache !== oExpectedCache
|
|
254
|
+
|| iResetCount !== undefined && this.oCache.iResetCount !== iResetCount) {
|
|
253
255
|
oError = new Error(this + " is ignoring response from inactive cache: "
|
|
254
256
|
+ oExpectedCache);
|
|
255
257
|
oError.canceled = true;
|
|
@@ -318,7 +320,7 @@ sap.ui.define([
|
|
|
318
320
|
*
|
|
319
321
|
* @param {boolean} [bForceUpdate]
|
|
320
322
|
* Whether the change event is fired in any case (only allowed for property bindings)
|
|
321
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
323
|
+
* @returns {sap.ui.base.SyncPromise<void>}
|
|
322
324
|
* A promise which is resolved without a defined result when the check is finished, or
|
|
323
325
|
* rejected in case of an error
|
|
324
326
|
* @throws {Error} If called with illegal parameters
|
|
@@ -456,7 +458,7 @@ sap.ui.define([
|
|
|
456
458
|
*
|
|
457
459
|
* @param {sap.ui.model.Context} [oContext]
|
|
458
460
|
* The context instance to be used for a relative binding
|
|
459
|
-
* @returns {object|undefined|sap.ui.base.SyncPromise}
|
|
461
|
+
* @returns {object|undefined|sap.ui.base.SyncPromise<object|undefined>}
|
|
460
462
|
* The binding's query options (if any) or a promise resolving with them
|
|
461
463
|
*
|
|
462
464
|
* @abstract
|
|
@@ -490,14 +492,20 @@ sap.ui.define([
|
|
|
490
492
|
* The group ID; mandatory if <code>bSideEffectsRefresh</code> is set
|
|
491
493
|
* @param {boolean} [bSideEffectsRefresh]
|
|
492
494
|
* Whether to perform a side-effects refresh
|
|
493
|
-
* @
|
|
494
|
-
*
|
|
495
|
-
*
|
|
495
|
+
* @param {boolean} [bSync]
|
|
496
|
+
* Whether to create and set the cache synchronously; <code>bKeepQueryOptions</code> must be
|
|
497
|
+
* <code>true</code>
|
|
498
|
+
* @throws {Error} If
|
|
499
|
+
* <ul>
|
|
500
|
+
* <li> auto-$expand/$select is still running and query options shall be kept (this case is
|
|
501
|
+
* just not yet implemented and should not be needed),
|
|
502
|
+
* <li> bSync is set but bKeepQueryOptions is not.
|
|
503
|
+
* </ul>
|
|
496
504
|
*
|
|
497
505
|
* @private
|
|
498
506
|
*/
|
|
499
507
|
ODataBinding.prototype.fetchCache = function (oContext, bIgnoreParentCache, bKeepQueryOptions,
|
|
500
|
-
sGroupId, bSideEffectsRefresh) {
|
|
508
|
+
sGroupId, bSideEffectsRefresh, bSync) {
|
|
501
509
|
var oCache = this.oCache,
|
|
502
510
|
oCallToken = {
|
|
503
511
|
// propagate old cache from first call of fetchCache to the latest call
|
|
@@ -517,11 +525,15 @@ sap.ui.define([
|
|
|
517
525
|
return;
|
|
518
526
|
}
|
|
519
527
|
|
|
528
|
+
if (bSync && !bKeepQueryOptions) {
|
|
529
|
+
throw new Error("Unsupported bSync w/o bKeepQueryOptions");
|
|
530
|
+
}
|
|
531
|
+
|
|
520
532
|
this.oCache = undefined;
|
|
521
533
|
this.oFetchCacheCallToken = oCallToken;
|
|
522
534
|
if (bKeepQueryOptions) {
|
|
523
|
-
//
|
|
524
|
-
this.oCachePromise = SyncPromise.resolve(Promise.resolve()).then(function () {
|
|
535
|
+
// re-create an equivalent cache, but skip auto-$expand/$select
|
|
536
|
+
this.oCachePromise = SyncPromise.resolve(bSync || Promise.resolve()).then(function () {
|
|
525
537
|
return that.createAndSetCache(that.mCacheQueryOptions, oCache.getResourcePath(),
|
|
526
538
|
oContext, sGroupId, bSideEffectsRefresh, oCache);
|
|
527
539
|
});
|
|
@@ -588,7 +600,7 @@ sap.ui.define([
|
|
|
588
600
|
* @param {boolean} [bIgnoreParentCache]
|
|
589
601
|
* Whether the query options of the parent cache shall be ignored and own query options are
|
|
590
602
|
* determined (see {@link #fetchCache})
|
|
591
|
-
* @returns {object|sap.ui.base.SyncPromise}
|
|
603
|
+
* @returns {object|sap.ui.base.SyncPromise<object>}
|
|
592
604
|
* An object having two properties (or a promise resolving with it):
|
|
593
605
|
* {object} mQueryOptions - The query options to create the cache for this binding or
|
|
594
606
|
* <code>undefined</code> if no cache is to be created
|
|
@@ -599,7 +611,7 @@ sap.ui.define([
|
|
|
599
611
|
ODataBinding.prototype.fetchOrGetQueryOptionsForOwnCache = function (oContext,
|
|
600
612
|
bIgnoreParentCache) {
|
|
601
613
|
var bHasNonSystemQueryOptions,
|
|
602
|
-
vQueryOptions, // {object|undefined|sap.ui.base.SyncPromise}
|
|
614
|
+
vQueryOptions, // {object|undefined|sap.ui.base.SyncPromise<object|undefined>}
|
|
603
615
|
sResolvedPath = this.oModel.resolve(this.sPath, oContext),
|
|
604
616
|
that = this;
|
|
605
617
|
|
|
@@ -634,7 +646,7 @@ sap.ui.define([
|
|
|
634
646
|
* Whether an empty query options object should be replaced by <code>undefined</code>
|
|
635
647
|
* @param {string} [sReducedPath=sResolvedPath]
|
|
636
648
|
* The reduced path
|
|
637
|
-
* @returns {object|sap.ui.base.SyncPromise}
|
|
649
|
+
* @returns {object|sap.ui.base.SyncPromise<object>}
|
|
638
650
|
* A result for #fetchOrGetQueryOptionsForOwnCache
|
|
639
651
|
*/
|
|
640
652
|
function wrapQueryOptions(bDropEmptyObject, sReducedPath) {
|
|
@@ -725,9 +737,9 @@ sap.ui.define([
|
|
|
725
737
|
*
|
|
726
738
|
* @param {sap.ui.model.Context|sap.ui.model.odata.v4.Context} [oContext=this.oContext]
|
|
727
739
|
* A context; if omitted, the binding's context is used
|
|
728
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
729
|
-
* <code>undefined</code> for an unresolved
|
|
730
|
-
* fails, the promise is rejected.
|
|
740
|
+
* @returns {sap.ui.base.SyncPromise<string|undefined>}
|
|
741
|
+
* A promise resolving with the resource path or <code>undefined</code> for an unresolved
|
|
742
|
+
* binding. If computation of the canonical path fails, the promise is rejected.
|
|
731
743
|
*
|
|
732
744
|
* @private
|
|
733
745
|
*/
|
|
@@ -893,7 +905,7 @@ sap.ui.define([
|
|
|
893
905
|
/**
|
|
894
906
|
* Returns a promise which resolves as soon as this binding is resumed.
|
|
895
907
|
*
|
|
896
|
-
* @returns {sap.ui.base.SyncPromise
|
|
908
|
+
* @returns {sap.ui.base.SyncPromise<void>|undefined}
|
|
897
909
|
* This binding's current promise for {@link sap.ui.model.odata.v4.ODataParentBinding#resume},
|
|
898
910
|
* or <code>undefined</code> in case it is not currently suspended.
|
|
899
911
|
*
|
|
@@ -931,7 +943,7 @@ sap.ui.define([
|
|
|
931
943
|
/**
|
|
932
944
|
* Returns a promise which resolves as soon as this binding's root binding is resumed.
|
|
933
945
|
*
|
|
934
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
946
|
+
* @returns {sap.ui.base.SyncPromise<void>}
|
|
935
947
|
* The root binding's current promise for {@link #resume}, or
|
|
936
948
|
* <code>SyncPromise.resolve()</code> in case we have no root binding or it is not currently
|
|
937
949
|
* suspended.
|
|
@@ -1203,7 +1215,7 @@ sap.ui.define([
|
|
|
1203
1215
|
* Returns a sync promise that is resolved when this binding is ready to be used (that is, when
|
|
1204
1216
|
* its cache has been determined).
|
|
1205
1217
|
*
|
|
1206
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
1218
|
+
* @returns {sap.ui.base.SyncPromise<void>}
|
|
1207
1219
|
* A sync promise that is resolved without a defined result when this binding is ready
|
|
1208
1220
|
*
|
|
1209
1221
|
* @private
|
|
@@ -1287,7 +1299,11 @@ sap.ui.define([
|
|
|
1287
1299
|
* If <code>true</code>, a property binding is expected to check for updates
|
|
1288
1300
|
* @param {boolean} [bKeepCacheOnError]
|
|
1289
1301
|
* If <code>true</code>, the binding data remains unchanged if the refresh fails
|
|
1290
|
-
* @
|
|
1302
|
+
* @param {boolean} [bSync]
|
|
1303
|
+
* If <code>true</code>, the cache is created synchronously; cannot be combined with the
|
|
1304
|
+
* ODataModel's <code>sharedRequests</code> constructor parameter or with the
|
|
1305
|
+
* ODataListBinding's <code>$$sharedRequest</code> binding parameter
|
|
1306
|
+
* @returns {sap.ui.base.SyncPromise<void>}
|
|
1291
1307
|
* A promise which is resolved without a defined result when the refresh is finished, or
|
|
1292
1308
|
* rejected when the refresh fails; the promise is resolved immediately on a suspended binding
|
|
1293
1309
|
* @throws {Error}
|
|
@@ -1358,7 +1374,7 @@ sap.ui.define([
|
|
|
1358
1374
|
* The effective group ID
|
|
1359
1375
|
* @param {string[]} aAbsolutePaths
|
|
1360
1376
|
* The absolute paths to request side effects for
|
|
1361
|
-
* @returns {sap.ui.base.SyncPromise
|
|
1377
|
+
* @returns {sap.ui.base.SyncPromise<void>|undefined}
|
|
1362
1378
|
* A promise which is resolved without a defined result, or rejected with an error if loading
|
|
1363
1379
|
* of side effects fails, or <code>undefined</code> if there is nothing to do
|
|
1364
1380
|
*
|
|
@@ -1453,7 +1469,7 @@ sap.ui.define([
|
|
|
1453
1469
|
*
|
|
1454
1470
|
* @param {string} sPath
|
|
1455
1471
|
* The path (absolute or relative to this binding)
|
|
1456
|
-
* @param {sap.ui.base.SyncPromise
|
|
1472
|
+
* @param {Array<sap.ui.base.SyncPromise<void>>} aPromises
|
|
1457
1473
|
* List of promises which is extended for each call to {@link #resetChangesForPath}
|
|
1458
1474
|
* @throws {Error}
|
|
1459
1475
|
* If there is a change of this binding which has been sent to the server and for which there
|
|
@@ -1470,7 +1486,7 @@ sap.ui.define([
|
|
|
1470
1486
|
/**
|
|
1471
1487
|
* Resets pending changes in all dependent bindings.
|
|
1472
1488
|
*
|
|
1473
|
-
* @param {sap.ui.base.SyncPromise
|
|
1489
|
+
* @param {Array<sap.ui.base.SyncPromise<void>>} aPromises
|
|
1474
1490
|
* List of promises which is extended for each call to {@link #resetChangesInDependents}.
|
|
1475
1491
|
* @param {boolean} [sPathPrefix]
|
|
1476
1492
|
* If supplied, only caches having a resource path starting with <code>sPathPrefix</code> are
|
|
@@ -1541,7 +1557,7 @@ sap.ui.define([
|
|
|
1541
1557
|
* Whether the application wants to skip the automatic refresh
|
|
1542
1558
|
* @param {string} sGroupId
|
|
1543
1559
|
* The group ID for missing properties requests
|
|
1544
|
-
* @returns {sap.ui.base.SyncPromise
|
|
1560
|
+
* @returns {sap.ui.base.SyncPromise<void>|undefined}
|
|
1545
1561
|
* A promise which is resolved without a defined result when the update is finished, or
|
|
1546
1562
|
* rejected with an error if something went wrong; or <code>undefined</code> if there is no
|
|
1547
1563
|
* need to wait
|
|
@@ -1592,9 +1608,9 @@ sap.ui.define([
|
|
|
1592
1608
|
* @param {boolean} [bSync] Whether to use the synchronously available cache
|
|
1593
1609
|
* @param {boolean} [bWithOrWithoutCache] Whether to call the processor even without a cache
|
|
1594
1610
|
* (currently implemented for operation bindings only)
|
|
1595
|
-
* @returns {sap.ui.base.SyncPromise} A sync promise that is resolved with either the
|
|
1596
|
-
* the processor or <code>undefined</code> if there is no cache for this binding, or
|
|
1597
|
-
* cache determination is not yet completed
|
|
1611
|
+
* @returns {sap.ui.base.SyncPromise<any>} A sync promise that is resolved with either the
|
|
1612
|
+
* result of the processor or <code>undefined</code> if there is no cache for this binding, or
|
|
1613
|
+
* if the cache determination is not yet completed
|
|
1598
1614
|
*
|
|
1599
1615
|
* @private
|
|
1600
1616
|
*/
|
|
@@ -74,7 +74,7 @@ sap.ui.define([
|
|
|
74
74
|
* @mixes sap.ui.model.odata.v4.ODataParentBinding
|
|
75
75
|
* @public
|
|
76
76
|
* @since 1.37.0
|
|
77
|
-
* @version 1.
|
|
77
|
+
* @version 1.141.1
|
|
78
78
|
*
|
|
79
79
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getGroupId as #getGroupId
|
|
80
80
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getRootBinding as #getRootBinding
|
|
@@ -225,7 +225,7 @@ sap.ui.define([
|
|
|
225
225
|
|
|
226
226
|
/*
|
|
227
227
|
* Fires a "change" event and refreshes dependent bindings.
|
|
228
|
-
* @returns {sap.ui.base.SyncPromise} A promise resolving when the refresh is finished
|
|
228
|
+
* @returns {sap.ui.base.SyncPromise<void>} A promise resolving when the refresh is finished
|
|
229
229
|
*/
|
|
230
230
|
function fireChangeAndRefreshDependentBindings() {
|
|
231
231
|
that._fireChange({reason : ChangeReason.Change});
|
|
@@ -428,7 +428,7 @@ sap.ui.define([
|
|
|
428
428
|
* If a back-end request fails, the 'dataReceived' event provides an <code>Error</code> in the
|
|
429
429
|
* 'error' event parameter.
|
|
430
430
|
*
|
|
431
|
-
* Since 1.106 this event is bubbled up to the model, unless a listener calls
|
|
431
|
+
* Since 1.106, this event is bubbled up to the model, unless a listener calls
|
|
432
432
|
* {@link sap.ui.base.Event#cancelBubble oEvent.cancelBubble()}.
|
|
433
433
|
*
|
|
434
434
|
* @param {sap.ui.base.Event} oEvent
|
|
@@ -456,7 +456,7 @@ sap.ui.define([
|
|
|
456
456
|
* fired: Whatever should happen in the event handler attached to that event, can instead be
|
|
457
457
|
* done before calling {@link #invoke}.
|
|
458
458
|
*
|
|
459
|
-
* Since 1.106 this event is bubbled up to the model, unless a listener calls
|
|
459
|
+
* Since 1.106, this event is bubbled up to the model, unless a listener calls
|
|
460
460
|
* {@link sap.ui.base.Event#cancelBubble oEvent.cancelBubble()}.
|
|
461
461
|
*
|
|
462
462
|
* @param {sap.ui.base.Event} oEvent
|
|
@@ -563,7 +563,7 @@ sap.ui.define([
|
|
|
563
563
|
* actions only
|
|
564
564
|
* @param {function} [fnOnStrictHandlingFailed]
|
|
565
565
|
* Callback for strict handling; supported for actions only
|
|
566
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
566
|
+
* @returns {sap.ui.base.SyncPromise<any>}
|
|
567
567
|
* The request promise
|
|
568
568
|
* @throws {Error} If
|
|
569
569
|
* <ul>
|
|
@@ -879,7 +879,7 @@ sap.ui.define([
|
|
|
879
879
|
* A property binding which registers itself as listener at the cache
|
|
880
880
|
* @param {boolean} [bCached]
|
|
881
881
|
* Whether to return cached values only and not initiate a request
|
|
882
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
882
|
+
* @returns {sap.ui.base.SyncPromise<any>}
|
|
883
883
|
* A promise on the outcome of the cache's <code>fetchValue</code> call; it is rejected in
|
|
884
884
|
* case cached values are asked for, but not found, or if the cache is no longer the active
|
|
885
885
|
* cache when the response arrives
|
|
@@ -1358,12 +1358,13 @@ sap.ui.define([
|
|
|
1358
1358
|
* context only. Such a message can only be connected to a corresponding control if the
|
|
1359
1359
|
* control's property bindings use the return value context as binding context.
|
|
1360
1360
|
* <br>
|
|
1361
|
-
*
|
|
1362
|
-
* of one navigation property. In addition to the existing preconditions
|
|
1363
|
-
* context, the metadata has to specify a partner attribute for the
|
|
1364
|
-
* the partner relationship has to be bi-directional. Also
|
|
1365
|
-
* to be available
|
|
1366
|
-
*
|
|
1361
|
+
* Since 1.141.0, a return value context may also be provided if the parent context's path
|
|
1362
|
+
* contains a maximum of one navigation property. In addition to the existing preconditions
|
|
1363
|
+
* for a return value context, the metadata has to specify a partner attribute for the
|
|
1364
|
+
* navigation property and the partner relationship has to be bi-directional. Also a
|
|
1365
|
+
* navigation property binding has to be available for the entity set of the first segment in
|
|
1366
|
+
* the parent context's path. <b>Note:</b> Ensure your service implementation returns all
|
|
1367
|
+
* selected key properties; otherwise, no return value context is provided.
|
|
1367
1368
|
* @throws {Error} If
|
|
1368
1369
|
* <ul>
|
|
1369
1370
|
* <li> the binding's root binding is suspended,
|
|
@@ -1501,7 +1502,7 @@ sap.ui.define([
|
|
|
1501
1502
|
/**
|
|
1502
1503
|
* Returns a sync promise that tells whether we are ready to inherit $expand/$select.
|
|
1503
1504
|
*
|
|
1504
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
1505
|
+
* @returns {sap.ui.base.SyncPromise<void>}
|
|
1505
1506
|
* A sync promise that resolves without a defined result as soon as we are ready to inherit
|
|
1506
1507
|
* $expand/$select
|
|
1507
1508
|
*
|
|
@@ -1525,7 +1526,7 @@ sap.ui.define([
|
|
|
1525
1526
|
* If <code>true</code>, a property binding is expected to check for updates
|
|
1526
1527
|
* @param {boolean} [bKeepCacheOnError]
|
|
1527
1528
|
* If <code>true</code>, the binding data remains unchanged if the refresh fails
|
|
1528
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
1529
|
+
* @returns {sap.ui.base.SyncPromise<void>}
|
|
1529
1530
|
* A promise resolving when all dependent bindings are refreshed; it is rejected
|
|
1530
1531
|
* when the refresh fails; the promise is resolved immediately on a suspended binding
|
|
1531
1532
|
* @throws {Error}
|
|
@@ -1636,7 +1637,7 @@ sap.ui.define([
|
|
|
1636
1637
|
* The group ID for the refresh
|
|
1637
1638
|
* @param {boolean} [bKeepCacheOnError]
|
|
1638
1639
|
* If <code>true</code>, the binding data remains unchanged if the refresh fails
|
|
1639
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
1640
|
+
* @returns {sap.ui.base.SyncPromise<void>}
|
|
1640
1641
|
* A promise which is resolved without a defined result when the refresh is finished and if
|
|
1641
1642
|
* the context is this binding's return value context; <code>null</code> otherwise
|
|
1642
1643
|
*
|
|
@@ -60,7 +60,7 @@ sap.ui.define([
|
|
|
60
60
|
* @mixes sap.ui.model.odata.v4.ODataParentBinding
|
|
61
61
|
* @public
|
|
62
62
|
* @since 1.37.0
|
|
63
|
-
* @version 1.
|
|
63
|
+
* @version 1.141.1
|
|
64
64
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getGroupId as #getGroupId
|
|
65
65
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getRootBinding as #getRootBinding
|
|
66
66
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getUpdateGroupId as #getUpdateGroupId
|
|
@@ -448,7 +448,7 @@ sap.ui.define([
|
|
|
448
448
|
* If a back-end request fails, the 'dataReceived' event provides an <code>Error</code> in the
|
|
449
449
|
* 'error' event parameter.
|
|
450
450
|
*
|
|
451
|
-
* Since 1.106 this event is bubbled up to the model, unless a listener calls
|
|
451
|
+
* Since 1.106, this event is bubbled up to the model, unless a listener calls
|
|
452
452
|
* {@link sap.ui.base.Event#cancelBubble oEvent.cancelBubble()}.
|
|
453
453
|
*
|
|
454
454
|
* @param {sap.ui.base.Event} oEvent
|
|
@@ -474,7 +474,7 @@ sap.ui.define([
|
|
|
474
474
|
* for example to switch on a busy indicator. Registered event handlers are called without
|
|
475
475
|
* parameters.
|
|
476
476
|
*
|
|
477
|
-
* Since 1.106 this event is bubbled up to the model, unless a listener calls
|
|
477
|
+
* Since 1.106, this event is bubbled up to the model, unless a listener calls
|
|
478
478
|
* {@link sap.ui.base.Event#cancelBubble oEvent.cancelBubble()}.
|
|
479
479
|
*
|
|
480
480
|
* @param {sap.ui.base.Event} oEvent
|
|
@@ -839,12 +839,16 @@ sap.ui.define([
|
|
|
839
839
|
* {@link sap.ui.model.odata.v4.Context#requestSideEffects} in the same $batch to refresh the
|
|
840
840
|
* complete collection containing the newly created entity.
|
|
841
841
|
*
|
|
842
|
-
* Since 1.115.0 it is possible to create nested entities in a collection-valued navigation
|
|
842
|
+
* Since 1.115.0, it is possible to create nested entities in a collection-valued navigation
|
|
843
843
|
* property together with the entity (so-called "deep create"), for example a list of items for
|
|
844
844
|
* an order. For this purpose, bind the list relative to a transient context. Calling this
|
|
845
845
|
* method then adds a transient entity to the parent's navigation property, which is sent with
|
|
846
846
|
* the payload of the parent entity. Such a nested context cannot be inactive.
|
|
847
847
|
*
|
|
848
|
+
* <b>Caution:</b> Only a single list must be bound to the same collection-valued navigation
|
|
849
|
+
* property relative to a transient context. Created data cannot be shared between list
|
|
850
|
+
* bindings.
|
|
851
|
+
*
|
|
848
852
|
* <b>Note:</b> After a successful creation of the main entity the context returned for a
|
|
849
853
|
* nested entity is no longer valid. Do not use the
|
|
850
854
|
* {@link sap.ui.model.odata.v4.Context#created created} promise of such a context! New contexts
|
|
@@ -854,7 +858,7 @@ sap.ui.define([
|
|
|
854
858
|
* of <code>Error</code>, even if the deep create succeeds. This error always has the property
|
|
855
859
|
* <code>canceled</code> with the value <code>true</code>.
|
|
856
860
|
*
|
|
857
|
-
* Since 1.118.0 deep create also supports single-valued navigation properties; no API call is
|
|
861
|
+
* Since 1.118.0, deep create also supports single-valued navigation properties; no API call is
|
|
858
862
|
* required in this case. Simply bind properties of the related entity relative to a transient
|
|
859
863
|
* context. An update to the property adds it to the POST request of the parent entity, and by
|
|
860
864
|
* this the create becomes deep.
|
|
@@ -908,7 +912,7 @@ sap.ui.define([
|
|
|
908
912
|
* on the client and requests only data that is missing.
|
|
909
913
|
* @param {boolean} [bAtEnd]
|
|
910
914
|
* Whether the entity is inserted at the end of the list. Supported since 1.66.0.
|
|
911
|
-
* Since 1.99.0 the first insertion determines the overall position of created contexts
|
|
915
|
+
* Since 1.99.0, the first insertion determines the overall position of created contexts
|
|
912
916
|
* within the binding's context list. Every succeeding insertion is relative to the created
|
|
913
917
|
* contexts within this list.
|
|
914
918
|
* @param {boolean} [bInactive]
|
|
@@ -1102,7 +1106,8 @@ sap.ui.define([
|
|
|
1102
1106
|
if (bRefresh) {
|
|
1103
1107
|
oCreatePromise = SyncPromise.all([
|
|
1104
1108
|
oCreatePromise,
|
|
1105
|
-
|
|
1109
|
+
// sGroupId is set -> side-effects refresh
|
|
1110
|
+
this.refreshInternal("", sGroupId, false, true, true)
|
|
1106
1111
|
]);
|
|
1107
1112
|
}
|
|
1108
1113
|
|
|
@@ -1144,6 +1149,8 @@ sap.ui.define([
|
|
|
1144
1149
|
* @returns {boolean}
|
|
1145
1150
|
* <code>true</code>, if contexts have been created or dropped or <code>isLengthFinal</code>
|
|
1146
1151
|
* has changed
|
|
1152
|
+
* @throws {Error}
|
|
1153
|
+
* If a created context from a foreign binding is about to be reused
|
|
1147
1154
|
*
|
|
1148
1155
|
* @private
|
|
1149
1156
|
*/
|
|
@@ -1200,6 +1207,9 @@ sap.ui.define([
|
|
|
1200
1207
|
// created persisted contexts can be restored from their data, for example in
|
|
1201
1208
|
// case of Recursive Hierarchy maintenance
|
|
1202
1209
|
oContext = _Helper.getPrivateAnnotation(aResults[i], "context");
|
|
1210
|
+
if (oContext.getBinding() !== this) {
|
|
1211
|
+
throw new Error("Cannot share created data between list bindings");
|
|
1212
|
+
}
|
|
1203
1213
|
oContext.iIndex = i$skipIndex;
|
|
1204
1214
|
// oContext.checkUpdate(); // Note: no changes expected here
|
|
1205
1215
|
sContextPath = oContext.getPath();
|
|
@@ -1728,7 +1738,7 @@ sap.ui.define([
|
|
|
1728
1738
|
* used to expand all levels
|
|
1729
1739
|
* @param {boolean} [bSilent]
|
|
1730
1740
|
* Whether no ("change") events should be fired
|
|
1731
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
1741
|
+
* @returns {sap.ui.base.SyncPromise<void>}
|
|
1732
1742
|
* A promise that is resolved when the expand is successful and rejected when it fails
|
|
1733
1743
|
* @throws {Error}
|
|
1734
1744
|
* If the binding's root binding is suspended, if the given context is not part of a
|
|
@@ -1794,7 +1804,7 @@ sap.ui.define([
|
|
|
1794
1804
|
* @param {function} [fnDataRequested]
|
|
1795
1805
|
* The function is called just before a back-end request is sent.
|
|
1796
1806
|
* If no back-end request is needed, the function is not called.
|
|
1797
|
-
* @returns {sap.ui.base.SyncPromise
|
|
1807
|
+
* @returns {sap.ui.base.SyncPromise<boolean>|Promise<boolean>}
|
|
1798
1808
|
* A promise that resolves with a boolean indicating whether the binding's contexts have been
|
|
1799
1809
|
* modified; it rejects when iStart or iLength are negative, or when the request fails, or
|
|
1800
1810
|
* if this binding is already destroyed when the response arrives
|
|
@@ -1858,7 +1868,7 @@ sap.ui.define([
|
|
|
1858
1868
|
* @param {function} [fnDataRequested]
|
|
1859
1869
|
* The function is called just before a back-end request is sent.
|
|
1860
1870
|
* If no back-end request is needed, the function is not called.
|
|
1861
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
1871
|
+
* @returns {sap.ui.base.SyncPromise<object>}
|
|
1862
1872
|
* A promise to be resolved with the requested range as described in _Cache#read or with
|
|
1863
1873
|
* <code>undefined</code> if the context changed before reading; it is rejected to discard a
|
|
1864
1874
|
* response because the cache is no longer active, in this case the error has the property
|
|
@@ -1891,7 +1901,8 @@ sap.ui.define([
|
|
|
1891
1901
|
return oCache.read(iIndex, iLength, iMaximumPrefetchSize, oGroupLock,
|
|
1892
1902
|
fnDataRequested, undefined, that.fireSeparateReceived.bind(that)
|
|
1893
1903
|
).then(function (oResult) {
|
|
1894
|
-
oResult.$checkStillValid
|
|
1904
|
+
oResult.$checkStillValid
|
|
1905
|
+
= that.checkSameCache.bind(that, oCache, oResult["@$ui5.resetCount"]);
|
|
1895
1906
|
|
|
1896
1907
|
return oResult;
|
|
1897
1908
|
});
|
|
@@ -1967,7 +1978,7 @@ sap.ui.define([
|
|
|
1967
1978
|
* that the cache promise is already created when the events are fired.
|
|
1968
1979
|
* @param {string} sStaticFilter
|
|
1969
1980
|
* The static filter value
|
|
1970
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
1981
|
+
* @returns {sap.ui.base.SyncPromise<Array<string|undefined>>}
|
|
1971
1982
|
* A promise which resolves with an array that consists of three filters where each can be
|
|
1972
1983
|
* <code>undefined</code>. The first one has to be applied after data aggregation. The second
|
|
1973
1984
|
* one can simply be applied before data aggregation (which improves performance) because it
|
|
@@ -2046,8 +2057,8 @@ sap.ui.define([
|
|
|
2046
2057
|
* @param {object} mLambdaVariableToPath The map from lambda variable to full path
|
|
2047
2058
|
* @param {boolean} [bWithinAnd] Whether the embedding filter is an 'and'
|
|
2048
2059
|
* @param {boolean} bThese - Whether the special syntax "$these/aggregate(...)" is needed
|
|
2049
|
-
* @returns {sap.ui.base.SyncPromise} A promise which resolves with the $filter
|
|
2050
|
-
* rejects with an error if the filter value uses an unknown operator
|
|
2060
|
+
* @returns {sap.ui.base.SyncPromise<string>} A promise which resolves with the $filter
|
|
2061
|
+
* value or rejects with an error if the filter value uses an unknown operator
|
|
2051
2062
|
*/
|
|
2052
2063
|
function fetchFilter(oFilter, mLambdaVariableToPath, bWithinAnd, bThese) {
|
|
2053
2064
|
var sResolvedPath;
|
|
@@ -2175,7 +2186,8 @@ sap.ui.define([
|
|
|
2175
2186
|
* @param {boolean} [bAllowRequest]
|
|
2176
2187
|
* Whether it is allowed to send a GET request to fetch the parent node's data
|
|
2177
2188
|
* @returns {sap.ui.model.odata.v4.Context|null|undefined|
|
|
2178
|
-
* Promise<sap.ui.model.odata.v4.Context>|
|
|
2189
|
+
* Promise<sap.ui.model.odata.v4.Context>|
|
|
2190
|
+
* sap.ui.base.SyncPromise<sap.ui.model.odata.v4.Context>}
|
|
2179
2191
|
* <ul>
|
|
2180
2192
|
* <li> The parent node if already known,
|
|
2181
2193
|
* <li> <code>null</code> if the given node is a root node and thus has no parent,
|
|
@@ -2309,7 +2321,7 @@ sap.ui.define([
|
|
|
2309
2321
|
* A property binding which registers itself as listener at the cache
|
|
2310
2322
|
* @param {boolean} [bCached]
|
|
2311
2323
|
* Whether to return cached values only and not initiate a request
|
|
2312
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
2324
|
+
* @returns {sap.ui.base.SyncPromise<any>}
|
|
2313
2325
|
* A promise on the outcome of the cache's <code>fetchValue</code> call; it is rejected in
|
|
2314
2326
|
* case cached values are asked for, but not found
|
|
2315
2327
|
*
|
|
@@ -3160,8 +3172,8 @@ sap.ui.define([
|
|
|
3160
3172
|
|
|
3161
3173
|
/**
|
|
3162
3174
|
* Calls {@link sap.ui.model.odata.v4.Context#setKeepAlive} at the context for the given path
|
|
3163
|
-
* and returns it. Since 1.100.0 the function always returns such a context. If none exists
|
|
3164
|
-
* it is created without data and a request for its entity is sent.
|
|
3175
|
+
* and returns it. Since 1.100.0, the function always returns such a context. If none exists
|
|
3176
|
+
* yet, it is created without data and a request for its entity is sent.
|
|
3165
3177
|
*
|
|
3166
3178
|
* @param {string} sPath
|
|
3167
3179
|
* The path of the context to be kept alive
|
|
@@ -3938,7 +3950,7 @@ sap.ui.define([
|
|
|
3938
3950
|
* @see sap.ui.model.odata.v4.ODataBinding#refreshInternal
|
|
3939
3951
|
*/
|
|
3940
3952
|
ODataListBinding.prototype.refreshInternal = function (sResourcePathPrefix, sGroupId,
|
|
3941
|
-
_bCheckUpdate, bKeepCacheOnError) {
|
|
3953
|
+
_bCheckUpdate, bKeepCacheOnError, bSync) {
|
|
3942
3954
|
var that = this;
|
|
3943
3955
|
|
|
3944
3956
|
// calls refreshInternal on all given bindings and returns an array of promises
|
|
@@ -3955,7 +3967,7 @@ sap.ui.define([
|
|
|
3955
3967
|
// another update request in createContexts, when the context for the row is
|
|
3956
3968
|
// reused.
|
|
3957
3969
|
return oBinding.refreshInternal(sResourcePathPrefix, sGroupId, false,
|
|
3958
|
-
bKeepCacheOnError);
|
|
3970
|
+
bKeepCacheOnError, bSync);
|
|
3959
3971
|
});
|
|
3960
3972
|
}
|
|
3961
3973
|
|
|
@@ -3986,7 +3998,7 @@ sap.ui.define([
|
|
|
3986
3998
|
oCache.reset([]);
|
|
3987
3999
|
} else {
|
|
3988
4000
|
that.fetchCache(that.oContext, false, /*bKeepQueryOptions*/true,
|
|
3989
|
-
sGroupId, bKeepCacheOnError);
|
|
4001
|
+
sGroupId, bKeepCacheOnError, bSync);
|
|
3990
4002
|
oKeptElementsPromise = that.refreshKeptElements(sGroupId,
|
|
3991
4003
|
/*bIgnorePendingChanges*/ bKeepCacheOnError);
|
|
3992
4004
|
if (that.iCurrentEnd > 0) {
|
|
@@ -4050,7 +4062,7 @@ sap.ui.define([
|
|
|
4050
4062
|
* The effective group ID
|
|
4051
4063
|
* @param {boolean} bIgnorePendingChanges
|
|
4052
4064
|
* Whether kept elements are refreshed although there are pending changes.
|
|
4053
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
4065
|
+
* @returns {sap.ui.base.SyncPromise<void>}
|
|
4054
4066
|
* A promise which is resolved without a defined result, or rejected with an error if the
|
|
4055
4067
|
* refresh fails.
|
|
4056
4068
|
*
|
|
@@ -4098,7 +4110,7 @@ sap.ui.define([
|
|
|
4098
4110
|
* (since 1.129.0) no dataRequested/dataReceived events are fired in the first place
|
|
4099
4111
|
* @param {boolean} [bWithMessages]
|
|
4100
4112
|
* Whether the "@com.sap.vocabularies.Common.v1.Messages" path is treated specially
|
|
4101
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
4113
|
+
* @returns {sap.ui.base.SyncPromise<void>}
|
|
4102
4114
|
* A promise which resolves without a defined value when the entity is updated in the cache,
|
|
4103
4115
|
* or rejects if the refresh failed.
|
|
4104
4116
|
* @throws {Error}
|