Sailpoint IdentityIQ Group Aggregation Refresh Rule/GroupAggregationRefresh is used to set the value for the Entitlement from Target to the Entitlement Catalogue . Code is modified to take care of the update scenario also.
import sailpoint.object.ResourceObject; import sailpoint.object.ManagedAttribute; import sailpoint.object.Identity; int TIME_DIFFERENCE = 300000; // Five minutes Date modifiedDate = accountGroup.getModified(); Date createdDate = accountGroup.getCreated(); boolean entitlementCreated = false; if(createdDate!=null){ if(modifiedDate != null){ long difference = modifiedDate.getTime() - createdDate.getTime(); if(difference <= TIME_DIFFERENCE){ entitlementCreated = true; } } else { entitlementCreated = true; } } else { } if(entitlementCreated){ Map descMap = new HashMap(); String descriptionValue = accountGroup.getAttribute("description"); if(null != descriptionValue) descMap.put("en_US",descriptionValue); else descMap.put("en_US",""); accountGroup.setAttribute("sysDescriptions",descMap); } Map descMap = new HashMap(); String descriptionValue = accountGroup.getAttribute("description"); if(null != descriptionValue) descMap.put("en_US",descriptionValue); else descMap.put("en_US",""); accountGroup.setAttribute("sysDescriptions",descMap); String displayName = accountGroup.getAttribute("description"); accountGroup.setDisplayName(displayName); return accountGroup;