Pass values from before operation rule to after operation rule

Which IIQ version are you inquiring about?

8.4p1

I need to send a value from before rule to after rule i tried the following, but the value keeps being null.:

Before rule:

Map updatedInfoMap = new HashMap();
Map connectorStateMap = new HashMap();
connectorStateMap.put("folderId", folderId);
connectorStateMap.put("userID", userID);
updatedInfoMap.put("updatedEndPoint", requestEndPoint);
updatedInfoMap.put("connectorStateMap", connectorStateMap);
return updatedInfoMap;

After Rule:

String userID = application.getAttributeValue("userID");

From the logs I can see that the value is not being null: (I have cut out the log to the relevant part)

2024-10-06T10:44:56,455
DEBUG http-nio-80-exec-1 connector.webservices.v2.RequestOrchestratorV2:597 - Updated info map before operation rule post-processing: connectorStateMap={userID=56, folderId=88}

Is there something I’m missing out?

Could you please explain bit more about this scenario like what is the use case and what exactly you are trying to do?

Hi @AhmedWaleed
In your before operation rule, you are setting connectorStateMap in updateInfoMap and returning updateInfoMap.
In after operation rule, you are trying to get the atttribute value of connectorStateMap directly.
I have not tested below code, but you can try.

Map stateMap = application.getAttributeValue("connectorStateMap");
log.debug("Connector State Map::::"+ connectorStateMap);
String userID = stateMap.get("userID");
log.debug("User ID::" +userID);
2 Likes

Hello @soswain_resmed,

This worked.

But I have a question, do you know if this will be available in the After Provisioning Rule?

1 Like

Hi @AhmedWaleed ,
I am not very much sure of it. I don’t think it’s available in after provisioning rule.

1 Like