@openui5/sap.ui.core 1.106.0 → 1.107.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/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/jquery.sap.ui.js +5 -7
- package/src/sap/base/util/LoaderExtensions.js +6 -6
- package/src/sap/base/util/fetch.js +3 -0
- package/src/sap/base/util/mixedFetch.js +1 -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 +4 -4
- package/src/sap/ui/base/DataType.js +4 -4
- package/src/sap/ui/base/Event.js +1 -1
- package/src/sap/ui/base/EventProvider.js +1 -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 +1 -1
- package/src/sap/ui/base/ManagedObjectRegistry.js +4 -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/core/.library +1 -1
- package/src/sap/ui/core/AppCacheBuster.js +3 -4
- package/src/sap/ui/core/BusyIndicator.js +1 -1
- package/src/sap/ui/core/BusyIndicatorUtils.js +5 -6
- package/src/sap/ui/core/CalendarType.js +0 -1
- package/src/sap/ui/core/Component.js +12 -10
- package/src/sap/ui/core/ComponentContainer.js +6 -5
- package/src/sap/ui/core/ComponentMetadata.js +1 -1
- package/src/sap/ui/core/ComponentSupport.js +1 -1
- package/src/sap/ui/core/Configuration.js +1 -1
- package/src/sap/ui/core/Control.js +7 -7
- package/src/sap/ui/core/Core.js +31 -304
- 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 +6 -6
- 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/FocusHandler.js +50 -2
- package/src/sap/ui/core/Fragment.js +1 -1
- package/src/sap/ui/core/HTML.js +1 -2
- package/src/sap/ui/core/History.js +1 -1
- package/src/sap/ui/core/Icon.js +1 -2
- 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 -2
- package/src/sap/ui/core/InvisibleRenderer.js +1 -1
- package/src/sap/ui/core/InvisibleText.js +5 -5
- package/src/sap/ui/core/Item.js +1 -2
- package/src/sap/ui/core/LabelEnablement.js +1 -1
- package/src/sap/ui/core/LayoutData.js +1 -2
- package/src/sap/ui/core/ListItem.js +1 -2
- package/src/sap/ui/core/LocalBusyIndicator.js +1 -2
- package/src/sap/ui/core/Locale.js +1 -1
- package/src/sap/ui/core/LocaleData.js +11 -9
- package/src/sap/ui/core/Manifest.js +8 -6
- package/src/sap/ui/core/Message.js +4 -6
- package/src/sap/ui/core/Popup.js +62 -5
- package/src/sap/ui/core/RenderManager.js +7 -5
- package/src/sap/ui/core/Renderer.js +5 -4
- package/src/sap/ui/core/Rendering.js +251 -0
- package/src/sap/ui/core/ResizeHandler.js +1 -1
- package/src/sap/ui/core/ScrollBar.js +6 -9
- package/src/sap/ui/core/ScrollBarRenderer.js +3 -3
- package/src/sap/ui/core/SeparatorItem.js +1 -2
- package/src/sap/ui/core/Title.js +1 -2
- package/src/sap/ui/core/TooltipBase.js +1 -2
- package/src/sap/ui/core/UIArea.js +389 -121
- package/src/sap/ui/core/UIComponent.js +1 -2
- 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 -2
- package/src/sap/ui/core/XMLComposite.js +1 -1
- package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
- package/src/sap/ui/core/XMLTemplateProcessor.js +5 -3
- package/src/sap/ui/core/cache/CacheManager.js +7 -6
- package/src/sap/ui/core/cache/LRUPersistentCache.js +4 -4
- package/src/sap/ui/core/date/Islamic.js +4 -4
- package/src/sap/ui/core/date/UniversalDate.js +8 -8
- package/src/sap/ui/core/date/UniversalDateUtils.js +3 -3
- package/src/sap/ui/core/delegate/ItemNavigation.js +5 -5
- package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
- package/src/sap/ui/core/dnd/DragAndDrop.js +4 -3
- package/src/sap/ui/core/dnd/DragDropBase.js +1 -2
- package/src/sap/ui/core/dnd/DragDropInfo.js +1 -2
- package/src/sap/ui/core/dnd/DragInfo.js +1 -2
- package/src/sap/ui/core/dnd/DropInfo.js +1 -2
- package/src/sap/ui/core/format/DateFormat.js +9 -7
- package/src/sap/ui/core/format/DateFormatTimezoneDisplay.js +0 -1
- package/src/sap/ui/core/format/FileSizeFormat.js +4 -3
- package/src/sap/ui/core/format/ListFormat.js +4 -3
- package/src/sap/ui/core/format/NumberFormat.js +6 -5
- package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
- package/src/sap/ui/core/hyphenation/Hyphenation.js +7 -6
- package/src/sap/ui/core/library.js +3 -55
- 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 +13 -23
- 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_fr.properties +1 -1
- package/src/sap/ui/core/mvc/Controller.js +3 -3
- package/src/sap/ui/core/mvc/EventHandlerResolver.js +5 -3
- package/src/sap/ui/core/mvc/HTMLView.js +1 -2
- package/src/sap/ui/core/mvc/JSONView.js +1 -2
- package/src/sap/ui/core/mvc/JSView.js +1 -2
- package/src/sap/ui/core/mvc/TemplateView.js +1 -2
- package/src/sap/ui/core/mvc/View.js +21 -20
- package/src/sap/ui/core/mvc/ViewType.js +0 -1
- package/src/sap/ui/core/mvc/XMLView.js +18 -18
- package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/plugin/LessSupport.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/async/Target.js +4 -3
- package/src/sap/ui/core/rules/Config.support.js +6 -4
- package/src/sap/ui/core/rules/CoreHelper.support.js +3 -3
- package/src/sap/ui/core/search/OpenSearchProvider.js +1 -2
- package/src/sap/ui/core/search/SearchProvider.js +1 -3
- 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/ToolsAPI.js +11 -13
- package/src/sap/ui/core/support/plugins/ControlTree.js +4 -4
- 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 +7 -5
- package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -2
- package/src/sap/ui/core/tmpl/DOMElement.js +1 -4
- package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
- package/src/sap/ui/core/tmpl/Template.js +1 -2
- package/src/sap/ui/core/tmpl/TemplateControl.js +1 -2
- package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
- 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 +4 -2
- 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 +4 -4
- 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/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 +3 -3
- package/src/sap/ui/debug/DebugEnv.js +4 -4
- package/src/sap/ui/debug/PropertyList.js +1 -1
- package/src/sap/ui/model/ClientModel.js +1 -1
- package/src/sap/ui/model/ClientTreeBinding.js +3 -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/Sorter.js +22 -17
- package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
- package/src/sap/ui/model/TreeBindingAdapter.js +3 -7
- package/src/sap/ui/model/Type.js +1 -1
- package/src/sap/ui/model/analytics/AnalyticalBinding.js +2 -0
- package/src/sap/ui/model/analytics/AnalyticalTreeBindingAdapter.js +5 -7
- package/src/sap/ui/model/json/JSONModel.js +8 -6
- package/src/sap/ui/model/message/MessageModel.js +1 -1
- package/src/sap/ui/model/odata/ODataAnnotations.js +5 -3
- package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
- package/src/sap/ui/model/odata/ODataMetaModel.js +31 -8
- package/src/sap/ui/model/odata/ODataMetadata.js +5 -4
- package/src/sap/ui/model/odata/ODataModel.js +6 -5
- package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +0 -1
- 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 +4 -3
- package/src/sap/ui/model/odata/v2/ODataContextBinding.js +24 -15
- package/src/sap/ui/model/odata/v2/ODataListBinding.js +45 -27
- package/src/sap/ui/model/odata/v2/ODataModel.js +94 -36
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +5 -5
- package/src/sap/ui/model/odata/v4/Context.js +23 -19
- package/src/sap/ui/model/odata/v4/ODataBinding.js +7 -3
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +3 -3
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +121 -57
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +11 -11
- package/src/sap/ui/model/odata/v4/ODataModel.js +111 -69
- package/src/sap/ui/model/odata/v4/ODataParentBinding.js +12 -4
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +2 -2
- package/src/sap/ui/model/odata/v4/ODataUtils.js +1 -1
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +41 -29
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +59 -20
- package/src/sap/ui/model/odata/v4/lib/_Helper.js +135 -4
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +21 -7
- package/src/sap/ui/model/resource/ResourceModel.js +7 -6
- 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 +5 -4
- package/src/sap/ui/model/xml/XMLModel.js +8 -6
- package/src/sap/ui/performance/trace/Interaction.js +1 -1
- package/src/sap/ui/qunit/QUnitUtils.js +2 -1
- 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/Opa.js +7 -5
- package/src/sap/ui/test/Opa5.js +9 -15
- package/src/sap/ui/test/RecorderHotkeyListener.js +1 -1
- package/src/sap/ui/test/TestUtils.js +83 -1
- package/src/sap/ui/test/autowaiter/_autoWaiter.js +9 -0
- package/src/sap/ui/test/autowaiter/_cssAnimationWaiter.js +114 -0
- package/src/sap/ui/test/autowaiter/_cssTransitionWaiter.js +99 -0
- package/src/sap/ui/test/autowaiter/_jsAnimationWaiter.js +70 -0
- package/src/sap/ui/test/autowaiter/_resourceWaiter.js +3 -12
- package/src/sap/ui/test/autowaiter/_utils.js +13 -1
- package/src/sap/ui/test/generic/TestBase.js +1 -1
- package/src/sap/ui/test/matchers/Ancestor.js +1 -0
- package/src/sap/ui/test/matchers/Descendant.js +1 -0
- package/src/sap/ui/test/matchers/Sibling.js +1 -0
- package/src/sap/ui/util/Storage.js +1 -1
|
@@ -35,43 +35,61 @@ sap.ui.define([
|
|
|
35
35
|
|
|
36
36
|
/**
|
|
37
37
|
* @class
|
|
38
|
-
* List binding
|
|
39
|
-
*
|
|
40
|
-
* @param {sap.ui.model.odata.v2.ODataModel} oModel
|
|
41
|
-
* @param {string} sPath
|
|
42
|
-
* @param {sap.ui.model.Context} oContext
|
|
43
|
-
*
|
|
44
|
-
* @param {sap.ui.model.
|
|
45
|
-
*
|
|
46
|
-
* @param {
|
|
47
|
-
*
|
|
48
|
-
*
|
|
38
|
+
* List binding for an OData V2 model.
|
|
39
|
+
*
|
|
40
|
+
* @param {sap.ui.model.odata.v2.ODataModel} oModel The OData V2 model
|
|
41
|
+
* @param {string} sPath The binding path in the model
|
|
42
|
+
* @param {sap.ui.model.Context} [oContext]
|
|
43
|
+
* The context which is required as base for a relative path.
|
|
44
|
+
* @param {sap.ui.model.Sorter|sap.ui.model.Sorter[]} [aSorters]
|
|
45
|
+
* Initial sort order, can be either a sorter or an array of sorters.
|
|
46
|
+
* @param {sap.ui.model.Filter|sap.ui.model.Filter[]} [aFilters]
|
|
47
|
+
* Predefined filters, can be either a filter or an array of filters.
|
|
48
|
+
* @param {object} [mParameters] A map which contains additional parameters for the binding.
|
|
49
|
+
* @param {sap.ui.model.odata.CountMode} [mParameters.countMode]
|
|
50
|
+
* Defines the count mode of the binding; if not specified, the default count mode of the
|
|
51
|
+
* <code>oModel</code> is applied.
|
|
49
52
|
* @param {string} [mParameters.createdEntitiesKey=""]
|
|
50
|
-
* A key used in combination with the resolved path of
|
|
51
|
-
* created by
|
|
53
|
+
* A key used in combination with the resolved path of the binding to identify the entities
|
|
54
|
+
* created by the binding's {@link #create} method.
|
|
52
55
|
*
|
|
53
56
|
* <b>Note:</b> Different controls or control aggregation bindings to the same collection must
|
|
54
57
|
* have different <code>createdEntitiesKey</code> values.
|
|
55
|
-
* @param {Object<string,string>} [mParameters.custom]
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
* @param {
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
58
|
+
* @param {Object<string,string>} [mParameters.custom]
|
|
59
|
+
* An optional map of custom query parameters. Custom parameters must not start with
|
|
60
|
+
* <code>$</code>.
|
|
61
|
+
* @param {string} [mParameters.expand]
|
|
62
|
+
* Value for the OData <code>$expand</code> query option parameter which is included in the
|
|
63
|
+
* data request after URL encoding of the given value.
|
|
64
|
+
* @param {boolean} [mParameters.faultTolerant]
|
|
65
|
+
* Turns on the fault tolerance mode, data is not reset if a back-end request returns an
|
|
66
|
+
* error.
|
|
67
|
+
* @param {string} [mParameters.groupId]
|
|
68
|
+
* The group id to be used for requests originating from the binding
|
|
69
|
+
* @param {sap.ui.model.odata.OperationMode} [mParameters.operationMode]
|
|
70
|
+
* The operation mode of the binding
|
|
71
|
+
* @param {string} [mParameters.select]
|
|
72
|
+
* Value for the OData <code>$select</code> query option parameter which is included in the
|
|
73
|
+
* data request after URL encoding of the given value.
|
|
64
74
|
* @param {boolean} [mParameters.transitionMessagesOnly]
|
|
65
|
-
* Whether
|
|
75
|
+
* Whether the list binding only requests transition messages from the back end. If messages
|
|
66
76
|
* for entities of this collection need to be updated, use
|
|
67
|
-
* {@link sap.ui.model.odata.v2.ODataModel#read} on the parent entity corresponding to
|
|
68
|
-
* list binding's context with the parameter <code>updateAggregatedMessages</code> set to
|
|
77
|
+
* {@link sap.ui.model.odata.v2.ODataModel#read} on the parent entity corresponding to the
|
|
78
|
+
* list binding's context, with the parameter <code>updateAggregatedMessages</code> set to
|
|
69
79
|
* <code>true</code>.
|
|
70
80
|
* @param {boolean} [mParameters.usePreliminaryContext]
|
|
71
|
-
* Whether a preliminary context
|
|
81
|
+
* Whether a preliminary context is used. When set to <code>true</code>, the model can
|
|
72
82
|
* bundle the OData calls for dependent bindings into fewer $batch requests. For more
|
|
73
83
|
* information, see
|
|
74
|
-
* {@link topic:6c47b2b39db9404582994070ec3d57a2#loio62149734b5c24507868e722fe87a75db
|
|
84
|
+
* {@link topic:6c47b2b39db9404582994070ec3d57a2#loio62149734b5c24507868e722fe87a75db
|
|
85
|
+
* Optimizing Dependent Bindings}.
|
|
86
|
+
* @param {string} [mParameters.batchGroupId]
|
|
87
|
+
* <b>Deprecated</b>, use <code>groupId</code> instead. Sets the batch group id to be used for
|
|
88
|
+
* requests originating from the binding.
|
|
89
|
+
* @param {int} [mParameters.threshold]
|
|
90
|
+
* Deprecated since 1.102.0, as {@link sap.ui.model.odata.OperationMode.Auto} is deprecated;
|
|
91
|
+
* the threshold that defines how many entries should be fetched at least by the binding if
|
|
92
|
+
* <code>operationMode</code> is set to <code>Auto</code>.
|
|
75
93
|
* @public
|
|
76
94
|
* @alias sap.ui.model.odata.v2.ODataListBinding
|
|
77
95
|
* @extends sap.ui.model.ListBinding
|
|
@@ -33,6 +33,7 @@ sap.ui.define([
|
|
|
33
33
|
"sap/base/util/uid",
|
|
34
34
|
"sap/base/util/UriParameters",
|
|
35
35
|
"sap/ui/base/SyncPromise",
|
|
36
|
+
"sap/ui/core/Configuration",
|
|
36
37
|
"sap/ui/core/library",
|
|
37
38
|
"sap/ui/core/message/Message",
|
|
38
39
|
"sap/ui/core/message/MessageParser",
|
|
@@ -55,10 +56,10 @@ sap.ui.define([
|
|
|
55
56
|
"sap/ui/util/isCrossOriginURL"
|
|
56
57
|
], function(_CreatedContextsCache, Context, ODataAnnotations, ODataContextBinding, ODataListBinding,
|
|
57
58
|
ODataTreeBinding, assert, Log, encodeURL, deepEqual, deepExtend, each, extend,
|
|
58
|
-
isEmptyObject, isPlainObject, merge, uid, UriParameters, SyncPromise,
|
|
59
|
-
MessageParser, _Helper, BindingMode, BaseContext, FilterProcessor,
|
|
60
|
-
MessageScope, ODataMetadata, ODataMetaModel, ODataMessageParser,
|
|
61
|
-
ODataUtils, OperationMode, UpdateMethod, OData, URI, isCrossOriginURL
|
|
59
|
+
isEmptyObject, isPlainObject, merge, uid, UriParameters, SyncPromise, Configuration,
|
|
60
|
+
coreLibrary, Message, MessageParser, _Helper, BindingMode, BaseContext, FilterProcessor,
|
|
61
|
+
Model, CountMode, MessageScope, ODataMetadata, ODataMetaModel, ODataMessageParser,
|
|
62
|
+
ODataPropertyBinding, ODataUtils, OperationMode, UpdateMethod, OData, URI, isCrossOriginURL
|
|
62
63
|
) {
|
|
63
64
|
|
|
64
65
|
"use strict";
|
|
@@ -203,7 +204,7 @@ sap.ui.define([
|
|
|
203
204
|
* This model is not prepared to be inherited from.
|
|
204
205
|
*
|
|
205
206
|
* @author SAP SE
|
|
206
|
-
* @version 1.
|
|
207
|
+
* @version 1.107.1
|
|
207
208
|
*
|
|
208
209
|
* @public
|
|
209
210
|
* @alias sap.ui.model.odata.v2.ODataModel
|
|
@@ -386,7 +387,7 @@ sap.ui.define([
|
|
|
386
387
|
this.sUser = sUser;
|
|
387
388
|
this.sPassword = sPassword;
|
|
388
389
|
|
|
389
|
-
if (
|
|
390
|
+
if (Configuration.getStatisticsEnabled()) {
|
|
390
391
|
// add statistics parameter to every request (supported only on Gateway servers)
|
|
391
392
|
this.aUrlParams.push("sap-statistics=true");
|
|
392
393
|
}
|
|
@@ -486,7 +487,7 @@ sap.ui.define([
|
|
|
486
487
|
this.securityTokenAvailable();
|
|
487
488
|
}
|
|
488
489
|
}
|
|
489
|
-
this.oHeaders["Accept-Language"] =
|
|
490
|
+
this.oHeaders["Accept-Language"] = Configuration.getLanguageTag();
|
|
490
491
|
|
|
491
492
|
// set version to 2.0 because 1.0 does not support e.g. skip/top, inlinecount...
|
|
492
493
|
// states the version of the Open Data Protocol used by the client to generate the request.
|
|
@@ -1997,31 +1998,59 @@ sap.ui.define([
|
|
|
1997
1998
|
/**
|
|
1998
1999
|
* Creates a new list binding for this model.
|
|
1999
2000
|
*
|
|
2000
|
-
* @param {string} sPath
|
|
2001
|
-
* @param {sap.ui.model.Context} [oContext]
|
|
2002
|
-
*
|
|
2003
|
-
* @param {sap.ui.model.
|
|
2004
|
-
*
|
|
2005
|
-
* @param {
|
|
2006
|
-
*
|
|
2007
|
-
* @param {
|
|
2008
|
-
* @param {sap.ui.model.odata.CountMode} [mParameters.countMode]
|
|
2009
|
-
*
|
|
2001
|
+
* @param {string} sPath The binding path in the model
|
|
2002
|
+
* @param {sap.ui.model.Context} [oContext]
|
|
2003
|
+
* The context which is required as base for a relative path.
|
|
2004
|
+
* @param {sap.ui.model.Sorter|sap.ui.model.Sorter[]} [aSorters]
|
|
2005
|
+
* Initial sort order, can be either a sorter or an array of sorters.
|
|
2006
|
+
* @param {sap.ui.model.Filter|sap.ui.model.Filter[]} [aFilters]
|
|
2007
|
+
* Predefined filters, can be either a filter or an array of filters.
|
|
2008
|
+
* @param {object} [mParameters] A map which contains additional parameters for the binding.
|
|
2009
|
+
* @param {sap.ui.model.odata.CountMode} [mParameters.countMode]
|
|
2010
|
+
* Defines the count mode of the binding; if not specified, the default count mode of the
|
|
2011
|
+
* <code>oModel</code> is applied.
|
|
2010
2012
|
* @param {string} [mParameters.createdEntitiesKey=""]
|
|
2011
2013
|
* A key used in combination with the resolved path of the binding to identify the entities
|
|
2012
|
-
* created
|
|
2014
|
+
* created by the binding's {@link #create} method.
|
|
2013
2015
|
*
|
|
2014
2016
|
* <b>Note:</b> Different controls or control aggregation bindings to the same collection must
|
|
2015
2017
|
* have different <code>createdEntitiesKey</code> values.
|
|
2016
|
-
* @param {
|
|
2017
|
-
*
|
|
2018
|
-
*
|
|
2019
|
-
* @param {string} [mParameters.
|
|
2018
|
+
* @param {Object<string,string>} [mParameters.custom]
|
|
2019
|
+
* An optional map of custom query parameters. Custom parameters must not start with
|
|
2020
|
+
* <code>$</code>.
|
|
2021
|
+
* @param {string} [mParameters.expand]
|
|
2022
|
+
* Value for the OData <code>$expand</code> query option parameter which is included in the
|
|
2023
|
+
* data request after URL encoding of the given value.
|
|
2024
|
+
* @param {boolean} [mParameters.faultTolerant]
|
|
2025
|
+
* Turns on the fault tolerance mode, data is not reset if a back-end request returns an
|
|
2026
|
+
* error.
|
|
2027
|
+
* @param {string} [mParameters.groupId]
|
|
2028
|
+
* The group id to be used for requests originating from the binding
|
|
2029
|
+
* @param {sap.ui.model.odata.OperationMode} [mParameters.operationMode]
|
|
2030
|
+
* The operation mode of the binding
|
|
2031
|
+
* @param {string} [mParameters.select]
|
|
2032
|
+
* Value for the OData <code>$select</code> query option parameter which is included in the
|
|
2033
|
+
* data request after URL encoding of the given value.
|
|
2034
|
+
* @param {boolean} [mParameters.transitionMessagesOnly]
|
|
2035
|
+
* Whether the list binding only requests transition messages from the back end. If messages
|
|
2036
|
+
* for entities of this collection need to be updated, use
|
|
2037
|
+
* {@link sap.ui.model.odata.v2.ODataModel#read} on the parent entity corresponding to the
|
|
2038
|
+
* list binding's context, with the parameter <code>updateAggregatedMessages</code> set to
|
|
2039
|
+
* <code>true</code>.
|
|
2040
|
+
* @param {boolean} [mParameters.usePreliminaryContext]
|
|
2041
|
+
* Whether a preliminary context is used. When set to <code>true</code>, the model can
|
|
2042
|
+
* bundle the OData calls for dependent bindings into fewer $batch requests. For more
|
|
2043
|
+
* information, see
|
|
2044
|
+
* {@link topic:6c47b2b39db9404582994070ec3d57a2#loio62149734b5c24507868e722fe87a75db
|
|
2045
|
+
* Optimizing Dependent Bindings}.
|
|
2046
|
+
* @param {string} [mParameters.batchGroupId]
|
|
2047
|
+
* <b>Deprecated</b>, use <code>groupId</code> instead. Sets the batch group id to be used for
|
|
2048
|
+
* requests originating from the binding.
|
|
2020
2049
|
* @param {int} [mParameters.threshold]
|
|
2021
2050
|
* Deprecated since 1.102.0, as {@link sap.ui.model.odata.OperationMode.Auto} is deprecated;
|
|
2022
2051
|
* the threshold that defines how many entries should be fetched at least by the binding if
|
|
2023
|
-
* <code>operationMode</code> is set to <code>Auto</code
|
|
2024
|
-
* @returns {sap.ui.model.
|
|
2052
|
+
* <code>operationMode</code> is set to <code>Auto</code>.
|
|
2053
|
+
* @returns {sap.ui.model.odata.v2.ODataListBinding} The new list binding
|
|
2025
2054
|
* @see sap.ui.model.Model.prototype.bindList
|
|
2026
2055
|
* @public
|
|
2027
2056
|
*/
|
|
@@ -2169,7 +2198,7 @@ sap.ui.define([
|
|
|
2169
2198
|
* @returns {sap.ui.model.odata.v2.ODataTreeBinding}
|
|
2170
2199
|
* The new tree binding
|
|
2171
2200
|
* @public
|
|
2172
|
-
* @see {@link
|
|
2201
|
+
* @see {@link http://www.sap.com/protocols/SAPData
|
|
2173
2202
|
* "SAP Annotations for OData Version 2.0" Specification}
|
|
2174
2203
|
*/
|
|
2175
2204
|
ODataModel.prototype.bindTree = function(sPath, oContext, vFilters, mParameters, vSorters) {
|
|
@@ -2650,13 +2679,35 @@ sap.ui.define([
|
|
|
2650
2679
|
};
|
|
2651
2680
|
|
|
2652
2681
|
/**
|
|
2653
|
-
* Creates
|
|
2682
|
+
* Creates a context binding for this model.
|
|
2654
2683
|
*
|
|
2684
|
+
* @param {string} sPath The binding path in the model
|
|
2685
|
+
* @param {sap.ui.model.Context} [oContext]
|
|
2686
|
+
* The context which is required as base for a relative path.
|
|
2687
|
+
* @param {object} [mParameters] A map which contains additional parameters for the binding.
|
|
2688
|
+
* @param {boolean} [mParameters.createPreliminaryContext]
|
|
2689
|
+
* Whether a preliminary context is created
|
|
2690
|
+
* @param {Object<string,string>} [mParameters.custom]
|
|
2691
|
+
* An optional map of custom query parameters. Custom parameters must not start with
|
|
2692
|
+
* <code>$</code>.
|
|
2693
|
+
* @param {string} [mParameters.expand]
|
|
2694
|
+
* Value for the OData <code>$expand</code> query option parameter which is included in the
|
|
2695
|
+
* request after URL encoding of the given value.
|
|
2696
|
+
* @param {string} [mParameters.groupId]
|
|
2697
|
+
* The group id to be used for requests originating from the binding
|
|
2698
|
+
* @param {string} [mParameters.select]
|
|
2699
|
+
* Value for the OData <code>$select</code> query option parameter which is included in the
|
|
2700
|
+
* request after URL encoding of the given value.
|
|
2701
|
+
* @param {boolean} [mParameters.usePreliminaryContext]
|
|
2702
|
+
* Whether a preliminary context is used. When set to <code>true</code>, the model can bundle
|
|
2703
|
+
* the OData calls for dependent bindings into fewer $batch requests. For more information,
|
|
2704
|
+
* see {@link topic:6c47b2b39db9404582994070ec3d57a2#loio62149734b5c24507868e722fe87a75db
|
|
2705
|
+
* Optimizing Dependent Bindings}.
|
|
2706
|
+
* @param {string} [mParameters.batchGroupId]
|
|
2707
|
+
* <b>Deprecated</b>, use <code>groupId</code> instead. Sets the batch group id to be used for
|
|
2708
|
+
* requests originating from the binding.
|
|
2709
|
+
* @returns {sap.ui.model.odata.v2.ODataContextBinding} The new context binding
|
|
2655
2710
|
* @see sap.ui.model.Model.prototype.bindContext
|
|
2656
|
-
* @param {string} sPath Resolved path
|
|
2657
|
-
* @param {sap.ui.model.Context} oContext Context object
|
|
2658
|
-
* @param {Object<string,any>} [mParameters] Map of parameters
|
|
2659
|
-
* @returns {sap.ui.model.ContextBinding} The new context binding
|
|
2660
2711
|
* @public
|
|
2661
2712
|
*/
|
|
2662
2713
|
ODataModel.prototype.bindContext = function(sPath, oContext, mParameters) {
|
|
@@ -7220,16 +7271,21 @@ sap.ui.define([
|
|
|
7220
7271
|
};
|
|
7221
7272
|
|
|
7222
7273
|
/**
|
|
7223
|
-
*
|
|
7274
|
+
* Whether all affected bindings are refreshed after a change operation.
|
|
7275
|
+
*
|
|
7276
|
+
* This flag can be overruled on request level by providing the <code>refreshAfterChange</code>
|
|
7277
|
+
* parameter to the corresponding function (for example {@link #update}).
|
|
7278
|
+
*
|
|
7279
|
+
* @returns {boolean} Whether to automatically refresh after changes
|
|
7224
7280
|
* @public
|
|
7225
7281
|
* @since 1.46.0
|
|
7226
7282
|
*/
|
|
7227
|
-
ODataModel.prototype.getRefreshAfterChange = function() {
|
|
7283
|
+
ODataModel.prototype.getRefreshAfterChange = function () {
|
|
7228
7284
|
return this.bRefreshAfterChange;
|
|
7229
7285
|
};
|
|
7230
7286
|
|
|
7231
7287
|
/**
|
|
7232
|
-
* Defines whether all bindings are
|
|
7288
|
+
* Defines whether all affected bindings are refreshed after a change operation.
|
|
7233
7289
|
*
|
|
7234
7290
|
* This flag can be overruled on request level by providing the <code>refreshAfterChange</code>
|
|
7235
7291
|
* parameter to the corresponding function (for example {@link #update}).
|
|
@@ -7238,7 +7294,7 @@ sap.ui.define([
|
|
|
7238
7294
|
* @public
|
|
7239
7295
|
* @since 1.16.3
|
|
7240
7296
|
*/
|
|
7241
|
-
ODataModel.prototype.setRefreshAfterChange = function(bRefreshAfterChange) {
|
|
7297
|
+
ODataModel.prototype.setRefreshAfterChange = function (bRefreshAfterChange) {
|
|
7242
7298
|
this.bRefreshAfterChange = bRefreshAfterChange;
|
|
7243
7299
|
};
|
|
7244
7300
|
|
|
@@ -7407,9 +7463,11 @@ sap.ui.define([
|
|
|
7407
7463
|
};
|
|
7408
7464
|
|
|
7409
7465
|
/**
|
|
7410
|
-
* Setting request groups as deferred.
|
|
7466
|
+
* Setting request groups as deferred. <b>Note:</b> This will overwrite existing deferred
|
|
7467
|
+
* groups, including the default group "changes".
|
|
7411
7468
|
*
|
|
7412
|
-
* Requests that belong to a deferred group will be sent by explicitly calling
|
|
7469
|
+
* Requests that belong to a deferred group will be sent by explicitly calling
|
|
7470
|
+
* {@link #submitChanges}.
|
|
7413
7471
|
*
|
|
7414
7472
|
* @param {array} aGroupIds Array of group IDs that should be set as deferred
|
|
7415
7473
|
* @public
|
|
@@ -94,7 +94,7 @@ sap.ui.define([
|
|
|
94
94
|
* @extends sap.ui.model.TreeBinding
|
|
95
95
|
* @hideconstructor
|
|
96
96
|
* @public
|
|
97
|
-
* @version 1.
|
|
97
|
+
* @version 1.107.1
|
|
98
98
|
*/
|
|
99
99
|
var ODataTreeBinding = TreeBinding.extend("sap.ui.model.odata.v2.ODataTreeBinding", /** @lends sap.ui.model.odata.v2.ODataTreeBinding.prototype */ {
|
|
100
100
|
|
|
@@ -2559,7 +2559,7 @@ sap.ui.define([
|
|
|
2559
2559
|
*
|
|
2560
2560
|
* See the API documentation for the function {@link sap.ui.model.odata.v2.ODataTreeBinding#createEntry createEntry}.
|
|
2561
2561
|
*
|
|
2562
|
-
* This feature is only available when the underlying OData service exposes the "hierarchy-descendant-count-for" annotation.
|
|
2562
|
+
* This feature is only available when the underlying OData service exposes the "hierarchy-node-descendant-count-for" annotation.
|
|
2563
2563
|
* See the constructor documentation for more details.
|
|
2564
2564
|
*
|
|
2565
2565
|
* @function
|
|
@@ -2575,7 +2575,7 @@ sap.ui.define([
|
|
|
2575
2575
|
*
|
|
2576
2576
|
* Calling <code>removeContext</code> for a given context implicitly removes the complete subtree underneath it.
|
|
2577
2577
|
*
|
|
2578
|
-
* This feature is only available when the underlying OData service exposes the "hierarchy-descendant-count-for" annotation.
|
|
2578
|
+
* This feature is only available when the underlying OData service exposes the "hierarchy-node-descendant-count-for" annotation.
|
|
2579
2579
|
* See the constructor documentation for more details.
|
|
2580
2580
|
*
|
|
2581
2581
|
* @function
|
|
@@ -2592,7 +2592,7 @@ sap.ui.define([
|
|
|
2592
2592
|
* The available API is the same as for the v2.ODataModel.
|
|
2593
2593
|
* See the API documentation here: {@link sap.ui.model.odata.v2.ODataModel#createEntry createEntry}.
|
|
2594
2594
|
*
|
|
2595
|
-
* This feature is only available when the underlying OData service exposes the "hierarchy-descendant-count-for" annotation.
|
|
2595
|
+
* This feature is only available when the underlying OData service exposes the "hierarchy-node-descendant-count-for" annotation.
|
|
2596
2596
|
* See the constructor documentation for more details.
|
|
2597
2597
|
*
|
|
2598
2598
|
* @function
|
|
@@ -2608,7 +2608,7 @@ sap.ui.define([
|
|
|
2608
2608
|
* The available API is the same as for the v2.ODataModel.
|
|
2609
2609
|
* See the API documentation here: {@link sap.ui.model.odata.v2.ODataModel#submitChanges submitChanges}.
|
|
2610
2610
|
*
|
|
2611
|
-
* This feature is only available when the underlying OData service exposes the "hierarchy-descendant-count-for" annotation.
|
|
2611
|
+
* This feature is only available when the underlying OData service exposes the "hierarchy-node-descendant-count-for" annotation.
|
|
2612
2612
|
* See the Constructor documentation for more details.
|
|
2613
2613
|
*
|
|
2614
2614
|
* @function
|
|
@@ -42,7 +42,7 @@ sap.ui.define([
|
|
|
42
42
|
* @hideconstructor
|
|
43
43
|
* @public
|
|
44
44
|
* @since 1.39.0
|
|
45
|
-
* @version 1.
|
|
45
|
+
* @version 1.107.1
|
|
46
46
|
*/
|
|
47
47
|
Context = BaseContext.extend("sap.ui.model.odata.v4.Context", {
|
|
48
48
|
constructor : constructor
|
|
@@ -281,7 +281,8 @@ sap.ui.define([
|
|
|
281
281
|
* immediately, even if {@link sap.ui.model.odata.v4.SubmitMode.API} is used, and the request is
|
|
282
282
|
* only sent later when {@link sap.ui.model.odata.v4.ODataModel#submitBatch} is called. As long
|
|
283
283
|
* as the context is deleted on the client, but not yet on the server, {@link #isDeleted}
|
|
284
|
-
* returns <code>true</code>.
|
|
284
|
+
* returns <code>true</code>. The context must not be used, e.g. as a binding context, while
|
|
285
|
+
* {@link #isDeleted} returns <code>true</code>.
|
|
285
286
|
*
|
|
286
287
|
* Since 1.105 such a pending deletion is a pending change. It causes
|
|
287
288
|
* <code>hasPendingChanges</code> to return <code>true</code> for the context, the binding
|
|
@@ -333,13 +334,13 @@ sap.ui.define([
|
|
|
333
334
|
*
|
|
334
335
|
* @function
|
|
335
336
|
* @public
|
|
336
|
-
* @see
|
|
337
|
-
* @see
|
|
338
|
-
* @see
|
|
339
|
-
* @see
|
|
340
|
-
* @see
|
|
341
|
-
* @see
|
|
342
|
-
* @see
|
|
337
|
+
* @see #hasPendingChanges
|
|
338
|
+
* @see sap.ui.model.odata.v4.ODataContextBinding#hasPendingChanges
|
|
339
|
+
* @see sap.ui.model.odata.v4.ODataListBinding#hasPendingChanges
|
|
340
|
+
* @see sap.ui.model.odata.v4.ODataModel#hasPendingChanges
|
|
341
|
+
* @see sap.ui.model.odata.v4.ODataContextBinding#resetChanges
|
|
342
|
+
* @see sap.ui.model.odata.v4.ODataListBinding#resetChanges
|
|
343
|
+
* @see sap.ui.model.odata.v4.ODataModel#resetChanges
|
|
343
344
|
* @since 1.41.0
|
|
344
345
|
*/
|
|
345
346
|
Context.prototype.delete = function (sGroupId, bDoNotRequestCount/*, bRejectIfNotFound*/) {
|
|
@@ -361,7 +362,7 @@ sap.ui.define([
|
|
|
361
362
|
if (sGroupId === null) {
|
|
362
363
|
bDoNotRequestCount = true;
|
|
363
364
|
} else {
|
|
364
|
-
|
|
365
|
+
_Helper.checkGroupId(sGroupId);
|
|
365
366
|
oGroupLock = this.oBinding.lockGroup(sGroupId, true, true);
|
|
366
367
|
}
|
|
367
368
|
|
|
@@ -432,6 +433,8 @@ sap.ui.define([
|
|
|
432
433
|
* @param {boolean} [bSkipRetry]
|
|
433
434
|
* Whether to skip retries of failed PATCH requests and instead fail accordingly, but still
|
|
434
435
|
* fire "patchSent" and "patchCompleted" events
|
|
436
|
+
* @param {boolean} [bUpdating]
|
|
437
|
+
* Whether the given property will not be overwritten by a creation POST(+GET) response
|
|
435
438
|
* @returns {sap.ui.base.SyncPromise}
|
|
436
439
|
* A promise which is resolved without a result in case of success, or rejected with an
|
|
437
440
|
* instance of <code>Error</code> in case of failure, for example if the annotation belongs to
|
|
@@ -440,7 +443,7 @@ sap.ui.define([
|
|
|
440
443
|
*
|
|
441
444
|
* @private
|
|
442
445
|
*/
|
|
443
|
-
Context.prototype.doSetProperty = function (sPath, vValue, oGroupLock, bSkipRetry) {
|
|
446
|
+
Context.prototype.doSetProperty = function (sPath, vValue, oGroupLock, bSkipRetry, bUpdating) {
|
|
444
447
|
var oModel = this.oModel,
|
|
445
448
|
oMetaModel = oModel.getMetaModel(),
|
|
446
449
|
oPromise,
|
|
@@ -459,7 +462,7 @@ sap.ui.define([
|
|
|
459
462
|
if (oPromise instanceof Promise) {
|
|
460
463
|
oGroupLock.unlock();
|
|
461
464
|
oGroupLock = oGroupLock.getUnlockedCopy();
|
|
462
|
-
this.doSetProperty(sPath, vValue, null, true) // early UI update
|
|
465
|
+
this.doSetProperty(sPath, vValue, null, true, true) // early UI update
|
|
463
466
|
.catch(this.oModel.getReporter());
|
|
464
467
|
|
|
465
468
|
return oPromise.then(function (bSuccess) {
|
|
@@ -520,7 +523,8 @@ sap.ui.define([
|
|
|
520
523
|
}
|
|
521
524
|
|
|
522
525
|
if (!oGroupLock) {
|
|
523
|
-
return oCache.setProperty(oResult.propertyPath, vValue, sEntityPath
|
|
526
|
+
return oCache.setProperty(oResult.propertyPath, vValue, sEntityPath,
|
|
527
|
+
bUpdating);
|
|
524
528
|
}
|
|
525
529
|
|
|
526
530
|
if (that.isInactive()) {
|
|
@@ -1240,7 +1244,7 @@ sap.ui.define([
|
|
|
1240
1244
|
Context.prototype.requestRefresh = function (sGroupId, bAllowRemoval) {
|
|
1241
1245
|
var oPromise;
|
|
1242
1246
|
|
|
1243
|
-
|
|
1247
|
+
_Helper.checkGroupId(sGroupId);
|
|
1244
1248
|
this.oBinding.checkSuspended();
|
|
1245
1249
|
if (this.hasPendingChanges()) {
|
|
1246
1250
|
throw new Error("Cannot refresh entity due to pending changes: " + this);
|
|
@@ -1394,7 +1398,7 @@ sap.ui.define([
|
|
|
1394
1398
|
}
|
|
1395
1399
|
|
|
1396
1400
|
this.oBinding.checkSuspended();
|
|
1397
|
-
|
|
1401
|
+
_Helper.checkGroupId(sGroupId);
|
|
1398
1402
|
if (this.isTransient()) {
|
|
1399
1403
|
throw new Error("Unsupported context: " + this);
|
|
1400
1404
|
}
|
|
@@ -1613,7 +1617,7 @@ sap.ui.define([
|
|
|
1613
1617
|
if (this.isTransient()) {
|
|
1614
1618
|
throw new Error("Unsupported transient context " + this);
|
|
1615
1619
|
}
|
|
1616
|
-
|
|
1620
|
+
_Helper.getPredicateIndex(this.sPath);
|
|
1617
1621
|
this.oBinding.checkKeepAlive(this);
|
|
1618
1622
|
|
|
1619
1623
|
if (bKeepAlive && bRequestMessages) {
|
|
@@ -1699,7 +1703,7 @@ sap.ui.define([
|
|
|
1699
1703
|
throw new Error("Not a primitive value");
|
|
1700
1704
|
}
|
|
1701
1705
|
if (sGroupId !== null) {
|
|
1702
|
-
|
|
1706
|
+
_Helper.checkGroupId(sGroupId);
|
|
1703
1707
|
oGroupLock = this.oBinding.lockGroup(sGroupId, true, true);
|
|
1704
1708
|
}
|
|
1705
1709
|
|
|
@@ -1715,11 +1719,11 @@ sap.ui.define([
|
|
|
1715
1719
|
};
|
|
1716
1720
|
|
|
1717
1721
|
/**
|
|
1718
|
-
* Returns a string representation of this object including the {@link #getPath binding path
|
|
1722
|
+
* Returns a string representation of this object including the {@link #getPath binding path},
|
|
1719
1723
|
* {@link #getIndex index}, and state (see also "Context states" of
|
|
1720
1724
|
* {@link topic:c9723f8265f644af91c0ed941e114d46 Creating an Entity}).
|
|
1721
1725
|
*
|
|
1722
|
-
* @
|
|
1726
|
+
* @returns {string} A string description of this binding
|
|
1723
1727
|
*
|
|
1724
1728
|
* @public
|
|
1725
1729
|
* @see #destroy
|
|
@@ -136,7 +136,7 @@ sap.ui.define([
|
|
|
136
136
|
break;
|
|
137
137
|
case "$$groupId":
|
|
138
138
|
case "$$updateGroupId":
|
|
139
|
-
|
|
139
|
+
_Helper.checkGroupId(vValue, false,
|
|
140
140
|
"Unsupported value for binding parameter '" + sKey + "': ");
|
|
141
141
|
break;
|
|
142
142
|
case "$$ignoreMessages":
|
|
@@ -313,6 +313,7 @@ sap.ui.define([
|
|
|
313
313
|
undefined, sGroupId, oOldCache);
|
|
314
314
|
}
|
|
315
315
|
if (oOldCache && oOldCache !== oCache) {
|
|
316
|
+
oOldCache.deregisterChangeListener("", this);
|
|
316
317
|
oOldCache.setActive(false);
|
|
317
318
|
}
|
|
318
319
|
if (this.mLateQueryOptions) {
|
|
@@ -330,9 +331,12 @@ sap.ui.define([
|
|
|
330
331
|
* @since 1.66
|
|
331
332
|
*/
|
|
332
333
|
ODataBinding.prototype.destroy = function () {
|
|
334
|
+
var that = this;
|
|
335
|
+
|
|
333
336
|
this.mCacheByResourcePath = undefined;
|
|
334
337
|
this.oCachePromise.then(function (oOldCache) {
|
|
335
338
|
if (oOldCache) {
|
|
339
|
+
oOldCache.deregisterChangeListener("", that);
|
|
336
340
|
oOldCache.setActive(false);
|
|
337
341
|
}
|
|
338
342
|
}, function () {});
|
|
@@ -1022,7 +1026,7 @@ sap.ui.define([
|
|
|
1022
1026
|
* The group lock
|
|
1023
1027
|
*
|
|
1024
1028
|
* @private
|
|
1025
|
-
* @see
|
|
1029
|
+
* @see sap.ui.model.odata.v4.ODataModel#lockGroup
|
|
1026
1030
|
*/
|
|
1027
1031
|
ODataBinding.prototype.lockGroup = function (sGroupId, bLocked, bModifying, fnCancel) {
|
|
1028
1032
|
sGroupId = sGroupId || (bModifying ? this.getUpdateGroupId() : this.getGroupId());
|
|
@@ -1231,7 +1235,7 @@ sap.ui.define([
|
|
|
1231
1235
|
if (this.hasPendingChanges(true)) {
|
|
1232
1236
|
throw new Error("Cannot refresh due to pending changes");
|
|
1233
1237
|
}
|
|
1234
|
-
|
|
1238
|
+
_Helper.checkGroupId(sGroupId);
|
|
1235
1239
|
|
|
1236
1240
|
// The actual refresh is specific to the binding and is implemented in each binding class.
|
|
1237
1241
|
return Promise.resolve(this.refreshInternal("", sGroupId, true)).then(function () {
|
|
@@ -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.107.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
|
|
@@ -954,7 +954,7 @@ sap.ui.define([
|
|
|
954
954
|
var sResolvedPath = this.getResolvedPath();
|
|
955
955
|
|
|
956
956
|
this.checkSuspended();
|
|
957
|
-
|
|
957
|
+
_Helper.checkGroupId(sGroupId);
|
|
958
958
|
if (!this.oOperation) {
|
|
959
959
|
throw new Error("The binding must be deferred: " + this.sPath);
|
|
960
960
|
}
|
|
@@ -1482,7 +1482,7 @@ sap.ui.define([
|
|
|
1482
1482
|
* cancellations.
|
|
1483
1483
|
*
|
|
1484
1484
|
* @param {Promise} oPromise - A promise
|
|
1485
|
-
* @
|
|
1485
|
+
* @returns {Promise} A promise including an error handler
|
|
1486
1486
|
*/
|
|
1487
1487
|
function reportError(oPromise) {
|
|
1488
1488
|
return oPromise.catch(function (oError) {
|