summaryrefslogtreecommitdiffstats
path: root/base/server/cms/src
diff options
context:
space:
mode:
Diffstat (limited to 'base/server/cms/src')
-rw-r--r--base/server/cms/src/org/dogtagpki/server/rest/AccountService.java46
1 files changed, 17 insertions, 29 deletions
diff --git a/base/server/cms/src/org/dogtagpki/server/rest/AccountService.java b/base/server/cms/src/org/dogtagpki/server/rest/AccountService.java
index 827e99e07..673db45b6 100644
--- a/base/server/cms/src/org/dogtagpki/server/rest/AccountService.java
+++ b/base/server/cms/src/org/dogtagpki/server/rest/AccountService.java
@@ -21,13 +21,8 @@ package org.dogtagpki.server.rest;
import java.security.Principal;
import java.util.Arrays;
-import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.Request;
import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
import org.apache.catalina.realm.GenericPrincipal;
import org.apache.commons.lang.StringUtils;
@@ -43,47 +38,40 @@ import com.netscape.cms.servlet.base.PKIService;
*/
public class AccountService extends PKIService implements AccountResource {
- @Context
- private UriInfo uriInfo;
-
- @Context
- private HttpHeaders headers;
-
- @Context
- private Request request;
-
- @Context
- private HttpServletRequest servletRequest;
-
- @Override
- public Response login() {
- HttpSession session = servletRequest.getSession();
- System.out.println("Creating session "+session.getId());
-
+ protected AccountInfo createAccountInfo() {
Principal principal = servletRequest.getUserPrincipal();
- System.out.println("Principal: "+principal);
+ System.out.println("Principal: " + principal);
- AccountInfo response = new AccountInfo();
+ AccountInfo accountInfo = new AccountInfo();
String name = principal.getName();
- response.setID(name);
+ accountInfo.setID(name);
if (principal instanceof PKIPrincipal) {
PKIPrincipal pkiPrincipal = (PKIPrincipal)principal;
IUser user = pkiPrincipal.getUser();
String fullName = user.getFullName();
- if (!StringUtils.isEmpty(fullName)) response.setFullName(fullName);
+ if (!StringUtils.isEmpty(fullName)) accountInfo.setFullName(fullName);
String email = user.getEmail();
- if (!StringUtils.isEmpty(email)) response.setEmail(email);
+ if (!StringUtils.isEmpty(email)) accountInfo.setEmail(email);
}
if (principal instanceof GenericPrincipal) {
String[] roles = ((GenericPrincipal) principal).getRoles();
- response.setRoles(Arrays.asList(roles));
+ accountInfo.setRoles(Arrays.asList(roles));
}
- return createOKResponse(response);
+ return accountInfo;
+ }
+
+ @Override
+ public Response login() {
+ HttpSession session = servletRequest.getSession();
+ System.out.println("Creating session " + session.getId());
+
+ AccountInfo accountInfo = createAccountInfo();
+ return createOKResponse(accountInfo);
}
@Override