Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
I'm using MidPoint 4.0 support, with a slightly modified ManualConnectorInstance.java (see NOTE in description).
MidPoint is running from IntelliJ against H2 and a clean home, using OpenJDK 11.
-
Active subscription
-
b8177c4ad634a944bff56f79a3b5451068c5da17
Description
My issue concerns shadow provisioning in offline resources with no backwards reading. Using objects in attached ZIP, I'm simulating the provisioning of an offline resource account (as administrator) by:
- assigning role OfflineSysRole1 to user pappadoc; this creates a shadow on ManResource with <exists>false</exists> and a <pendingOperation> in progress through induction of the construction clause in OfflineResourceMetarole
- approving the associated case work item; this removes the <pendingOperation> from pappadoc's shadow, but doesn't switch the shadow to <exists>true</exists>
- subsequent recomputes on pappadoc result in MidPoint attempting to create another shadow for pappadoc in ManResource (despite pappadoc having a linked shadow there already), which results in a conflict
NOTE:
The aim of the ManualConnectorInstance modification I'm using is to enable me to simulate a DONE state of offline tickets. When closing an offline resource case without the modification, the <pendingOperation> on related shadow gets switched to UNKNOWN state instead of DONE. This is because upon completion, the CaseType's outcome is 'approve', not 'success', which makes ManualConnectorInstance#translateOutcome() not recognize it.