Skip to main content

Sample_Admin_Reviewer_Operations.java

import java.util.Vector;

import com.eruces.teadmin.Administration;
import com.eruces.teadmin.PrincipalInfo;
import com.eruces.teadmin.UserAndPasswordInfo;
import com.eruces.teagent.PList;
import com.eruces.teagent.TEAgentConnection;


public class Sample_Admin_Reviewer_Operations {

public static Vector<String> principal_GetReviewers(TEAgentConnection conn, String user_name) {

Vector<String> out = new Vector<String>();
try {
Administration admin = new Administration();
admin.attachConnection(conn);

PrincipalInfo user = admin.getUserByName(user_name);
PList reviewer_list = user.getReviewerIDs();

Long reviewers[] = reviewer_list.toLongArray();

// Can't instantiate 'PrincipalInfo' directly...
for (long id : reviewers) {
UserAndPasswordInfo pi = new UserAndPasswordInfo();
pi.setPrincipalID(id);
out.add(pi.getPrincipalName());
}

admin.detachConnection();

}
catch (Exception e) {
e.printStackTrace();
}

return out;
}

public static void principal_AddReviewer(TEAgentConnection conn, String user_name, String reviewer_name) {
try {
Administration admin = new Administration();
admin.attachConnection(conn);

PrincipalInfo user = admin.getUserByName(user_name);
PrincipalInfo reviewer = admin.getUserByName(reviewer_name);

user.addReviewer(reviewer.getPrincipalID());

System.out.println("Added user \"" + reviewer_name + "\" as a reviewer for user \"" + user_name + "\".");

admin.detachConnection();
}
catch (Exception e) {
e.printStackTrace();
}
}

public static void principal_RemoveReviewer(TEAgentConnection conn, String user_name, String reviewer_name) {
try {
Administration admin = new Administration();
admin.attachConnection(conn);

PrincipalInfo user = admin.getUserByName(user_name);
PrincipalInfo reviewer = admin.getUserByName(reviewer_name);

user.removeReviewer(reviewer.getPrincipalID());

System.out.println("Removed user \"" + reviewer_name + "\" as a reviewer for user \"" + user_name + "\".");

admin.detachConnection();
}
catch (Exception e) {
e.printStackTrace();
}
}

}