OIM API To Modify User Details Request API

package com.request;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import oracle.iam.api.OIMService;
import oracle.iam.exception.OIMServiceException;
import oracle.iam.identity.exception.NoSuchUserException;
import oracle.iam.identity.exception.UserLookupException;
import oracle.iam.platform.utils.vo.OIMType;
import oracle.iam.request.vo.RequestConstants;
import oracle.iam.request.vo.RequestData;
import oracle.iam.request.vo.RequestEntity;
import oracle.iam.request.vo.RequestEntityAttribute;
import oracle.iam.vo.OperationResult;

import com.connection.Platform;

public class RequestToModifyUser {
 private final OIMService oimService  =Platform.getService(OIMService.class);
 
 public OperationResult modifyUserAttributes(String usrKey, Map<String,String> modAttrs) throws NoSuchUserException, UserLookupException, OIMServiceException
    {
       
        List<RequestEntityAttribute> reqModAttrs = new ArrayList<RequestEntityAttribute>();
        for(Map.Entry<String,String> entry : modAttrs.entrySet())
        {
            RequestEntityAttribute modAttr = new RequestEntityAttribute(entry.getKey(), entry.getValue(), RequestEntityAttribute.TYPE.String);
            reqModAttrs.add(modAttr);
        }
        
      
        RequestEntity reqEntity = new RequestEntity();
        reqEntity.setRequestEntityType(OIMType.User);
        reqEntity.setEntityKey(usrKey);
        reqEntity.setOperation(RequestConstants.MODEL_MODIFY_OPERATION);
        reqEntity.setEntityData(reqModAttrs);        
        
        List<RequestEntity>  entities = new ArrayList<RequestEntity>();
        entities.add(reqEntity);
        
        // Setup 
        RequestData reqData = new RequestData();
        reqData.setTargetEntities(entities);
        
        // Invoke 
        OperationResult result = oimService.doOperation(reqData, OIMService.Intent.REQUEST);
        
        return result;
    }
    
}

No comments:

Post a Comment

About OIM

Oracle Identity Management enables organizations to effectively manage the end - to - end life - cycle of user ide...

Popular Posts