[Major] refactored LoginResult - now return sessionId as well

- thus the previous sessionId was renamed to authToken, which is what it
is from certificate
- added sessionId to as we need it to handle session specific data
- also return firstname and lastname on LoginResult
This commit is contained in:
Robert von Burg 2015-03-17 21:40:08 +01:00
parent 172f384680
commit 296054cf55
3 changed files with 63 additions and 6 deletions

View File

@ -87,8 +87,11 @@ public class AuthenticationService {
PrivilegeHandler privilegeHandler = restfulStrolchComponent.getContainer().getPrivilegeHandler();
PrivilegeContext privilegeContext = privilegeHandler.getPrivilegeContext(certificate);
loginResult.setSessionId(certificate.getAuthToken());
loginResult.setSessionId(certificate.getSessionId());
loginResult.setAuthToken(certificate.getAuthToken());
loginResult.setUsername(certificate.getUsername());
loginResult.setFirstname(certificate.getFirstname());
loginResult.setLastname(certificate.getLastname());
loginResult.setLocale(certificate.getLocale());
loginResult.setParameters(certificate.getPropertyMap());
loginResult.setRoles(new ArrayList<>(certificate.getUserRoles()));

View File

@ -38,6 +38,15 @@ public class LoginResult {
@XmlAttribute(name = "username")
private String username;
@XmlAttribute(name = "firstname")
private String firstname;
@XmlAttribute(name = "lastname")
private String lastname;
@XmlAttribute(name = "authToken")
private String authToken;
@XmlAttribute(name = "sessionId")
private String sessionId;
@ -74,6 +83,51 @@ public class LoginResult {
this.username = username;
}
/**
* @return the firstname
*/
public String getFirstname() {
return this.firstname;
}
/**
* @param firstname
* the firstname to set
*/
public void setFirstname(String firstname) {
this.firstname = firstname;
}
/**
* @return the lastname
*/
public String getLastname() {
return this.lastname;
}
/**
* @param lastname
* the lastname to set
*/
public void setLastname(String lastname) {
this.lastname = lastname;
}
/**
* @return the sessionId
*/
public String getAuthToken() {
return this.authToken;
}
/**
* @param authToken
* the authToken to set
*/
public void setAuthToken(String authToken) {
this.authToken = authToken;
}
/**
* @return the sessionId
*/

View File

@ -58,11 +58,11 @@ public class AuthenticationTest extends AbstractRestfulTest {
LoginResult loginResult = result.readEntity(LoginResult.class);
assertNotNull(loginResult);
assertEquals("jill", loginResult.getUsername());
assertEquals(64, loginResult.getSessionId().length());
assertEquals(64, loginResult.getAuthToken().length());
assertNull(loginResult.getMsg());
// logout
result = target().path(ROOT_PATH + "/" + loginResult.getSessionId()).request(MediaType.APPLICATION_JSON)
result = target().path(ROOT_PATH + "/" + loginResult.getAuthToken()).request(MediaType.APPLICATION_JSON)
.delete();
assertEquals(Status.OK.getStatusCode(), result.getStatus());
assertNotNull(loginResult);
@ -86,12 +86,12 @@ public class AuthenticationTest extends AbstractRestfulTest {
LoginResult loginResult = result.readEntity(LoginResult.class);
assertNotNull(loginResult);
assertEquals("jill", loginResult.getUsername());
assertEquals(64, loginResult.getSessionId().length());
assertEquals(64, loginResult.getAuthToken().length());
assertEquals(Locale.ITALY.toString(), loginResult.getLocale());
assertNull(loginResult.getMsg());
// logout
result = target().path(ROOT_PATH + "/" + loginResult.getSessionId()).request(MediaType.APPLICATION_JSON)
result = target().path(ROOT_PATH + "/" + loginResult.getAuthToken()).request(MediaType.APPLICATION_JSON)
.delete();
assertEquals(Status.OK.getStatusCode(), result.getStatus());
assertNotNull(loginResult);
@ -128,7 +128,7 @@ public class AuthenticationTest extends AbstractRestfulTest {
LoginResult loginResult = result.readEntity(LoginResult.class);
assertNotNull(loginResult);
assertEquals("jill", loginResult.getUsername());
assertEquals(64, loginResult.getSessionId().length());
assertEquals(64, loginResult.getAuthToken().length());
assertNull(loginResult.getMsg());
// logout