@openui5/sap.ui.core 1.102.1 → 1.102.2
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/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/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/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/BusyIndicator.js +1 -1
- package/src/sap/ui/core/Component.js +1 -1
- package/src/sap/ui/core/ComponentContainer.js +1 -1
- package/src/sap/ui/core/ComponentMetadata.js +1 -1
- package/src/sap/ui/core/ComponentSupport.js +1 -1
- package/src/sap/ui/core/Control.js +1 -1
- package/src/sap/ui/core/Core.js +1 -1
- 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 +1 -1
- 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/ListItem.js +1 -1
- package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
- package/src/sap/ui/core/Locale.js +1 -1
- package/src/sap/ui/core/LocaleData.js +1 -1
- 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/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 +1 -1
- 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/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/NumberFormat.js +91 -25
- package/src/sap/ui/core/format/TimezoneUtil.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/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 +1 -1
- 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/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/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/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/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/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/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/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/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/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 +1 -1
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/Context.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataModel.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +49 -9
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +3 -1
- 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/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/util/Storage.js +1 -1
|
@@ -110,7 +110,7 @@ sap.ui.define([
|
|
|
110
110
|
* @extends sap.ui.model.odata.type.ODataType
|
|
111
111
|
* @public
|
|
112
112
|
* @since 1.37.0
|
|
113
|
-
* @version 1.102.
|
|
113
|
+
* @version 1.102.2
|
|
114
114
|
*/
|
|
115
115
|
var TimeOfDay = ODataType.extend("sap.ui.model.odata.type.TimeOfDay", {
|
|
116
116
|
constructor : function (oFormatOptions, oConstraints) {
|
|
@@ -63,7 +63,7 @@ sap.ui.define([
|
|
|
63
63
|
* @extends sap.ui.model.type.Unit
|
|
64
64
|
* @public
|
|
65
65
|
* @since 1.63.0
|
|
66
|
-
* @version 1.102.
|
|
66
|
+
* @version 1.102.2
|
|
67
67
|
*/
|
|
68
68
|
var Unit = BaseUnit.extend("sap.ui.model.odata.type.Unit", {
|
|
69
69
|
constructor : function (oFormatOptions, oConstraints, aDynamicFormatOptionNames) {
|
|
@@ -60,7 +60,7 @@ sap.ui.define([
|
|
|
60
60
|
* @hideconstructor
|
|
61
61
|
* @public
|
|
62
62
|
* @since 1.93.0
|
|
63
|
-
* @version 1.102.
|
|
63
|
+
* @version 1.102.2
|
|
64
64
|
*/
|
|
65
65
|
var Context = BaseContext.extend("sap.ui.model.odata.v2.Context", {
|
|
66
66
|
constructor : function (oModel, sPath, sDeepPath, oCreatePromise, bInactive) {
|
|
@@ -94,7 +94,7 @@ sap.ui.define([
|
|
|
94
94
|
* @extends sap.ui.model.TreeBinding
|
|
95
95
|
* @hideconstructor
|
|
96
96
|
* @public
|
|
97
|
-
* @version 1.102.
|
|
97
|
+
* @version 1.102.2
|
|
98
98
|
*/
|
|
99
99
|
var ODataTreeBinding = TreeBinding.extend("sap.ui.model.odata.v2.ODataTreeBinding", /** @lends sap.ui.model.odata.v2.ODataTreeBinding.prototype */ {
|
|
100
100
|
|
|
@@ -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.102.
|
|
77
|
+
* @version 1.102.2
|
|
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
|
|
@@ -58,7 +58,7 @@ sap.ui.define([
|
|
|
58
58
|
* @mixes sap.ui.model.odata.v4.ODataParentBinding
|
|
59
59
|
* @public
|
|
60
60
|
* @since 1.37.0
|
|
61
|
-
* @version 1.102.
|
|
61
|
+
* @version 1.102.2
|
|
62
62
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getGroupId as #getGroupId
|
|
63
63
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getRootBinding as #getRootBinding
|
|
64
64
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getUpdateGroupId as #getUpdateGroupId
|
|
@@ -214,7 +214,7 @@ sap.ui.define([
|
|
|
214
214
|
* @extends sap.ui.model.Model
|
|
215
215
|
* @public
|
|
216
216
|
* @since 1.37.0
|
|
217
|
-
* @version 1.102.
|
|
217
|
+
* @version 1.102.2
|
|
218
218
|
*/
|
|
219
219
|
ODataModel = Model.extend("sap.ui.model.odata.v4.ODataModel",
|
|
220
220
|
/** @lends sap.ui.model.odata.v4.ODataModel.prototype */{
|
|
@@ -42,7 +42,7 @@ sap.ui.define([
|
|
|
42
42
|
* @mixes sap.ui.model.odata.v4.ODataBinding
|
|
43
43
|
* @public
|
|
44
44
|
* @since 1.37.0
|
|
45
|
-
* @version 1.102.
|
|
45
|
+
* @version 1.102.2
|
|
46
46
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getGroupId as #getGroupId
|
|
47
47
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getRootBinding as #getRootBinding
|
|
48
48
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getUpdateGroupId as #getUpdateGroupId
|
|
@@ -113,6 +113,7 @@ sap.ui.define([
|
|
|
113
113
|
// they are always "newer"
|
|
114
114
|
this.iInactiveSince = Infinity;
|
|
115
115
|
this.mPatchRequests = {}; // map from path to an array of (PATCH) promises
|
|
116
|
+
this.mEditUrl2PatchPromise = {}; // map from edit URL to a PATCH promise for retry
|
|
116
117
|
// a promise with attached properties $count, $resolve existing while DELETEs or POSTs are
|
|
117
118
|
// being sent
|
|
118
119
|
this.oPendingRequestsPromise = null;
|
|
@@ -1710,10 +1711,11 @@ sap.ui.define([
|
|
|
1710
1711
|
return oPromise.then(function (oEntity) {
|
|
1711
1712
|
var sFullPath = _Helper.buildPath(sEntityPath, sPropertyPath),
|
|
1712
1713
|
sGroupId = oGroupLock.getGroupId(),
|
|
1713
|
-
|
|
1714
|
+
oOldData,
|
|
1714
1715
|
oPatchPromise,
|
|
1715
1716
|
oPostBody,
|
|
1716
1717
|
sParkedGroup,
|
|
1718
|
+
bSkip,
|
|
1717
1719
|
sTransientGroup,
|
|
1718
1720
|
sUnitOrCurrencyValue,
|
|
1719
1721
|
oUpdateData = _Cache.makeUpdateData(aPropertyPath, vValue);
|
|
@@ -1725,8 +1727,29 @@ sap.ui.define([
|
|
|
1725
1727
|
function onCancel() {
|
|
1726
1728
|
_Helper.removeByPath(that.mPatchRequests, sFullPath, oPatchPromise);
|
|
1727
1729
|
// write the previous value into the cache
|
|
1728
|
-
_Helper.updateExisting(that.mChangeListeners, sEntityPath, oEntity,
|
|
1729
|
-
|
|
1730
|
+
_Helper.updateExisting(that.mChangeListeners, sEntityPath, oEntity, oOldData);
|
|
1731
|
+
}
|
|
1732
|
+
|
|
1733
|
+
/*
|
|
1734
|
+
* Callback to merge the entity's old data into its one remaining PATCH. If
|
|
1735
|
+
* no old data from another PATCH is supplied, the PATCH is skipped and returns its
|
|
1736
|
+
* old data. Otherwise the given old data from the skipped patch is merged into the
|
|
1737
|
+
* surviving PATCH's own old data.
|
|
1738
|
+
*
|
|
1739
|
+
* @param {object} [oOtherOldData]
|
|
1740
|
+
* Either another PATCH's old data which is to be merged into this one or
|
|
1741
|
+
* <code>undefined</code> if this PATCH is the skipped one and has to return its own
|
|
1742
|
+
* old data.
|
|
1743
|
+
* @returns {object}
|
|
1744
|
+
* This PATCH's old data which is to be merged into another one or
|
|
1745
|
+
* <code>undefined</code> if this is the surviving PATCH.
|
|
1746
|
+
*/
|
|
1747
|
+
function mergePatchRequests(oOtherOldData) {
|
|
1748
|
+
if (arguments.length === 0) {
|
|
1749
|
+
bSkip = true;
|
|
1750
|
+
return oOldData; // my PATCH was merged
|
|
1751
|
+
}
|
|
1752
|
+
_Helper.updateNonExisting(oOldData, oOtherOldData);
|
|
1730
1753
|
}
|
|
1731
1754
|
|
|
1732
1755
|
function patch(oPatchGroupLock, bAtFront) {
|
|
@@ -1749,7 +1772,8 @@ sap.ui.define([
|
|
|
1749
1772
|
oPatchPromise = that.oRequestor.request("PATCH", sEditUrl, oPatchGroupLock,
|
|
1750
1773
|
mHeaders, oUpdateData, onSubmit, onCancel, /*sMetaPath*/undefined,
|
|
1751
1774
|
_Helper.buildPath(that.getOriginalResourcePath(oEntity), sEntityPath),
|
|
1752
|
-
bAtFront
|
|
1775
|
+
bAtFront, /*mQueryOptions*/ undefined, /*vOwner*/ undefined,
|
|
1776
|
+
mergePatchRequests);
|
|
1753
1777
|
oPatchPromise.$isKeepAlive = fnIsKeepAlive;
|
|
1754
1778
|
_Helper.addByPath(that.mPatchRequests, sFullPath, oPatchPromise);
|
|
1755
1779
|
return SyncPromise.all([
|
|
@@ -1759,6 +1783,10 @@ sap.ui.define([
|
|
|
1759
1783
|
var oPatchResult = aResult[0];
|
|
1760
1784
|
|
|
1761
1785
|
_Helper.removeByPath(that.mPatchRequests, sFullPath, oPatchPromise);
|
|
1786
|
+
if (bSkip) {
|
|
1787
|
+
// if a PATCH is skipped, because it is merged into another, nothing to do!
|
|
1788
|
+
return;
|
|
1789
|
+
}
|
|
1762
1790
|
if (!bPatchWithoutSideEffects) {
|
|
1763
1791
|
// visit response to report the messages
|
|
1764
1792
|
that.visitResponse(oPatchResult, aResult[1],
|
|
@@ -1782,11 +1810,19 @@ sap.ui.define([
|
|
|
1782
1810
|
if (oError.canceled) {
|
|
1783
1811
|
throw oError;
|
|
1784
1812
|
}
|
|
1813
|
+
oRequestLock.unlock();
|
|
1814
|
+
oRequestLock = undefined;
|
|
1815
|
+
|
|
1816
|
+
fnErrorCallback(oError);
|
|
1817
|
+
if (bSkip) {
|
|
1818
|
+
// Note: this PATCH is already merged into another
|
|
1819
|
+
// --> return the corresponding PATCH promise
|
|
1820
|
+
return that.mEditUrl2PatchPromise[sEditUrl];
|
|
1821
|
+
}
|
|
1785
1822
|
|
|
1786
1823
|
// Note: We arrive here only for the PATCH which was really sent to the server.
|
|
1787
1824
|
// The other ones which have been merged are still pending on this one!
|
|
1788
1825
|
// In the end, they will either succeed or be canceled.
|
|
1789
|
-
fnErrorCallback(oError);
|
|
1790
1826
|
switch (that.oRequestor.getGroupSubmitMode(sGroupId)) {
|
|
1791
1827
|
case "API":
|
|
1792
1828
|
break;
|
|
@@ -1801,14 +1837,16 @@ sap.ui.define([
|
|
|
1801
1837
|
default:
|
|
1802
1838
|
throw oError; // no retry, just give up
|
|
1803
1839
|
}
|
|
1804
|
-
oRequestLock.unlock();
|
|
1805
|
-
oRequestLock = undefined;
|
|
1806
1840
|
|
|
1807
|
-
|
|
1841
|
+
that.mEditUrl2PatchPromise[sEditUrl]
|
|
1842
|
+
= patch(that.oRequestor.lockGroup(sRetryGroupId, that, true, true), true);
|
|
1843
|
+
|
|
1844
|
+
return that.mEditUrl2PatchPromise[sEditUrl];
|
|
1808
1845
|
}).finally(function () {
|
|
1809
1846
|
if (oRequestLock) {
|
|
1810
1847
|
oRequestLock.unlock();
|
|
1811
1848
|
}
|
|
1849
|
+
delete that.mEditUrl2PatchPromise[sEditUrl];
|
|
1812
1850
|
});
|
|
1813
1851
|
}
|
|
1814
1852
|
|
|
@@ -1832,7 +1870,9 @@ sap.ui.define([
|
|
|
1832
1870
|
}
|
|
1833
1871
|
}
|
|
1834
1872
|
// remember the old value
|
|
1835
|
-
|
|
1873
|
+
oOldData
|
|
1874
|
+
= _Cache.makeUpdateData(aPropertyPath, _Helper.drillDown(oEntity, aPropertyPath));
|
|
1875
|
+
|
|
1836
1876
|
oPostBody = _Helper.getPrivateAnnotation(oEntity, "postBody");
|
|
1837
1877
|
if (oPostBody) {
|
|
1838
1878
|
// change listeners are informed later
|
|
@@ -550,6 +550,8 @@ sap.ui.define([
|
|
|
550
550
|
&& oCandidate.headers["If-Match"] === oChange.headers["If-Match"]) {
|
|
551
551
|
_Helper.merge(oCandidate.body, oChange.body);
|
|
552
552
|
oChange.$resolve(oCandidate.$promise);
|
|
553
|
+
oCandidate.$mergeRequests(oChange.$mergeRequests());
|
|
554
|
+
|
|
553
555
|
return true;
|
|
554
556
|
}
|
|
555
557
|
});
|
|
@@ -1715,7 +1717,7 @@ sap.ui.define([
|
|
|
1715
1717
|
* @param {any} [vOwner]
|
|
1716
1718
|
* An additional precondition for the merging of GET requests: the owner must be identical.
|
|
1717
1719
|
* @param {function(string[]):string[]} [fnMergeRequests]
|
|
1718
|
-
* Function which is called during merging of GET requests. If a merged request has a
|
|
1720
|
+
* Function which is called during merging of GET or PATCH requests. If a merged request has a
|
|
1719
1721
|
* function given, this function will be called and its return value is
|
|
1720
1722
|
* given to the one remaining request's function as a parameter.
|
|
1721
1723
|
* @returns {Promise}
|
|
@@ -228,7 +228,7 @@ sap.ui.define([
|
|
|
228
228
|
*
|
|
229
229
|
* @extends sap.ui.model.Model
|
|
230
230
|
* @public
|
|
231
|
-
* @version 1.102.
|
|
231
|
+
* @version 1.102.2
|
|
232
232
|
*/
|
|
233
233
|
var ResourceModel = Model.extend("sap.ui.model.resource.ResourceModel", /** @lends sap.ui.model.resource.ResourceModel.prototype */ {
|
|
234
234
|
|
|
@@ -26,7 +26,7 @@ sap.ui.define([
|
|
|
26
26
|
* @extends sap.ui.model.SimpleType
|
|
27
27
|
*
|
|
28
28
|
* @author SAP SE
|
|
29
|
-
* @version 1.102.
|
|
29
|
+
* @version 1.102.2
|
|
30
30
|
*
|
|
31
31
|
* @public
|
|
32
32
|
* @param {object} [oFormatOptions] Formatting options. For a list of all available options, see {@link sap.ui.core.format.DateFormat.getDateInstance DateFormat}.
|
|
@@ -33,7 +33,7 @@ sap.ui.define([
|
|
|
33
33
|
* @extends sap.ui.model.CompositeType
|
|
34
34
|
*
|
|
35
35
|
* @author SAP SE
|
|
36
|
-
* @version 1.102.
|
|
36
|
+
* @version 1.102.2
|
|
37
37
|
*
|
|
38
38
|
* @public
|
|
39
39
|
* @param {object} [oFormatOptions] Formatting options. For a list of all available options, see {@link sap.ui.core.format.DateFormat.getDateInstance DateFormat}.
|
|
@@ -19,7 +19,7 @@ sap.ui.define(['./Date', 'sap/ui/core/format/DateFormat'],
|
|
|
19
19
|
* @extends sap.ui.model.type.Date
|
|
20
20
|
*
|
|
21
21
|
* @author SAP SE
|
|
22
|
-
* @version 1.102.
|
|
22
|
+
* @version 1.102.2
|
|
23
23
|
*
|
|
24
24
|
* @public
|
|
25
25
|
* @param {object} [oFormatOptions] Formatting options. For a list of all available options, see {@link sap.ui.core.format.DateFormat.getDateTimeInstance DateFormat}.
|
|
@@ -19,7 +19,7 @@ sap.ui.define(['./DateInterval', 'sap/ui/core/format/DateFormat'],
|
|
|
19
19
|
* @extends sap.ui.model.type.DateInterval
|
|
20
20
|
*
|
|
21
21
|
* @author SAP SE
|
|
22
|
-
* @version 1.102.
|
|
22
|
+
* @version 1.102.2
|
|
23
23
|
*
|
|
24
24
|
* @public
|
|
25
25
|
* @param {object} [oFormatOptions] Formatting options. For a list of all available options, see {@link sap.ui.core.format.DateFormat.getDateTimeInstance DateFormat}.
|
|
@@ -24,7 +24,7 @@ sap.ui.define([
|
|
|
24
24
|
* @extends sap.ui.model.SimpleType
|
|
25
25
|
*
|
|
26
26
|
* @author SAP SE
|
|
27
|
-
* @version 1.102.
|
|
27
|
+
* @version 1.102.2
|
|
28
28
|
*
|
|
29
29
|
* @public
|
|
30
30
|
* @param {object} [oFormatOptions] formatting options. Supports the same options as {@link sap.ui.core.format.FileSizeFormat.getInstance FileSizeFormat.getInstance}
|
|
@@ -26,7 +26,7 @@ sap.ui.define([
|
|
|
26
26
|
* @extends sap.ui.model.SimpleType
|
|
27
27
|
*
|
|
28
28
|
* @author SAP SE
|
|
29
|
-
* @version 1.102.
|
|
29
|
+
* @version 1.102.2
|
|
30
30
|
*
|
|
31
31
|
* @public
|
|
32
32
|
* @param {object} [oFormatOptions] Formatting options. For a list of all available options, see {@link sap.ui.core.format.NumberFormat NumberFormat}.
|
|
@@ -26,7 +26,7 @@ sap.ui.define([
|
|
|
26
26
|
* @extends sap.ui.model.SimpleType
|
|
27
27
|
*
|
|
28
28
|
* @author SAP SE
|
|
29
|
-
* @version 1.102.
|
|
29
|
+
* @version 1.102.2
|
|
30
30
|
*
|
|
31
31
|
* @public
|
|
32
32
|
* @param {object} [oFormatOptions] Formatting options. For a list of all available options, see {@link sap.ui.core.format.NumberFormat NumberFormat}.
|
|
@@ -19,7 +19,7 @@ sap.ui.define(['./Date', 'sap/ui/core/format/DateFormat'],
|
|
|
19
19
|
* @extends sap.ui.model.type.Date
|
|
20
20
|
*
|
|
21
21
|
* @author SAP SE
|
|
22
|
-
* @version 1.102.
|
|
22
|
+
* @version 1.102.2
|
|
23
23
|
*
|
|
24
24
|
* @public
|
|
25
25
|
* @param {object} [oFormatOptions] Formatting options. For a list of all available options, see {@link sap.ui.core.format.DateFormat.getTimeInstance DateFormat}.
|
|
@@ -19,7 +19,7 @@ sap.ui.define(['./DateInterval', 'sap/ui/core/format/DateFormat'],
|
|
|
19
19
|
* @extends sap.ui.model.type.DateInterval
|
|
20
20
|
*
|
|
21
21
|
* @author SAP SE
|
|
22
|
-
* @version 1.102.
|
|
22
|
+
* @version 1.102.2
|
|
23
23
|
*
|
|
24
24
|
* @public
|
|
25
25
|
* @param {object} [oFormatOptions] Formatting options. For a list of all available options, see {@link sap.ui.core.format.DateFormat.getTimeInstance DateFormat}.
|