Skip to content

Commit 0867dad

Browse files
Fix session
1 parent f41c5bc commit 0867dad

File tree

6 files changed

+20
-45
lines changed

6 files changed

+20
-45
lines changed

src/main/java/main/Session.java

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import main.model.dto.*;
1313
import main.model.email.TestRunEmails;
1414

15+
import javax.naming.AuthenticationException;
1516
import java.util.Collections;
1617
import java.util.List;
1718
import java.util.stream.Collectors;
@@ -22,9 +23,18 @@ public class Session {
2223
private String session;
2324
public ControllerFactory controllerFactory;
2425

25-
public Session(String sessionId) throws AqualityException {
26-
isSessionValid(sessionId);
27-
controllerFactory = new ControllerFactory(user);
26+
public Session(String sessionId) throws AqualityException, AuthenticationException {
27+
if(isSessionValid(sessionId)) {
28+
controllerFactory = new ControllerFactory(user);
29+
return;
30+
}
31+
throw new AuthenticationException("Your session is not valid!");
32+
}
33+
34+
public Session(UserDto user) throws AqualityException {
35+
this.user = user;
36+
setUserMembership();
37+
controllerFactory = new ControllerFactory(this.user);
2838
}
2939

3040
@Deprecated
@@ -81,11 +91,6 @@ public UserDto getCurrentUser() {
8191
return user;
8292
}
8393

84-
public void setCurrentUser(UserDto user) throws AqualityException {
85-
this.user = user;
86-
setUserMembership();
87-
}
88-
8994
private void setUserMembership() throws AqualityException {
9095
ProjectUserDto projectUserDto = new ProjectUserDto();
9196
projectUserDto.setUser_id(user.getId());

src/main/java/main/view/Administration/AuthorizationServlet.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,12 @@ public void doGet(HttpServletRequest req, HttpServletResponse resp) {
2525
String authString = req.getParameter("auth");
2626
boolean ldap = Boolean.parseBoolean(req.getParameter("ldap"));
2727
try {
28-
Session session = createSession(req);
2928
UserDto systemUser = new UserDto();
3029
systemUser.setId(1);
3130
systemUser.setAdmin(1);
32-
session.setCurrentUser(systemUser);
31+
Session session = new Session(systemUser);
3332
UserDto user = session.getAdministrationController().auth(authString, ldap);
34-
session.setCurrentUser(user);
33+
session = new Session(user);
3534
boolean isMember = session.getProjectPermissions().size() > 0;
3635
resp.addHeader("accountMember", String.valueOf(isMember));
3736
setJSONContentType(resp);

src/main/java/main/view/ApplicationSettings/GeneralSettingsServlet.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import main.Session;
44
import main.model.dto.AppSettingsDto;
5+
import main.model.dto.UserDto;
56
import main.view.BaseServlet;
67
import main.view.IGet;
78
import main.view.IPost;
@@ -17,7 +18,7 @@ public class GeneralSettingsServlet extends BaseServlet implements IGet, IPost {
1718
public void doGet(HttpServletRequest req, HttpServletResponse resp){
1819
setGetResponseHeaders(resp);
1920
try {
20-
Session session = createSession(req);
21+
Session session = new Session(new UserDto());
2122
setJSONContentType(resp);
2223
resp.getWriter().write(mapper.serialize(session.getSettingsController().getApp()));
2324
}catch (Exception e) {

src/main/java/main/view/ApplicationSettings/MainAuthInfoServlet.java

Lines changed: 0 additions & 31 deletions
This file was deleted.

src/main/java/main/view/BaseServlet.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import org.jetbrains.annotations.NotNull;
88
import org.jetbrains.annotations.Nullable;
99

10+
import javax.naming.AuthenticationException;
1011
import javax.servlet.ServletContext;
1112
import javax.servlet.http.HttpServlet;
1213
import javax.servlet.http.HttpServletRequest;
@@ -24,7 +25,7 @@ public class BaseServlet extends HttpServlet{
2425
protected static Logger log = Logger.getLogger(BaseServlet.class.getName());
2526
protected DtoMapperGeneral mapper = new DtoMapperGeneral();
2627

27-
protected Session createSession(HttpServletRequest req) throws AqualityException {
28+
protected Session createSession(HttpServletRequest req) throws AqualityException, AuthenticationException {
2829
String importToken = getStringQueryParameter(req, "importToken");
2930
Integer projectId = getIntegerQueryParameter(req, "projectId");
3031
if (importToken != null && projectId != null) {

src/main/java/main/view/Project/AssignSuiteServlet.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ public void doDelete(HttpServletRequest req, HttpServletResponse resp){
3333
test2Suite.setSuite_id(Integer.parseInt(req.getParameter("suiteId")));
3434
test2Suite.setTest_id(Integer.parseInt(req.getParameter("testId")));
3535
session.controllerFactory.getHandler(test2Suite).delete(test2Suite);
36-
} catch (AqualityException e) {
36+
} catch (Exception e) {
3737
handleException(resp, e);
3838
}
3939
}

0 commit comments

Comments
 (0)