Loading cadcAccessControl-Admin/build.xml +0 −12 Original line number Diff line number Diff line Loading @@ -158,16 +158,4 @@ <property name="testingJars" value="${junit}:${asm}:${cglib}:${easymock}:${objenesis}:{unboundid}:${cadcLog}"/> <target name="int-test" depends="build,compile-test,setup-test"> <echo message="Running test suite..."/> <junit printsummary="yes" haltonfailure="yes" fork="yes"> <classpath> <pathelement path="${build}/class"/> <pathelement path="${build}/test/class"/> <pathelement path="${jars}:${testingJars}"/> </classpath> <test name="ca.nrc.cadc.ac.admin.integration.UserAdminIntTest"/> <formatter type="plain" usefile="false"/> </junit> </target> </project> cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/AbstractCommand.java +14 −15 Original line number Diff line number Diff line Loading @@ -71,7 +71,6 @@ package ca.nrc.cadc.ac.admin; import java.io.PrintStream; import java.security.AccessControlException; import java.security.Principal; import java.security.PrivilegedAction; import ca.nrc.cadc.ac.server.UserPersistence; Loading @@ -88,12 +87,12 @@ public abstract class AbstractCommand implements PrivilegedAction<Object> protected PrintStream systemOut = System.out; protected PrintStream systemErr = System.err; private UserPersistence<Principal> userPersistence; private UserPersistence userPersistence; protected abstract void doRun() throws AccessControlException, TransientException; /** * Set the system out. * @param printStream The stream to write System.out to . Loading @@ -102,7 +101,7 @@ public abstract class AbstractCommand implements PrivilegedAction<Object> { this.systemOut = printStream; } /** * Set the system err. * @param printStream The stream to write System.err to. Loading @@ -111,36 +110,36 @@ public abstract class AbstractCommand implements PrivilegedAction<Object> { this.systemErr = printStream; } @Override public Object run() public Object run() { try try { this.doRun(); } catch (AccessControlException e) } catch (AccessControlException e) { this.systemErr.println("ERROR: " + e.getMessage()); e.printStackTrace(systemErr); } catch (TransientException e) } catch (TransientException e) { String message = "Internal Transient Error: " + e.getMessage(); this.systemErr.println("ERROR: " + message); e.printStackTrace(systemErr); } return null; } protected void setUserPersistence( final UserPersistence<Principal> userPersistence) final UserPersistence userPersistence) { this.userPersistence = userPersistence; } public UserPersistence<Principal> getUserPersistence() public UserPersistence getUserPersistence() { return userPersistence; } Loading cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/AbstractListUsers.java +29 −13 Original line number Diff line number Diff line Loading @@ -70,14 +70,15 @@ package ca.nrc.cadc.ac.admin; import java.security.AccessControlException; import java.security.Principal; import java.util.Collection; import java.util.Set; import javax.security.auth.x500.X500Principal; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.PersonalDetails; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.auth.HttpPrincipal; import ca.nrc.cadc.net.TransientException; /** Loading @@ -89,14 +90,14 @@ public abstract class AbstractListUsers extends AbstractCommand { private static final Logger log = Logger.getLogger(AbstractListUsers.class); protected abstract Collection<User<Principal>> getUsers() protected abstract Collection<User> getUsers() throws AccessControlException, TransientException; protected void doRun() throws AccessControlException, TransientException { Collection<User<Principal>> users = this.getUsers(); Collection<User> users = this.getUsers(); for (User<Principal> user : users) for (User user : users) { this.systemOut.println(getUserString(user)); } Loading @@ -106,21 +107,36 @@ public abstract class AbstractListUsers extends AbstractCommand private String getUserString(User user) { StringBuilder sb = new StringBuilder(user.getUserID().getName()); StringBuilder sb = new StringBuilder(); HttpPrincipal username = user.getHttpPrincipal(); if (username != null) { sb.append(username.getName()); } else { Set<X500Principal> x500Principals = user.getIdentities(X500Principal.class); if (!x500Principals.isEmpty()) { sb.append(x500Principals.iterator().next().getName()); } else { sb.append("Internal ID: " + user.getID().getURI()); } } Set<PersonalDetails> detailSet = user.getDetails(PersonalDetails.class); if (detailSet.size() > 0) if (user.personalDetails != null) { sb.append(" ["); PersonalDetails details = detailSet.iterator().next(); sb.append(details.getFirstName()); sb.append(user.personalDetails.getFirstName()); sb.append(" "); sb.append(details.getLastName()); sb.append(user.personalDetails.getLastName()); sb.append("]"); if (details.institute != null) if (user.personalDetails.institute != null) { sb.append(" ["); sb.append(details.institute); sb.append(user.personalDetails.institute); sb.append("]"); } } Loading cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/AbstractUserCommand.java +14 −16 Original line number Diff line number Diff line Loading @@ -75,7 +75,6 @@ import java.util.Set; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.PersonalDetails; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.auth.HttpPrincipal; Loading @@ -86,12 +85,12 @@ import ca.nrc.cadc.net.TransientException; * @author yeunga * */ public abstract class AbstractUserCommand extends AbstractCommand public abstract class AbstractUserCommand extends AbstractCommand { private static final Logger log = Logger.getLogger(AbstractUserCommand.class); private HttpPrincipal principal; protected abstract void execute() protected abstract void execute() throws UserNotFoundException, AccessControlException, TransientException; /** Loading @@ -102,26 +101,26 @@ public abstract class AbstractUserCommand extends AbstractCommand { this.principal = new HttpPrincipal(userID); } protected Principal getPrincipal() { return this.principal; } protected void doRun() throws AccessControlException, TransientException { try try { this.execute(); } catch (UserNotFoundException e1) } catch (UserNotFoundException e1) { String msg = "User " + this.getPrincipal().getName() + " was not found."; this.systemOut.println(msg); } } } protected void printUser(final User<Principal> user) protected void printUser(final User user) { if (user != null) { Loading @@ -133,13 +132,12 @@ public abstract class AbstractUserCommand extends AbstractCommand { this.systemOut.println(p.toString()); } // print user's personal details this.systemOut.println(); PersonalDetails personalDetails = user.getUserDetail(PersonalDetails.class); if (personalDetails != null) if (user.personalDetails != null) { this.systemOut.println(personalDetails.toStringFormatted()); this.systemOut.println(user.personalDetails.toStringFormatted()); } } } Loading cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/ApproveUser.java +7 −11 Original line number Diff line number Diff line Loading @@ -70,11 +70,9 @@ package ca.nrc.cadc.ac.admin; import java.security.AccessControlException; import java.security.Principal; import java.util.Date; import java.util.IllegalFormatException; import java.util.Properties; import java.util.Set; import javax.mail.Address; import javax.mail.Message; Loading @@ -86,7 +84,6 @@ import javax.security.auth.x500.X500Principal; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.PersonalDetails; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.auth.HttpPrincipal; Loading Loading @@ -141,16 +138,17 @@ public class ApproveUser extends AbstractUserCommand try { this.getUserPersistence().approvePendingUser(this.getPrincipal()); this.getUserPersistence().approveUserRequest(this.getPrincipal()); this.systemOut.println("User " + this.getPrincipal().getName() + " was approved successfully."); approved = true; } catch (UserNotFoundException e) { this.systemOut.println("Could not find pending user " + this.getPrincipal()); this.systemOut.println("Could not find userRequest " + this.getPrincipal()); return; } User<Principal> user = null; User user = null; try { user = this.getUserPersistence().getUser(this.getPrincipal()); Loading @@ -175,7 +173,7 @@ public class ApproveUser extends AbstractUserCommand } private void emailUser(User<Principal> user) private void emailUser(User user) { try { Loading @@ -201,12 +199,10 @@ public class ApproveUser extends AbstractUserCommand return; } Set<PersonalDetails> pds = user.getDetails(PersonalDetails.class); String recipient = null; if (pds != null && !pds.isEmpty()) if (user.personalDetails != null) { PersonalDetails pd = pds.iterator().next(); recipient = pd.email; recipient = user.personalDetails.email; } if (recipient == null) { Loading Loading
cadcAccessControl-Admin/build.xml +0 −12 Original line number Diff line number Diff line Loading @@ -158,16 +158,4 @@ <property name="testingJars" value="${junit}:${asm}:${cglib}:${easymock}:${objenesis}:{unboundid}:${cadcLog}"/> <target name="int-test" depends="build,compile-test,setup-test"> <echo message="Running test suite..."/> <junit printsummary="yes" haltonfailure="yes" fork="yes"> <classpath> <pathelement path="${build}/class"/> <pathelement path="${build}/test/class"/> <pathelement path="${jars}:${testingJars}"/> </classpath> <test name="ca.nrc.cadc.ac.admin.integration.UserAdminIntTest"/> <formatter type="plain" usefile="false"/> </junit> </target> </project>
cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/AbstractCommand.java +14 −15 Original line number Diff line number Diff line Loading @@ -71,7 +71,6 @@ package ca.nrc.cadc.ac.admin; import java.io.PrintStream; import java.security.AccessControlException; import java.security.Principal; import java.security.PrivilegedAction; import ca.nrc.cadc.ac.server.UserPersistence; Loading @@ -88,12 +87,12 @@ public abstract class AbstractCommand implements PrivilegedAction<Object> protected PrintStream systemOut = System.out; protected PrintStream systemErr = System.err; private UserPersistence<Principal> userPersistence; private UserPersistence userPersistence; protected abstract void doRun() throws AccessControlException, TransientException; /** * Set the system out. * @param printStream The stream to write System.out to . Loading @@ -102,7 +101,7 @@ public abstract class AbstractCommand implements PrivilegedAction<Object> { this.systemOut = printStream; } /** * Set the system err. * @param printStream The stream to write System.err to. Loading @@ -111,36 +110,36 @@ public abstract class AbstractCommand implements PrivilegedAction<Object> { this.systemErr = printStream; } @Override public Object run() public Object run() { try try { this.doRun(); } catch (AccessControlException e) } catch (AccessControlException e) { this.systemErr.println("ERROR: " + e.getMessage()); e.printStackTrace(systemErr); } catch (TransientException e) } catch (TransientException e) { String message = "Internal Transient Error: " + e.getMessage(); this.systemErr.println("ERROR: " + message); e.printStackTrace(systemErr); } return null; } protected void setUserPersistence( final UserPersistence<Principal> userPersistence) final UserPersistence userPersistence) { this.userPersistence = userPersistence; } public UserPersistence<Principal> getUserPersistence() public UserPersistence getUserPersistence() { return userPersistence; } Loading
cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/AbstractListUsers.java +29 −13 Original line number Diff line number Diff line Loading @@ -70,14 +70,15 @@ package ca.nrc.cadc.ac.admin; import java.security.AccessControlException; import java.security.Principal; import java.util.Collection; import java.util.Set; import javax.security.auth.x500.X500Principal; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.PersonalDetails; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.auth.HttpPrincipal; import ca.nrc.cadc.net.TransientException; /** Loading @@ -89,14 +90,14 @@ public abstract class AbstractListUsers extends AbstractCommand { private static final Logger log = Logger.getLogger(AbstractListUsers.class); protected abstract Collection<User<Principal>> getUsers() protected abstract Collection<User> getUsers() throws AccessControlException, TransientException; protected void doRun() throws AccessControlException, TransientException { Collection<User<Principal>> users = this.getUsers(); Collection<User> users = this.getUsers(); for (User<Principal> user : users) for (User user : users) { this.systemOut.println(getUserString(user)); } Loading @@ -106,21 +107,36 @@ public abstract class AbstractListUsers extends AbstractCommand private String getUserString(User user) { StringBuilder sb = new StringBuilder(user.getUserID().getName()); StringBuilder sb = new StringBuilder(); HttpPrincipal username = user.getHttpPrincipal(); if (username != null) { sb.append(username.getName()); } else { Set<X500Principal> x500Principals = user.getIdentities(X500Principal.class); if (!x500Principals.isEmpty()) { sb.append(x500Principals.iterator().next().getName()); } else { sb.append("Internal ID: " + user.getID().getURI()); } } Set<PersonalDetails> detailSet = user.getDetails(PersonalDetails.class); if (detailSet.size() > 0) if (user.personalDetails != null) { sb.append(" ["); PersonalDetails details = detailSet.iterator().next(); sb.append(details.getFirstName()); sb.append(user.personalDetails.getFirstName()); sb.append(" "); sb.append(details.getLastName()); sb.append(user.personalDetails.getLastName()); sb.append("]"); if (details.institute != null) if (user.personalDetails.institute != null) { sb.append(" ["); sb.append(details.institute); sb.append(user.personalDetails.institute); sb.append("]"); } } Loading
cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/AbstractUserCommand.java +14 −16 Original line number Diff line number Diff line Loading @@ -75,7 +75,6 @@ import java.util.Set; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.PersonalDetails; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.auth.HttpPrincipal; Loading @@ -86,12 +85,12 @@ import ca.nrc.cadc.net.TransientException; * @author yeunga * */ public abstract class AbstractUserCommand extends AbstractCommand public abstract class AbstractUserCommand extends AbstractCommand { private static final Logger log = Logger.getLogger(AbstractUserCommand.class); private HttpPrincipal principal; protected abstract void execute() protected abstract void execute() throws UserNotFoundException, AccessControlException, TransientException; /** Loading @@ -102,26 +101,26 @@ public abstract class AbstractUserCommand extends AbstractCommand { this.principal = new HttpPrincipal(userID); } protected Principal getPrincipal() { return this.principal; } protected void doRun() throws AccessControlException, TransientException { try try { this.execute(); } catch (UserNotFoundException e1) } catch (UserNotFoundException e1) { String msg = "User " + this.getPrincipal().getName() + " was not found."; this.systemOut.println(msg); } } } protected void printUser(final User<Principal> user) protected void printUser(final User user) { if (user != null) { Loading @@ -133,13 +132,12 @@ public abstract class AbstractUserCommand extends AbstractCommand { this.systemOut.println(p.toString()); } // print user's personal details this.systemOut.println(); PersonalDetails personalDetails = user.getUserDetail(PersonalDetails.class); if (personalDetails != null) if (user.personalDetails != null) { this.systemOut.println(personalDetails.toStringFormatted()); this.systemOut.println(user.personalDetails.toStringFormatted()); } } } Loading
cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/ApproveUser.java +7 −11 Original line number Diff line number Diff line Loading @@ -70,11 +70,9 @@ package ca.nrc.cadc.ac.admin; import java.security.AccessControlException; import java.security.Principal; import java.util.Date; import java.util.IllegalFormatException; import java.util.Properties; import java.util.Set; import javax.mail.Address; import javax.mail.Message; Loading @@ -86,7 +84,6 @@ import javax.security.auth.x500.X500Principal; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.PersonalDetails; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.auth.HttpPrincipal; Loading Loading @@ -141,16 +138,17 @@ public class ApproveUser extends AbstractUserCommand try { this.getUserPersistence().approvePendingUser(this.getPrincipal()); this.getUserPersistence().approveUserRequest(this.getPrincipal()); this.systemOut.println("User " + this.getPrincipal().getName() + " was approved successfully."); approved = true; } catch (UserNotFoundException e) { this.systemOut.println("Could not find pending user " + this.getPrincipal()); this.systemOut.println("Could not find userRequest " + this.getPrincipal()); return; } User<Principal> user = null; User user = null; try { user = this.getUserPersistence().getUser(this.getPrincipal()); Loading @@ -175,7 +173,7 @@ public class ApproveUser extends AbstractUserCommand } private void emailUser(User<Principal> user) private void emailUser(User user) { try { Loading @@ -201,12 +199,10 @@ public class ApproveUser extends AbstractUserCommand return; } Set<PersonalDetails> pds = user.getDetails(PersonalDetails.class); String recipient = null; if (pds != null && !pds.isEmpty()) if (user.personalDetails != null) { PersonalDetails pd = pds.iterator().next(); recipient = pd.email; recipient = user.personalDetails.email; } if (recipient == null) { Loading