Skip to content
Snippets Groups Projects
Commit 74a05aa0 authored by Jeff Burke's avatar Jeff Burke
Browse files

Merge branch 's1734' of ssh://gimli2/srv/cadc/git/wopencadc into s1734

parents e2180720 db92fb92
No related branches found
No related tags found
No related merge requests found
......@@ -69,17 +69,18 @@
package ca.nrc.cadc.ac.server.web.users;
import java.io.InputStream;
import ca.nrc.cadc.ac.ReaderException;
import ca.nrc.cadc.ac.User;
import ca.nrc.cadc.ac.UserAlreadyExistsException;
import ca.nrc.cadc.ac.UserRequest;
import ca.nrc.cadc.ac.server.UserPersistence;
import ca.nrc.cadc.ac.xml.UserRequestReader;
import ca.nrc.cadc.ac.xml.UserWriter;
import javax.servlet.http.HttpServletResponse;
import java.security.Principal;
public class CreateUserAction<T extends Principal> extends UsersAction
public class CreateUserAction extends UsersAction
{
private final InputStream inputStream;
......@@ -92,11 +93,15 @@ public class CreateUserAction<T extends Principal> extends UsersAction
public Object run()
throws Exception
{
UserPersistence<Principal> userPersistence = getUserPersistence();
UserRequest<Principal> userRequest = readUserRequest(this.inputStream);
try
{
User<Principal> newUser = userPersistence.addUser(userRequest);
final UserPersistence<Principal> userPersistence =
getUserPersistence();
final UserRequest<Principal> userRequest =
readUserRequest(this.inputStream);
final User<Principal> newUser =
userPersistence.addUser(userRequest);
writeUser(newUser);
logUserInfo(newUser.getUserID().getName());
}
......@@ -105,6 +110,10 @@ public class CreateUserAction<T extends Principal> extends UsersAction
response.setStatus(HttpServletResponse.SC_CONFLICT);
response.getWriter().write("User already exists");
}
catch (ReaderException e)
{
throw new IllegalArgumentException("Invalid input", e);
}
return null;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment