Commit 1ef4184d authored by Jeff Burke's avatar Jeff Burke
Browse files

ac2 rework to repackage the XML and JSON reader and writers

parent dc0d82ef
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -148,7 +148,7 @@
        <pathelement path="${jars}:${testingJars}"/>
      </classpath>
      <sysproperty key="ca.nrc.cadc.util.PropertiesReader.dir" value="test"/>
      <test name="ca.nrc.cadc.ac.server.web.users.GetUserActionTest" />
      <test name="ca.nrc.cadc.ac.server.web.users.UserActionFactoryTest" />
      <formatter type="plain" usefile="false" />
    </junit>
  </target>
+8 −6
Original line number Diff line number Diff line
@@ -68,13 +68,15 @@
 */
package ca.nrc.cadc.ac.server;

import java.security.AccessControlException;
import java.security.Principal;
import java.util.Map;

import ca.nrc.cadc.ac.*;
import ca.nrc.cadc.ac.User;
import ca.nrc.cadc.ac.UserAlreadyExistsException;
import ca.nrc.cadc.ac.UserNotFoundException;
import ca.nrc.cadc.ac.UserRequest;
import ca.nrc.cadc.net.TransientException;

import java.security.AccessControlException;
import java.security.Principal;
import java.util.Collection;

public interface UserPersistence<T extends Principal>
{
@@ -85,7 +87,7 @@ public interface UserPersistence<T extends Principal>
     * @throws TransientException If an temporary, unexpected problem occurred.
     * @throws AccessControlException If the operation is not permitted.
     */
    Map<String, PersonalDetails> getUsers()
    Collection<User<Principal>> getUsers()
            throws TransientException, AccessControlException;
    
    /**
+10 −13
Original line number Diff line number Diff line
@@ -150,8 +150,7 @@ public class LdapUserDAO<T extends Principal> extends LdapDAO
    private String[] userAttribs = new String[]
            {
                    LDAP_FIRST_NAME, LDAP_LAST_NAME, LDAP_ADDRESS, LDAP_CITY,
                    LDAP_COUNTRY,
                    LDAP_EMAIL, LDAP_INSTITUTE
                    LDAP_COUNTRY, LDAP_EMAIL, LDAP_INSTITUTE
            };
    private String[] memberAttribs = new String[]
            {
@@ -539,11 +538,10 @@ public class LdapUserDAO<T extends Principal> extends LdapDAO
     * @return A map of string keys to string values.
     * @throws TransientException If an temporary, unexpected problem occurred.
     */
    public Map<String, PersonalDetails> getUsers()
    public Collection<User<Principal>> getUsers()
            throws TransientException
    {
        final Map<String, PersonalDetails> users =
                new HashMap<String, PersonalDetails>();
        final Collection<User<Principal>> users = new ArrayList<User<Principal>>();

        try
        {
@@ -566,16 +564,15 @@ public class LdapUserDAO<T extends Principal> extends LdapDAO
                {
                    if (!next.hasAttribute(LDAP_NSACCOUNTLOCK))
                    {
                        final String trimmedFirstName =
                        final String firstName =
                                next.getAttributeValue(LDAP_FIRST_NAME).trim();
                        final String trimmedLastName =
                        final String lastName =
                                next.getAttributeValue(LDAP_LAST_NAME).trim();
                        final String trimmedUID =
                                next.getAttributeValue(LDAP_UID).trim();

                        users.put(trimmedUID,
                                  new PersonalDetails(trimmedFirstName,
                                                      trimmedLastName));
                        final String uid =  next.getAttributeValue(LDAP_UID).trim();
                        User<Principal> user = new User<Principal>(new HttpPrincipal(uid));
                        PersonalDetails pd = new PersonalDetails(firstName, lastName);
                        user.details.add(pd);
                        users.add(user);
                    }
                }
            }
+3 −4
Original line number Diff line number Diff line
@@ -75,6 +75,7 @@ import com.unboundid.ldap.sdk.DN;
import java.security.AccessControlException;
import java.security.Principal;
import java.util.Collection;
import java.util.List;
import java.util.Map;

import org.apache.log4j.Logger;
@@ -97,7 +98,7 @@ public class LdapUserPersistence<T extends Principal>
        }
    }

    public Map<String, PersonalDetails> getUsers()
    public Collection<User<Principal>> getUsers()
        throws TransientException, AccessControlException
    {
        LdapUserDAO<T> userDAO = null;
@@ -125,7 +126,6 @@ public class LdapUserPersistence<T extends Principal>
     * @throws TransientException If an temporary, unexpected problem occurred.
     * @throws AccessControlException If the operation is not permitted.
     */
    @Override
    public User<T> addUser(UserRequest<T> user)
        throws TransientException, AccessControlException,
               UserAlreadyExistsException
@@ -183,7 +183,6 @@ public class LdapUserPersistence<T extends Principal>
    * @throws TransientException     If an temporary, unexpected problem occurred.
    * @throws AccessControlException If the operation is not permitted.
    */
    @Override
    public User<T> getPendingUser(final T userID) throws UserNotFoundException,
                                                         TransientException,
                                                         AccessControlException
+11 −15
Original line number Diff line number Diff line
@@ -68,19 +68,6 @@
 */
package ca.nrc.cadc.ac.server.web.groups;

import java.io.IOException;
import java.security.AccessControlException;
import java.security.Principal;
import java.security.PrivilegedActionException;
import java.security.PrivilegedExceptionAction;
import java.util.List;

import javax.security.auth.Subject;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.log4j.Logger;

import ca.nrc.cadc.ac.GroupAlreadyExistsException;
import ca.nrc.cadc.ac.GroupNotFoundException;
import ca.nrc.cadc.ac.MemberAlreadyExistsException;
@@ -91,6 +78,15 @@ import ca.nrc.cadc.ac.server.PluginFactory;
import ca.nrc.cadc.ac.server.UserPersistence;
import ca.nrc.cadc.ac.server.web.SyncOutput;
import ca.nrc.cadc.net.TransientException;
import org.apache.log4j.Logger;

import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.security.AccessControlException;
import java.security.Principal;
import java.security.PrivilegedActionException;
import java.security.PrivilegedExceptionAction;
import java.util.List;

public abstract class AbstractGroupAction implements PrivilegedExceptionAction<Object>
{
@@ -208,6 +204,7 @@ public abstract class AbstractGroupAction implements PrivilegedExceptionAction<O
    private void sendError(int responseCode, String message)
    {
        syncOut.setHeader("Content-Type", "text/plain");
        syncOut.setCode(responseCode);
        if (message != null)
        {
            try
@@ -219,7 +216,6 @@ public abstract class AbstractGroupAction implements PrivilegedExceptionAction<O
                log.warn("Could not write error message to output stream");
            }
        }
        syncOut.setCode(responseCode);
    }

    <T extends Principal> GroupPersistence<T> getGroupPersistence()
Loading