[midPoint-git] [Evolveum/midpoint] d08ef8: Simplify "resource objects" package code
mederly
noreply at github.com
Tue Nov 14 10:24:01 CET 2023
Branch: refs/heads/master
Home: https://github.com/Evolveum/midpoint
Commit: d08ef808daf981c7f97f5e6c4959c8dcac97bfdb
https://github.com/Evolveum/midpoint/commit/d08ef808daf981c7f97f5e6c4959c8dcac97bfdb
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2023-11-07 (Tue, 07 Nov 2023)
Changed paths:
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/AssociationDefinitionStore.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceAssociationDefinition.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceAttributeContainer.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceAttributeContainerImpl.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceObjectDefinitionResolver.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceObjectIdentification.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceSchema.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceSchemaUtil.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/util/ShadowUtil.java
M provisioning/provisioning-api/src/main/java/com/evolveum/midpoint/provisioning/api/ExternalResourceEvent.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/CommonBeans.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ProvisioningContext.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ProvisioningContextFactory.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ResourceObjectOperations.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/AbstractResourceEntity.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/AbstractResourceObjectSearchOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ActivationConverter.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/CompleteResourceObject.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/DelineationProcessor.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/EntitlementConverter.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/EntitlementReader.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/EntitlementUtils.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ExternalResourceObjectChange.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObject.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectAddOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectAsyncChange.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectChange.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectConverter.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectCountOperation.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectDeleteOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectFound.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectHandler.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectLiveSyncChange.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectLocateOrFetchOperation.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectModifyOperation.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectProvisioningOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectReferenceResolver.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectSearchOperation.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectUcfModifyOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectsBeans.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resources/ResourceManager.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowGetOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowProvisioningOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowSearchLikeOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowedChange.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowedObjectConstruction.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowsFacade.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/errors/CommunicationExceptionHandler.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/errors/ErrorHandler.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/manager/ShadowUpdater.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/util/ProvisioningUtil.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/ConnectorInstance.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/Operation.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/PropertyModificationOperation.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/UcfResourceObject.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/connectors/AbstractManualConnectorInstance.java
M provisioning/ucf-impl-builtin/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/builtin/async/provisioning/AsyncProvisioningConnectorInstance.java
M provisioning/ucf-impl-builtin/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/builtin/async/provisioning/OperationRequested.java
M provisioning/ucf-impl-builtin/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/builtin/async/update/AsyncUpdateConnectorInstance.java
M provisioning/ucf-impl-builtin/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/builtin/async/update/TransformationalAsyncUpdateMessageListener.java
M provisioning/ucf-impl-connid/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/ConnectorInstanceConnIdImpl.java
M provisioning/ucf-impl-connid/src/test/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/TestUcfDummy.java
M provisioning/ucf-impl-connid/src/test/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/TestUcfOpenDj.java
Log Message:
-----------
Simplify "resource objects" package code
The ResourceObjectConverter and EntitlementConverter were significantly
refactored, cleaned-up, and simplified. It was needed to facilitate
analysis of repository queries and prepare for changes related to
shadow caching.
Work in progress.
Commit: ade50c914e8595858edeb15279e1715439528023
https://github.com/Evolveum/midpoint/commit/ade50c914e8595858edeb15279e1715439528023
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2023-11-07 (Tue, 07 Nov 2023)
Changed paths:
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectDeleteOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectUcfModifyOperation.java
Log Message:
-----------
Remove redundant capability checks
Just a minor code improvement.
Commit: 4896e6c857a90c80eb552c627154cf32bfbf0602
https://github.com/Evolveum/midpoint/commit/4896e6c857a90c80eb552c627154cf32bfbf0602
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2023-11-07 (Tue, 07 Nov 2023)
Changed paths:
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceAttributeContainer.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceAttributeContainerImpl.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceObjectIdentification.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/util/ShadowUtil.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ProvisioningContext.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/EntitlementConverter.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/EntitlementReader.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectAddOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectChange.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectConverter.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectLocateOrFetchOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectUcfModifyOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowGetOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowedObjectConstruction.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/ConnectorInstance.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/UcfResourceObject.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/connectors/AbstractManualConnectorInstance.java
M provisioning/ucf-impl-builtin/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/builtin/async/provisioning/AsyncProvisioningConnectorInstance.java
M provisioning/ucf-impl-builtin/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/builtin/async/update/AsyncUpdateConnectorInstance.java
M provisioning/ucf-impl-connid/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/ConnectorInstanceConnIdImpl.java
M provisioning/ucf-impl-connid/src/test/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/TestUcfDummy.java
M provisioning/ucf-impl-connid/src/test/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/TestUcfOpenDj.java
Log Message:
-----------
Fix async changes with no-read resources
When the resource does not support reading, the ResourceObjectChange
will not try to fetch the missing resource object.
(This functionality was introduced as part of code unification in
d08ef808daf981c7f97f5e6c4959c8dcac97bfdb.)
It should fix failing async update tests in model-intest.
Some further code simplifications were done as well.
Commit: 6606b36c73897cbb78bb12528d752f5af50f252c
https://github.com/Evolveum/midpoint/commit/6606b36c73897cbb78bb12528d752f5af50f252c
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2023-11-08 (Wed, 08 Nov 2023)
Changed paths:
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectAddOperation.java
Log Message:
-----------
Fix ADD operation multi-connector uniqueness check
The (correct) tightening up UCF fetchObject method identifiers parameter
to be primary-only in 4896e6c857a90c80eb552c627154cf32bfbf0602 revealed
a bug in ADD operation multi-connector case uniqueness check. It is
now fixed.
This fixes failing TestWriter story test.
Commit: f59d5f7c2ab0722c95bc0c977a80d70f8440cd53
https://github.com/Evolveum/midpoint/commit/f59d5f7c2ab0722c95bc0c977a80d70f8440cd53
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2023-11-11 (Sat, 11 Nov 2023)
Changed paths:
M infra/schema/src/main/java/com/evolveum/midpoint/schema/GetOperationOptions.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/AttributeDefinitionStore.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceAttributeContainerDefinitionImpl.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceAttributeDefinition.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceObjectIdentification.java
A infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceObjectIdentifier.java
A infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceObjectIdentifiers.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/SearchHierarchyConstraints.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/util/ShadowUtil.java
M model/model-common/src/main/java/com/evolveum/midpoint/model/common/expression/functions/BasicExpressionFunctions.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/CommonBeans.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ProvisioningContext.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ProvisioningContextFactory.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ProvisioningServiceImpl.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ResourceObjectDiscriminator.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ResourceObjectOperations.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/operations/OperationsHelper.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/operations/ProvisioningSearchLikeOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/DelineationProcessor.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/EntitlementConverter.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/FakeIdentifierGenerator.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectAddOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectChange.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectConverter.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectDeleteOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectLocateOrFetchOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectModifyOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectProvisioningOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectReferenceResolver.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectUcfModifyOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ShadowAuditHelper.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resources/ConnectorManager.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resources/ResourceCache.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resources/ResourceExpansionOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resources/ResourceManager.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resources/ResourceUpdater.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/AbstractShadowedEntity.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ClassificationHelper.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/DefinitionsHelper.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/EntitlementsHelper.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowAcquisition.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowAddOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowGetOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowProvisioningOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowSearchLikeOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowedChange.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowedObjectConstruction.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowsFacade.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowsLocalBeans.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowsNormalizationUtil.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/manager/OperationResultRecorder.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/manager/PendingOperationsHelper.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/manager/ShadowCreator.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/manager/ShadowFinder.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/manager/ShadowManagerMiscUtil.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/manager/ShadowUpdater.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/util/ProvisioningUtil.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/ConnectorInstance.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/ConnectorOperationOptions.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/connectors/AbstractManualConnectorInstance.java
M provisioning/ucf-impl-builtin/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/builtin/async/provisioning/AsyncProvisioningConnectorInstance.java
M provisioning/ucf-impl-builtin/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/builtin/async/provisioning/OperationRequested.java
M provisioning/ucf-impl-builtin/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/builtin/async/update/AsyncUpdateConnectorInstance.java
M provisioning/ucf-impl-builtin/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/builtin/async/update/TransformationalAsyncUpdateMessageListener.java
M provisioning/ucf-impl-connid/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/ConnectorInstanceConnIdImpl.java
M provisioning/ucf-impl-connid/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/SearchExecutor.java
M provisioning/ucf-impl-connid/src/test/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/TestUcfDummy.java
M provisioning/ucf-impl-connid/src/test/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/TestUcfOpenDj.java
Log Message:
-----------
Clarify resource object identification situations
When resolving resource objects from their identifiers, we need
to distinguish between having the primary identifier and not having one.
Moreover, when dealing with those identifiers, we need to ensure they
have, e.g., exactly one value.
To cover these needs, this commit provides specialized classes for
handling object identifiers and identification:
- ResourceObjectIdentifier
- ResourceObjectIdentifiers [WithPrimary, SecondaryOnly]
- (existing) ResourceObjectIdentification [WithPrimary, SecondaryOnly]
Signatures of various API and internal methods were changed to use
the above classes to precisely specify their requirements.
It facilitates the analysis of code, and repo queries in particular.
Other changes:
- Shadow repository queries were centralized into ShadowFinder
to allow easier analysis.
Work in progress. There are potentially breaking changes, like not
updating the (now immutable) identification when uid or name changes
in ConnectorInstanceConnIdImpl; simplifying (fixing?) conversion of
__NAME__ delta into side effects, and so on. These are to be tested.
Commit: 1595f11b4aa9efbcbd39648415c722c1c2bd73f8
https://github.com/Evolveum/midpoint/commit/1595f11b4aa9efbcbd39648415c722c1c2bd73f8
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2023-11-11 (Sat, 11 Nov 2023)
Changed paths:
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceObjectIdentifiers.java
M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/TestConsistencySimple.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectConverter.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowDeleteOperation.java
Log Message:
-----------
Avoid deleting proposed shadows
Shadows in PROPOSED state are certainly not present on the resource.
Moreover, their deletion should fail because (among others factors)
they usually do not have a primary identifier.
This commit makes sure we do not even attempt deletion of these objects.
This fixes broken TestConsistencySimple and TestMultiResource after
f59d5f7c2ab0722c95bc0c977a80d70f8440cd53.
Commit: 460661ff531b2254a7848045b52c76dcbd925202
https://github.com/Evolveum/midpoint/commit/460661ff531b2254a7848045b52c76dcbd925202
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2023-11-13 (Mon, 13 Nov 2023)
Changed paths:
M testing/story/src/test/java/com/evolveum/midpoint/testing/story/TestResourceInMaintenance.java
Log Message:
-----------
Adapt TestResourceInMaintenance
This commit fixes that failing test by adapting it to the fact that
we no longer attempt to delete accounts in the PROPOSED state.
Commit: 83784974e4cfb14bc59011ef479d14beb593718d
https://github.com/Evolveum/midpoint/commit/83784974e4cfb14bc59011ef479d14beb593718d
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2023-11-13 (Mon, 13 Nov 2023)
Changed paths:
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/AssociationDefinitionStore.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceAttribute.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceObjectIdentification.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceObjectIdentifiers.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/util/ShadowUtil.java
M model/model-common/src/main/java/com/evolveum/midpoint/model/common/expression/evaluator/AssociationFromLinkExpressionEvaluator.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ExternalResourceEventListenerImpl.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ResourceObjectDiscriminator.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/ResourceObjectOperations.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/AbstractResourceObjectRetrievalOperation.java
R provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/AbstractResourceObjectSearchOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/EntitlementConverter.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/EntitlementUtils.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectChange.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectConverter.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectFetchOperation.java
A provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectLocateOperation.java
R provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectLocateOrFetchOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectProvisioningOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectReferenceResolver.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectSearchOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectUcfModifyOperation.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/EntitlementsHelper.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowAcquisition.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowedChange.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowedObjectConstruction.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/manager/ShadowFinder.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/util/ProvisioningUtil.java
M provisioning/ucf-api/src/main/java/com/evolveum/midpoint/provisioning/ucf/api/UcfResourceObject.java
M provisioning/ucf-impl-connid/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/ConnectorInstanceConnIdImpl.java
M provisioning/ucf-impl-connid/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/SearchExecutor.java
M provisioning/ucf-impl-connid/src/main/java/com/evolveum/midpoint/provisioning/ucf/impl/connid/SyncDeltaConverter.java
Log Message:
-----------
Do final touches necessary for shadow analysis
These are (hopefully) final code clarifications needed to perform
repository shadow accesses in the provisioning module. There are
several movements regarding responsibilities, like for resolving
secondary to primary identifiers against the repo. Some methods were
renamed.
Commit: 47fe05958f84078f7cd8cab0447dd6c48a99672f
https://github.com/Evolveum/midpoint/commit/47fe05958f84078f7cd8cab0447dd6c48a99672f
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2023-11-13 (Mon, 13 Nov 2023)
Changed paths:
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/AttributeDefinitionStore.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/resourceobjects/ResourceObjectChange.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/AbstractShadowedEntity.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowedChange.java
M provisioning/provisioning-impl/src/main/java/com/evolveum/midpoint/provisioning/impl/shadows/ShadowedObjectFound.java
M provisioning/provisioning-impl/src/test/java/com/evolveum/midpoint/provisioning/impl/MockLiveSyncTaskHandler.java
M provisioning/provisioning-impl/src/test/java/com/evolveum/midpoint/provisioning/impl/opendj/TestOpenDj.java
M testing/conntest/src/test/java/com/evolveum/midpoint/testing/conntest/AbstractLdapConnTest.java
M testing/conntest/src/test/java/com/evolveum/midpoint/testing/conntest/AbstractLdapTest.java
M testing/conntest/src/test/java/com/evolveum/midpoint/testing/conntest/opendj/TestOpenDj.java
M testing/conntest/src/test/java/com/evolveum/midpoint/testing/conntest/opendj/TestOpenDjDn.java
M testing/conntest/src/test/java/com/evolveum/midpoint/testing/conntest/opendj/TestOpenDjUnsafe.java
Log Message:
-----------
Fix too optimistic fake resource object creation
ShadowedChange started to create fake (identifiers-only) resource
objects in 574d326ec3cb05aafe002d7b176b6f88a842cda1. However, this was
too optimistic: in object-class-less DELETE events in wildcard LS such
objects cannot be constructed. This commit thus fixes things by avoiding
creation of these objects where it's not possible.
This fixes failing OpenDJ-related conntests.
(These tests are also adapted to changes of provisioning internals:
some redundant operations were eliminated).
Commit: e0642a291c3943b71e0fd8fe312c803b5e5d1d7a
https://github.com/Evolveum/midpoint/commit/e0642a291c3943b71e0fd8fe312c803b5e5d1d7a
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2023-11-14 (Tue, 14 Nov 2023)
Changed paths:
M docs/deployment/ninja/index.adoc
M docs/misc/self-registration/index.adoc
M docs/roles-policies/pdrbac/index.adoc
A docs/roles-policies/pdrbac/pdrbac-midpoint-overview.png
A docs/roles-policies/pdrbac/pdrbac-overview.drawio
A docs/roles-policies/pdrbac/pdrbac-overview.png
A docs/roles-policies/pdrbac/rbac-overview.png
M gui/admin-gui/src/frontend/scss/_admin-lte-overrides.scss
M gui/admin-gui/src/frontend/scss/_bootstrap-variables.scss
M gui/admin-gui/src/frontend/scss/midpoint.scss
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/GuiStyleConstants.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/component/result/MessagePanel.html
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/page/PageAdminLTE.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/util/ModelServiceLocator.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/component/menu/LeftMenuAuthzUtil.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/component/wizard/MultiSelectTileWizardStepPanel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/component/wizard/SelectTileWizardStepPanel.html
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/component/wizard/SelectTileWizardStepPanel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/component/wizard/SingleTileWizardStepPanel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/AbstractPageObjectDetails.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/abstractrole/component/ModificationTargetPanel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/assignmentholder/PageAssignmentHolderDetails.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/resource/PageResource.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/PageRole.java
A gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/component/wizard/AccessApplicationRoleStepPanel.html
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/component/wizard/AccessApplicationRoleStepPanel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/component/wizard/BusinessRoleWizardPanel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/component/wizard/CandidateMembersPanel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/model/BusinessRoleApplicationDto.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/model/BusinessRoleDto.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/model/RoleAnalysisAggregateChartModel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/model/RoleAnalysisModel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/page/page/PageRoleAnalysis.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/page/page/PageRoleAnalysisCluster.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/page/page/PageRoleAnalysisSession.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/page/panel/cluster/MigratedRolesPanel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/page/panel/cluster/RoleAnalysisClusterOperationPanel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/page/panel/session/ClustersPanel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/page/panel/session/ImageDetailsPanel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/tables/RoleAnalysisDetectedPatternTable.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/tables/RoleAnalysisRoleBasedTable.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/tables/RoleAnalysisUserBasedTable.java
R gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/utils/RoleAnalysisObjectUtils.java
R gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/utils/chunk/BasePrepareAction.java
R gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/utils/chunk/CacheUtils.java
R gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/utils/chunk/MiningStructure.java
R gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/utils/chunk/PrepareChunkStructure.java
R gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/utils/chunk/PrepareExpandStructure.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/utils/image/CustomImageResource.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/utils/table/RoleAnalysisTableCellFillResolver.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/role/mining/utils/table/RoleAnalysisTableTools.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/login/AbstractPageLogin.html
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/login/PageAbstractFlow.html
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/login/module/PageArchetypeSelection.html
M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/login/module/PageLogin.html
M gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/data/RoleAnalysisTable.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/data/column/AjaxLinkTruncatePanelAction.html
M gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/data/column/AjaxLinkTruncatePanelAction.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/data/column/LinkIconPanelStatus.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/menu/top/LocaleTextPanel.html
M gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/prism/show/VisualizationItemValuePanel.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/web/page/admin/server/PageTasks.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/web/security/MidPointApplication.java
M gui/admin-gui/src/main/java/com/evolveum/midpoint/web/security/util/SecurityUtils.java
M gui/admin-gui/src/test/java/com/evolveum/midpoint/web/AbstractGuiIntegrationTest.java
M gui/admin-gui/src/test/java/com/evolveum/midpoint/web/AbstractGuiUnitTest.java
M infra/common/src/main/java/com/evolveum/midpoint/common/mining/objects/chunk/MiningOperationChunk.java
M infra/common/src/main/java/com/evolveum/midpoint/common/mining/objects/chunk/MiningRoleTypeChunk.java
M infra/common/src/main/java/com/evolveum/midpoint/common/mining/objects/chunk/MiningUserTypeChunk.java
M infra/common/src/main/java/com/evolveum/midpoint/common/mining/objects/detection/DetectedPattern.java
M infra/common/src/main/java/com/evolveum/midpoint/common/mining/objects/detection/DetectionOption.java
M infra/common/src/main/java/com/evolveum/midpoint/common/mining/objects/handler/RoleAnalysisProgressIncrement.java
M infra/common/src/main/java/com/evolveum/midpoint/common/mining/objects/statistic/ClusterStatistic.java
M infra/common/src/main/java/com/evolveum/midpoint/common/mining/utils/ExtractPatternUtils.java
M infra/common/src/main/java/com/evolveum/midpoint/common/mining/utils/RoleAnalysisUtils.java
M infra/common/src/main/java/com/evolveum/midpoint/common/mining/utils/algorithm/JaccardSorter.java
M infra/common/src/main/java/com/evolveum/midpoint/common/mining/utils/values/RoleAnalysisChunkMode.java
M infra/common/src/main/java/com/evolveum/midpoint/common/mining/utils/values/RoleAnalysisOperationMode.java
M infra/common/src/main/java/com/evolveum/midpoint/common/mining/utils/values/RoleAnalysisSortMode.java
A model/model-api/src/main/java/com/evolveum/midpoint/model/api/mining/RoleAnalysisService.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/ModelBeans.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/expr/MidpointFunctionsImpl.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/RoleAnalysisServiceImpl.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/BaseAction.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/chunk/BasePrepareAction.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/chunk/CacheUtils.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/chunk/MiningStructure.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/chunk/PrepareChunkStructure.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/action/ClusterUtils.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/action/Clusterable.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/action/ClusteringAction.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/action/ClusteringActionExecutor.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/action/ClusteringUtils.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/action/RoleBasedClustering.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/action/UserBasedClustering.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/mechanism/Cluster.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/mechanism/Clusterable.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/mechanism/Clusterer.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/mechanism/DataPoint.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/mechanism/DensityBasedClustering.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/mechanism/DistanceMeasure.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/cluster/mechanism/JaccardDistancesMeasure.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/detection/DefaultDetectionAction.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/detection/DefaultPatternResolver.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/detection/DetectionActionExecutor.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/detection/DetectionOperation.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/algorithm/detection/PatternResolver.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/chunk/BasePrepareAction.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/chunk/CompressedMiningStructure.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/chunk/ExpandedMiningStructure.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/chunk/MiningStructure.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/utils/RoleAnalysisAlgorithmUtils.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/mining/utils/RoleAnalysisObjectUtils.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/tasks/RoleAnalysisClusteringActivityHandler.java
M tools/jenkins/midpoint-conntest-pipeline
Log Message:
-----------
Merge branch 'master' into feature/attribute-caching
Compare: https://github.com/Evolveum/midpoint/compare/d876159a09e4...e0642a291c39
More information about the midPoint-svn
mailing list