[midPoint-git] [Evolveum/midpoint] 89c29b: Persist schema match and wire it into mapping sugg...

Michal Zelenčík noreply at github.com
Mon Oct 27 12:30:34 CET 2025


  Branch: refs/heads/midpilot
  Home:   https://github.com/Evolveum/midpoint
  Commit: 89c29b49d0dff6295bfbe22df9bb8b4bb67002dd
      https://github.com/Evolveum/midpoint/commit/89c29b49d0dff6295bfbe22df9bb8b4bb67002dd
  Author: Michal Zelencik <michal.zelencik at evolveum.com>
  Date:   2025-10-27 (Mon, 27 Oct 2025)

  Changed paths:
    M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/resource/component/wizard/smart/PageSmartIntegrationDefiningType.java
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/constants/SchemaConstants.java
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/util/ShadowObjectTypeStatisticsTypeUtil.java
    M infra/schema/src/main/resources/xml/ns/public/common/common-smart-integration-3.xsd
    M infra/schema/src/main/resources/xml/ns/public/common/common-tasks-3.xsd
    M infra/schema/src/main/resources/xml/ns/public/model/extension-3.xsd
    M model/smart-api/src/main/java/com/evolveum/midpoint/smart/api/SmartIntegrationService.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/MappingsSuggestionOperation.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/SmartIntegrationServiceImpl.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/MappingsSchemaMatchingActivityRun.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/MappingsSuggestionActivityHandler.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/MappingsSuggestionRemoteServiceCallActivityRun.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/ObjectTypeRelatedSuggestionWorkDefinition.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/Util.java
    M model/smart-impl/src/test/java/com/evolveum/midpoint/smart/impl/TestSmartIntegrationServiceImpl.java

  Log Message:
  -----------
  Persist schema match and wire it into mapping suggestions.

This change introduces value types for schema match and a new
model extension item to store it. It adds a schema constant,
implements computation of timestamped schema match pairs, and
persists them in a generic object annotated with resource OID,
kind, and intent, with helpers to retrieve the latest. An activity
step now computes or reuses a stored schema match and records its
reference in the parent work state; the remote suggestion step requires
and uses this reference. The mapping suggestion flow is refactored
to consume a precomputed schema match instead of computing it on the fly,
and tasks can optionally reference a specific stored schema match.

The UI and tests were updated accordingly. SmartIntegrationService.
suggestMappings now includes a schemaMatch parameter;
new service methods were added to compute schema match and to
fetch the latest stored match. XSD changes require regeneration and
a rebuild.

# Conflicts:
#	model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/MappingsSuggestionOperation.java
#	model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/SmartIntegrationServiceImpl.java


  Commit: 01dd99978cadc1773cb7ef13b8e7e8b2bca57a6d
      https://github.com/Evolveum/midpoint/commit/01dd99978cadc1773cb7ef13b8e7e8b2bca57a6d
  Author: Michal Zelencik <michal.zelencik at evolveum.com>
  Date:   2025-10-27 (Mon, 27 Oct 2025)

  Changed paths:
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/MappingsSuggestionOperation.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/mappings/ValuesPair.java
    M model/smart-impl/src/test/java/com/evolveum/midpoint/smart/impl/TestMappingsSuggestionOperation.java

  Log Message:
  -----------
  Small fixes after 10888 merge


  Commit: ffb6dc9d001af39fd520a2bbd3a5d20ec00295bc
      https://github.com/Evolveum/midpoint/commit/ffb6dc9d001af39fd520a2bbd3a5d20ec00295bc
  Author: Michal Zelencik <michal.zelencik at evolveum.com>
  Date:   2025-10-27 (Mon, 27 Oct 2025)

  Changed paths:
    M gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/page/admin/resource/component/wizard/smart/PageSmartIntegrationDefiningType.java
    M infra/schema/src/main/resources/xml/ns/public/common/common-tasks-3.xsd
    M model/smart-api/src/main/java/com/evolveum/midpoint/smart/api/SmartIntegrationService.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/CorrelationSuggestionOperation.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/CorrelatorEvaluator.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/SmartIntegrationServiceImpl.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/CorrelationSchemaMatchingActivityRun.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/CorrelationStatisticsComputationActivityRun.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/CorrelationSuggestionActivityHandler.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/CorrelationSuggestionRemoteServiceCallActivityRun.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/CorrelationSuggestionWorkDefinition.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/MappingsSchemaMatchingActivityRun.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/MappingsStatisticsComputationActivityRun.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/MappingsSuggestionActivityHandler.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/MappingsSuggestionRemoteServiceCallActivityRun.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/MappingsSuggestionWorkDefinition.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/correlation/CorrelatedSuggestionWithScore.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/correlation/CorrelatorSuggestion.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/correlation/ExistingMapping.java
    M model/smart-impl/src/test/java/com/evolveum/midpoint/smart/impl/TestCorrelatorSuggestions.java
    M model/smart-impl/src/test/java/com/evolveum/midpoint/smart/impl/TestSmartIntegrationServiceImpl.java

  Log Message:
  -----------
  Refactor correlation suggestion pipeline with composite workflow

