package com.oim.utilities;
import java.util.HashSet;
import java.util.Hashtable;
import java.util.Set;
import Thor.API.tcUtilityFactory;
import oracle.iam.identity.exception.NoSuchUserException;
import oracle.iam.identity.exception.SearchKeyNotUniqueException;
import oracle.iam.identity.exception.UserLookupException;
import oracle.iam.identity.usermgmt.api.UserManager;
import oracle.iam.identity.usermgmt.vo.User;
import oracle.iam.platform.OIMClient;
public class ClientOIM
{
private static OIMClient oimClient = null;
private static tcUtilityFactory util = null;
static UserManager userManager = null;
private static String hostName = "oim.server.com";
private static String port = "14000";
private static String userName = "xelsysadm";
private static String password = "Welcome123";
private static String serverURL = "t3://" + hostName + ":" + port;
private static String authConfigLoc = "C:\\Users\\Desktop\\designconsole\\config\\authwl.conf";
private static String ctxFactory = "weblogic.jndi.WLInitialContextFactory";
// Method to get the connection of OIM
@SuppressWarnings("deprecation")
private static void initialise()
{
try
{
System.out.println("ClientOIM :: initialise :: Host to connect :: "+hostName);
Hashtable<String, String> env = new Hashtable<String, String>();
//setting system properties
env.put("java.naming.provider.url", serverURL);
env.put("java.naming.factory.initial", ctxFactory);
System.setProperty("APPSERVER_TYPE", "wls");
System.setProperty("java.security.auth.login.config", authConfigLoc);
System.setProperty("weblogic.Name", "oim_server1");
oimClient = new OIMClient(env);
oimClient.login(userName, password);
util = new tcUtilityFactory(env, userName, password);
System.out.println("ClientOIM :: initialise :: util :: "+util);
}
catch (Exception e)
{
System.err.println("ClientOIM :: initialise :: Issue with the client login please check configurations");
e.printStackTrace();
System.exit(1);
}
}
public static String getUserKey(final String userLogin)
{
System.out.println("ClientOIM :: getUserKey ::method Started.");
String userKey = null;
try
{
if (userLogin == null)
{
System.out.println("ClientOIM :: getUserKey :: UserLogin is either null or empty");
}
else
{
final Set<String> returnMap = new HashSet<String>();
/* Initialize the User Manager Service */
userManager = oimClient.getService(UserManager.class);
System.out.println("ClientOIM :: getUserKey :: userManager :: "+userManager);
/* Check whether User Manager Service properly initialized */
if(userManager != null)
{
/* Get User object belonging to the User Key */
final User user = userManager.getDetails("User Login", userLogin, returnMap);
System.out.println("ClientOIM :: getUserKey :: user :: "+user);
/* If User object is not null then retrieve User Login */
if(user != null)
{
userKey = user.getEntityId();
System.out.println("ClientOIM :: getUserKey :: userKey :: "+userKey);
}
}
}
}
catch (NoSuchUserException e)
{
System.out.println("ClientOIM :: getUserKey :: NoSuchUserException :: " + e.getMessage());
}
catch (UserLookupException e)
{
System.out.println("ClientOIM :: getUserKey :: UserLookupException :: " + e.getMessage());
}
catch (SearchKeyNotUniqueException e)
{
System.out.println("ClientOIM :: getUserKey :: SearchKeyNotUniqueException :: " + e.getMessage());
}
catch (Exception e)
{
System.out.println("ClientOIM :: getUserKey :: Exception :: " + e.getMessage());
}
System.out.println("ClientOIM :: getUserKey :: method ended.");
return userKey;
}
public static void createUser()
{
try
{
initialise();
userManager = oimClient.getService(UserManager.class);
System.out.println("ClientOIM :: createUser :: userManager :: "+userManager);
User newUser = new User(null);
if(userManager != null)
{
newUser.setAttribute("First Name", "TestUser");
newUser.setAttribute("Last Name", "TestUser");
newUser.setAttribute("Email", "TestUser@mail.com");
newUser.setAttribute("act_key",1L);
newUser.setAttribute("Role","Full-Time");
newUser.setAttribute("Xellerate Type","End-User");
userManager.create(newUser);
System.out.println("ClientOIM :: createUser :: userManager :: User Created");
}
}
catch (Exception e)
{
System.out.println("ClientOIM :: createUser :: Exception :: " + e.getMessage());
}
}
public static void main(String[] args)
{
//initialise();
//String userLogin = "TEST";
//getUserKey(userLogin);
createUser();
}
}
import java.util.HashSet;
import java.util.Hashtable;
import java.util.Set;
import Thor.API.tcUtilityFactory;
import oracle.iam.identity.exception.NoSuchUserException;
import oracle.iam.identity.exception.SearchKeyNotUniqueException;
import oracle.iam.identity.exception.UserLookupException;
import oracle.iam.identity.usermgmt.api.UserManager;
import oracle.iam.identity.usermgmt.vo.User;
import oracle.iam.platform.OIMClient;
public class ClientOIM
{
private static OIMClient oimClient = null;
private static tcUtilityFactory util = null;
static UserManager userManager = null;
private static String hostName = "oim.server.com";
private static String port = "14000";
private static String userName = "xelsysadm";
private static String password = "Welcome123";
private static String serverURL = "t3://" + hostName + ":" + port;
private static String authConfigLoc = "C:\\Users\\Desktop\\designconsole\\config\\authwl.conf";
private static String ctxFactory = "weblogic.jndi.WLInitialContextFactory";
// Method to get the connection of OIM
@SuppressWarnings("deprecation")
private static void initialise()
{
try
{
System.out.println("ClientOIM :: initialise :: Host to connect :: "+hostName);
Hashtable<String, String> env = new Hashtable<String, String>();
//setting system properties
env.put("java.naming.provider.url", serverURL);
env.put("java.naming.factory.initial", ctxFactory);
System.setProperty("APPSERVER_TYPE", "wls");
System.setProperty("java.security.auth.login.config", authConfigLoc);
System.setProperty("weblogic.Name", "oim_server1");
oimClient = new OIMClient(env);
oimClient.login(userName, password);
util = new tcUtilityFactory(env, userName, password);
System.out.println("ClientOIM :: initialise :: util :: "+util);
}
catch (Exception e)
{
System.err.println("ClientOIM :: initialise :: Issue with the client login please check configurations");
e.printStackTrace();
System.exit(1);
}
}
public static String getUserKey(final String userLogin)
{
System.out.println("ClientOIM :: getUserKey ::method Started.");
String userKey = null;
try
{
if (userLogin == null)
{
System.out.println("ClientOIM :: getUserKey :: UserLogin is either null or empty");
}
else
{
final Set<String> returnMap = new HashSet<String>();
/* Initialize the User Manager Service */
userManager = oimClient.getService(UserManager.class);
System.out.println("ClientOIM :: getUserKey :: userManager :: "+userManager);
/* Check whether User Manager Service properly initialized */
if(userManager != null)
{
/* Get User object belonging to the User Key */
final User user = userManager.getDetails("User Login", userLogin, returnMap);
System.out.println("ClientOIM :: getUserKey :: user :: "+user);
/* If User object is not null then retrieve User Login */
if(user != null)
{
userKey = user.getEntityId();
System.out.println("ClientOIM :: getUserKey :: userKey :: "+userKey);
}
}
}
}
catch (NoSuchUserException e)
{
System.out.println("ClientOIM :: getUserKey :: NoSuchUserException :: " + e.getMessage());
}
catch (UserLookupException e)
{
System.out.println("ClientOIM :: getUserKey :: UserLookupException :: " + e.getMessage());
}
catch (SearchKeyNotUniqueException e)
{
System.out.println("ClientOIM :: getUserKey :: SearchKeyNotUniqueException :: " + e.getMessage());
}
catch (Exception e)
{
System.out.println("ClientOIM :: getUserKey :: Exception :: " + e.getMessage());
}
System.out.println("ClientOIM :: getUserKey :: method ended.");
return userKey;
}
public static void createUser()
{
try
{
initialise();
userManager = oimClient.getService(UserManager.class);
System.out.println("ClientOIM :: createUser :: userManager :: "+userManager);
User newUser = new User(null);
if(userManager != null)
{
newUser.setAttribute("First Name", "TestUser");
newUser.setAttribute("Last Name", "TestUser");
newUser.setAttribute("Email", "TestUser@mail.com");
newUser.setAttribute("act_key",1L);
newUser.setAttribute("Role","Full-Time");
newUser.setAttribute("Xellerate Type","End-User");
userManager.create(newUser);
System.out.println("ClientOIM :: createUser :: userManager :: User Created");
}
}
catch (Exception e)
{
System.out.println("ClientOIM :: createUser :: Exception :: " + e.getMessage());
}
}
public static void main(String[] args)
{
//initialise();
//String userLogin = "TEST";
//getUserKey(userLogin);
createUser();
}
}
Comments
Post a Comment