Loading cadcAccessControl-Admin/build.xml +0 −12 Original line number Original line Diff line number Diff line Loading @@ -158,16 +158,4 @@ <property name="testingJars" value="${junit}:${asm}:${cglib}:${easymock}:${objenesis}:{unboundid}:${cadcLog}"/> <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> </project> cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/AbstractCommand.java +14 −15 Original line number Original line Diff line number Diff line Loading @@ -71,7 +71,6 @@ package ca.nrc.cadc.ac.admin; import java.io.PrintStream; import java.io.PrintStream; import java.security.AccessControlException; import java.security.AccessControlException; import java.security.Principal; import java.security.PrivilegedAction; import java.security.PrivilegedAction; import ca.nrc.cadc.ac.server.UserPersistence; import ca.nrc.cadc.ac.server.UserPersistence; Loading @@ -88,7 +87,7 @@ public abstract class AbstractCommand implements PrivilegedAction<Object> protected PrintStream systemOut = System.out; protected PrintStream systemOut = System.out; protected PrintStream systemErr = System.err; protected PrintStream systemErr = System.err; private UserPersistence<Principal> userPersistence; private UserPersistence userPersistence; protected abstract void doRun() protected abstract void doRun() Loading Loading @@ -135,12 +134,12 @@ public abstract class AbstractCommand implements PrivilegedAction<Object> } } protected void setUserPersistence( protected void setUserPersistence( final UserPersistence<Principal> userPersistence) final UserPersistence userPersistence) { { this.userPersistence = userPersistence; this.userPersistence = userPersistence; } } public UserPersistence<Principal> getUserPersistence() public UserPersistence getUserPersistence() { { return userPersistence; return userPersistence; } } Loading cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/AbstractListUsers.java +29 −13 Original line number Original line Diff line number Diff line Loading @@ -70,14 +70,15 @@ package ca.nrc.cadc.ac.admin; package ca.nrc.cadc.ac.admin; import java.security.AccessControlException; import java.security.AccessControlException; import java.security.Principal; import java.util.Collection; import java.util.Collection; import java.util.Set; import java.util.Set; import javax.security.auth.x500.X500Principal; import org.apache.log4j.Logger; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.PersonalDetails; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.auth.HttpPrincipal; import ca.nrc.cadc.net.TransientException; 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); private static final Logger log = Logger.getLogger(AbstractListUsers.class); protected abstract Collection<User<Principal>> getUsers() protected abstract Collection<User> getUsers() throws AccessControlException, TransientException; throws AccessControlException, TransientException; protected void doRun() 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)); this.systemOut.println(getUserString(user)); } } Loading @@ -106,21 +107,36 @@ public abstract class AbstractListUsers extends AbstractCommand private String getUserString(User user) 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 (user.personalDetails != null) if (detailSet.size() > 0) { { sb.append(" ["); sb.append(" ["); PersonalDetails details = detailSet.iterator().next(); sb.append(user.personalDetails.getFirstName()); sb.append(details.getFirstName()); sb.append(" "); sb.append(" "); sb.append(details.getLastName()); sb.append(user.personalDetails.getLastName()); sb.append("]"); sb.append("]"); if (details.institute != null) if (user.personalDetails.institute != null) { { sb.append(" ["); sb.append(" ["); sb.append(details.institute); sb.append(user.personalDetails.institute); sb.append("]"); sb.append("]"); } } } } Loading cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/AbstractUserCommand.java +14 −16 Original line number Original line Diff line number Diff line Loading @@ -75,7 +75,6 @@ import java.util.Set; import org.apache.log4j.Logger; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.PersonalDetails; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.auth.HttpPrincipal; import ca.nrc.cadc.auth.HttpPrincipal; Loading Loading @@ -121,7 +120,7 @@ public abstract class AbstractUserCommand extends AbstractCommand } } } } protected void printUser(final User<Principal> user) protected void printUser(final User user) { { if (user != null) if (user != null) { { Loading @@ -136,10 +135,9 @@ public abstract class AbstractUserCommand extends AbstractCommand // print user's personal details // print user's personal details this.systemOut.println(); this.systemOut.println(); PersonalDetails personalDetails = user.getUserDetail(PersonalDetails.class); if (user.personalDetails != null) if (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 Original line Diff line number Diff line Loading @@ -70,11 +70,9 @@ package ca.nrc.cadc.ac.admin; package ca.nrc.cadc.ac.admin; import java.security.AccessControlException; import java.security.AccessControlException; import java.security.Principal; import java.util.Date; import java.util.Date; import java.util.IllegalFormatException; import java.util.IllegalFormatException; import java.util.Properties; import java.util.Properties; import java.util.Set; import javax.mail.Address; import javax.mail.Address; import javax.mail.Message; import javax.mail.Message; Loading @@ -86,7 +84,6 @@ import javax.security.auth.x500.X500Principal; import org.apache.log4j.Logger; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.PersonalDetails; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.auth.HttpPrincipal; import ca.nrc.cadc.auth.HttpPrincipal; Loading Loading @@ -141,16 +138,17 @@ public class ApproveUser extends AbstractUserCommand try try { { this.getUserPersistence().approvePendingUser(this.getPrincipal()); this.getUserPersistence().approveUserRequest(this.getPrincipal()); this.systemOut.println("User " + this.getPrincipal().getName() + " was approved successfully."); this.systemOut.println("User " + this.getPrincipal().getName() + " was approved successfully."); approved = true; approved = true; } } catch (UserNotFoundException e) 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 try { { user = this.getUserPersistence().getUser(this.getPrincipal()); 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 try { { Loading @@ -201,12 +199,10 @@ public class ApproveUser extends AbstractUserCommand return; return; } } Set<PersonalDetails> pds = user.getDetails(PersonalDetails.class); String recipient = null; String recipient = null; if (pds != null && !pds.isEmpty()) if (user.personalDetails != null) { { PersonalDetails pd = pds.iterator().next(); recipient = user.personalDetails.email; recipient = pd.email; } } if (recipient == null) if (recipient == null) { { Loading Loading
cadcAccessControl-Admin/build.xml +0 −12 Original line number Original line Diff line number Diff line Loading @@ -158,16 +158,4 @@ <property name="testingJars" value="${junit}:${asm}:${cglib}:${easymock}:${objenesis}:{unboundid}:${cadcLog}"/> <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> </project>
cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/AbstractCommand.java +14 −15 Original line number Original line Diff line number Diff line Loading @@ -71,7 +71,6 @@ package ca.nrc.cadc.ac.admin; import java.io.PrintStream; import java.io.PrintStream; import java.security.AccessControlException; import java.security.AccessControlException; import java.security.Principal; import java.security.PrivilegedAction; import java.security.PrivilegedAction; import ca.nrc.cadc.ac.server.UserPersistence; import ca.nrc.cadc.ac.server.UserPersistence; Loading @@ -88,7 +87,7 @@ public abstract class AbstractCommand implements PrivilegedAction<Object> protected PrintStream systemOut = System.out; protected PrintStream systemOut = System.out; protected PrintStream systemErr = System.err; protected PrintStream systemErr = System.err; private UserPersistence<Principal> userPersistence; private UserPersistence userPersistence; protected abstract void doRun() protected abstract void doRun() Loading Loading @@ -135,12 +134,12 @@ public abstract class AbstractCommand implements PrivilegedAction<Object> } } protected void setUserPersistence( protected void setUserPersistence( final UserPersistence<Principal> userPersistence) final UserPersistence userPersistence) { { this.userPersistence = userPersistence; this.userPersistence = userPersistence; } } public UserPersistence<Principal> getUserPersistence() public UserPersistence getUserPersistence() { { return userPersistence; return userPersistence; } } Loading
cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/AbstractListUsers.java +29 −13 Original line number Original line Diff line number Diff line Loading @@ -70,14 +70,15 @@ package ca.nrc.cadc.ac.admin; package ca.nrc.cadc.ac.admin; import java.security.AccessControlException; import java.security.AccessControlException; import java.security.Principal; import java.util.Collection; import java.util.Collection; import java.util.Set; import java.util.Set; import javax.security.auth.x500.X500Principal; import org.apache.log4j.Logger; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.PersonalDetails; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.auth.HttpPrincipal; import ca.nrc.cadc.net.TransientException; 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); private static final Logger log = Logger.getLogger(AbstractListUsers.class); protected abstract Collection<User<Principal>> getUsers() protected abstract Collection<User> getUsers() throws AccessControlException, TransientException; throws AccessControlException, TransientException; protected void doRun() 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)); this.systemOut.println(getUserString(user)); } } Loading @@ -106,21 +107,36 @@ public abstract class AbstractListUsers extends AbstractCommand private String getUserString(User user) 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 (user.personalDetails != null) if (detailSet.size() > 0) { { sb.append(" ["); sb.append(" ["); PersonalDetails details = detailSet.iterator().next(); sb.append(user.personalDetails.getFirstName()); sb.append(details.getFirstName()); sb.append(" "); sb.append(" "); sb.append(details.getLastName()); sb.append(user.personalDetails.getLastName()); sb.append("]"); sb.append("]"); if (details.institute != null) if (user.personalDetails.institute != null) { { sb.append(" ["); sb.append(" ["); sb.append(details.institute); sb.append(user.personalDetails.institute); sb.append("]"); sb.append("]"); } } } } Loading
cadcAccessControl-Admin/src/ca/nrc/cadc/ac/admin/AbstractUserCommand.java +14 −16 Original line number Original line Diff line number Diff line Loading @@ -75,7 +75,6 @@ import java.util.Set; import org.apache.log4j.Logger; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.PersonalDetails; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.auth.HttpPrincipal; import ca.nrc.cadc.auth.HttpPrincipal; Loading Loading @@ -121,7 +120,7 @@ public abstract class AbstractUserCommand extends AbstractCommand } } } } protected void printUser(final User<Principal> user) protected void printUser(final User user) { { if (user != null) if (user != null) { { Loading @@ -136,10 +135,9 @@ public abstract class AbstractUserCommand extends AbstractCommand // print user's personal details // print user's personal details this.systemOut.println(); this.systemOut.println(); PersonalDetails personalDetails = user.getUserDetail(PersonalDetails.class); if (user.personalDetails != null) if (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 Original line Diff line number Diff line Loading @@ -70,11 +70,9 @@ package ca.nrc.cadc.ac.admin; package ca.nrc.cadc.ac.admin; import java.security.AccessControlException; import java.security.AccessControlException; import java.security.Principal; import java.util.Date; import java.util.Date; import java.util.IllegalFormatException; import java.util.IllegalFormatException; import java.util.Properties; import java.util.Properties; import java.util.Set; import javax.mail.Address; import javax.mail.Address; import javax.mail.Message; import javax.mail.Message; Loading @@ -86,7 +84,6 @@ import javax.security.auth.x500.X500Principal; import org.apache.log4j.Logger; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.PersonalDetails; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.auth.HttpPrincipal; import ca.nrc.cadc.auth.HttpPrincipal; Loading Loading @@ -141,16 +138,17 @@ public class ApproveUser extends AbstractUserCommand try try { { this.getUserPersistence().approvePendingUser(this.getPrincipal()); this.getUserPersistence().approveUserRequest(this.getPrincipal()); this.systemOut.println("User " + this.getPrincipal().getName() + " was approved successfully."); this.systemOut.println("User " + this.getPrincipal().getName() + " was approved successfully."); approved = true; approved = true; } } catch (UserNotFoundException e) 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 try { { user = this.getUserPersistence().getUser(this.getPrincipal()); 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 try { { Loading @@ -201,12 +199,10 @@ public class ApproveUser extends AbstractUserCommand return; return; } } Set<PersonalDetails> pds = user.getDetails(PersonalDetails.class); String recipient = null; String recipient = null; if (pds != null && !pds.isEmpty()) if (user.personalDetails != null) { { PersonalDetails pd = pds.iterator().next(); recipient = user.personalDetails.email; recipient = pd.email; } } if (recipient == null) if (recipient == null) { { Loading