Introduce statistics and schema match as inputs to correlation
suggestion and propagate through the service API. Refactor correlation
suggestion into a composite activity with dedicated steps for statistics
computation, schema matching, and remote service call. Extend the task
schema to store references to precomputed statistics and schema match.
Rework correlation suggestion internals to consume the provided schema
match and extract helper types into a dedicated package with accessor
methods. Align mappings related activities to use
MappingsSuggestionWorkDefinition generics consistently.


  Commit: 656dc2b510d32db19ff0aa581e53426c93eae7de
      https://github.com/Evolveum/midpoint/commit/656dc2b510d32db19ff0aa581e53426c93eae7de
  Author: Michal Zelencik <michal.zelencik at evolveum.com>
  Date:   2025-10-27 (Mon, 27 Oct 2025)

  Changed paths:
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/CorrelationStatisticsComputationActivityRun.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/MappingsStatisticsComputationActivityRun.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/ObjectClassStatisticsComputer.java
    R model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/ObjectTypeRelatedStatisticsComputer.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/ObjectTypeStatisticsComputer.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/ObjectTypesStatisticsComputationActivityRun.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/ObjectTypesSuggestFocusTypesActivityRun.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/ObjectTypesSuggestionActivityHandler.java
    A model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/ObjectTypesSuggestionRemoteServiceCallActivityRun.java
    R model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/RemoteServiceCallActivityRun.java
    R model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/RemoteServiceCallFocusTypeActivityRun.java
    R model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/StatisticsComputationActivityRun.java
    R model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/StatisticsComputer.java
    M model/smart-impl/src/test/java/com/evolveum/midpoint/smart/impl/TestCorrelatorSuggestions.java
    M model/smart-impl/src/test/java/com/evolveum/midpoint/smart/impl/TestMappingsSuggestionOperation.java
    M model/smart-impl/src/test/java/com/evolveum/midpoint/smart/impl/TestSmartIntegrationServiceImpl.java

  Log Message:
  -----------
  Naming cleanup


  Commit: 6839885c826fbec56cae918cd4c93b20f67ff574
      https://github.com/Evolveum/midpoint/commit/6839885c826fbec56cae918cd4c93b20f67ff574
  Author: Michal Zelencik <michal.zelencik at evolveum.com>
  Date:   2025-10-27 (Mon, 27 Oct 2025)

  Changed paths:
    M model/smart-impl/src/test/java/com/evolveum/midpoint/smart/impl/TestMappingsSuggestionOperation.java

  Log Message:
  -----------
  Configure the factory used by SmartIntegrationService
to return our mock client

Signed-off-by: Michal Zelencik <michal.zelencik at evolveum.com>


  Commit: a4fe78b12e075d5b5fef8e1961ed35d8cc409f3c
      https://github.com/Evolveum/midpoint/commit/a4fe78b12e075d5b5fef8e1961ed35d8cc409f3c
  Author: Michal Zelencik <michal.zelencik at evolveum.com>
  Date:   2025-10-27 (Mon, 27 Oct 2025)

  Changed paths:
    M model/smart-api/src/main/java/com/evolveum/midpoint/smart/api/SmartIntegrationService.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/SmartIntegrationServiceImpl.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/CorrelationStatisticsComputationActivityRun.java
    M model/smart-impl/src/main/java/com/evolveum/midpoint/smart/impl/activities/MappingsStatisticsComputationActivityRun.java

  Log Message:
  -----------
  Return Optional OID for latest object-type statistics

The callers only need the statistics object OID to determine whether
to skip recomputation, not the whole GenericObjectType. Returning
Optional<String> makes the “may not exist” contract explicit and
avoids null handling and avoids unnecessary data fetching/deserialization.

Signed-off-by: Michal Zelencik <michal.zelencik at evolveum.com>


Compare: https://github.com/Evolveum/midpoint/compare/4e26b8fb56d3...a4fe78b12e07

To unsubscribe from these emails, change your notification settings at https://github.com/Evolveum/midpoint/settings/notifications


More information about the midPoint-svn mailing list