import java.util.TreeSet;
import java.util.Iterator;
import com.eruces.teadmin.*;
import com.eruces.teagent.*;
public class Java_Admin_Principal_Group_Get_List {
private static final String m_strServerName = "sampleserver";
private static final int m_intPort = 8888;
private static final String m_strAdminUser = "sadmin";
private static final String m_strAdminPass = "password1A";
private static final String m_strUserName = "ls";
private static final String m_strUserType = "Native";
private static TEAgentConnection m_conn;
public static void connect() throws TEAgentException
{
m_conn = TEAgentConnectionFactory.getInstance(TEAgentConnectionFactory.SECURE_USER_PASSWORD);
m_conn.open(m_strServerName, m_intPort, m_strAdminUser, m_strAdminPass);
System.out.println("Connected to " + m_strServerName + ":" + m_intPort + " as " + m_strAdminUser + ".");
}
public static void disconnect() throws TEAgentException
{
m_conn.close();
System.out.println("Disconnected from " + m_strServerName + ":" + m_intPort + " as " + m_strAdminUser + ".");
}
public static void getGroupList() throws TEAgentException, AdminException, Exception
{
Administration admin = new Administration();
admin.attachConnection(m_conn);
PrincipalInfo principal = null;
if (m_strUserType.compareTo("Native") == 0) {
principal = new UserAndPasswordInfo();
((UserAndPasswordInfo)principal).setUserName(m_strUserName);
principal = admin.getPrincipal(principal);
System.out.print("Principal: ");
System.out.println(((UserAndPasswordInfo)principal).getUserName());
}
else if (m_strUserType.compareTo("Windows") == 0) {
principal = new WindowsPrincipalInfo();
((WindowsPrincipalInfo)principal).setUserName(m_strUserName);
principal = admin.getPrincipal(principal);
System.out.print("Principal: ");
System.out.println(((WindowsPrincipalInfo)principal).getUserName());
}
else if (m_strUserType.compareTo("LDAP") == 0) {
principal = new LdapPrincipalInfo();
((LdapPrincipalInfo)principal).setName(m_strUserName);
principal = admin.getPrincipal(principal);
System.out.print("Principal: ");
System.out.println(((LdapPrincipalInfo)principal).getName());
}
PList groupIDs = principal.getGroupIDs();
TreeSet<?> groupSet = groupIDs.getAllElements();
Iterator<?> iter = groupSet.iterator();
while (iter.hasNext()) {
PAny panyID = (PAny)iter.next();
GroupInfo group = new GroupInfo();
group.setPrincipalID(panyID.getLong());
group = (GroupInfo)admin.getPrincipal(group);
String groupName = group.getPrincipalName();
System.out.println(groupName);
}
admin.detachConnection();
}
public static void main(String[] args)
{
try {
connect();
System.out.println("");
getGroupList();
System.out.println("");
disconnect();
}
catch (Exception ex) {
System.out.println("Exception encountered: ");
ex.printStackTrace();
}
}
}