Skip to content

Commit fd256ad

Browse files
Merge branch 'develop' into feature/test_steps
# Conflicts: # src/main/resources/db_changelog/db.changelog-0.3.3.xml
2 parents 48391fe + 927c484 commit fd256ad

28 files changed

+711
-67
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
## 0.3.3 (unreleased)
44

5+
Features:
6+
- Rename Import Token to API Token -> [View Issue](https://github.com/aquality-automation/aquality-tracking-ui/issues/23)
7+
58
Bugfixes:
69
- Local Manager can see Local Permissions page -> [View Issue](https://github.com/aquality-automation/aquality-tracking-ui/issues/22)
710

src/main/java/main/Session.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,10 @@ public Session(UserDto user) throws AqualityException {
3838
}
3939

4040
@Deprecated
41-
public Session(String importToken, int projectId) throws AqualityException {
41+
public Session(String apiToken, int projectId) throws AqualityException {
4242
user = new UserDto();
4343
controllerFactory = new ControllerFactory(user);
44-
if(controllerFactory.getHandler(new ImportTokenDto()).isTokenValid(importToken, projectId)){
44+
if(controllerFactory.getHandler(new APITokenDto()).isTokenValid(apiToken, projectId)){
4545
ProjectUserDto projectUser = new ProjectUserDto();
4646
projectUser.setProject_id(projectId);
4747
projectUser.setEngineer(1);
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package main.controllers.Administration;
2+
3+
import main.controllers.BaseController;
4+
import main.exceptions.AqualityException;
5+
import main.model.db.dao.project.StepTypeDao;
6+
import main.model.dto.StepTypeDto;
7+
import main.model.dto.UserDto;
8+
9+
import java.util.List;
10+
11+
public class StepTypeController extends BaseController<StepTypeDto> {
12+
private StepTypeDao stepTypeDao;
13+
14+
public StepTypeController(UserDto user) {
15+
super(user);
16+
stepTypeDao = new StepTypeDao();
17+
}
18+
19+
@Override
20+
public List<StepTypeDto> get(StepTypeDto entity) throws AqualityException {
21+
return stepTypeDao.searchAll(entity);
22+
}
23+
24+
@Override
25+
public StepTypeDto create(StepTypeDto entity) throws AqualityException {
26+
return stepTypeDao.create(entity);
27+
}
28+
29+
@Override
30+
public boolean delete(StepTypeDto entity) throws AqualityException {
31+
return stepTypeDao.delete(entity);
32+
}
33+
}

src/main/java/main/controllers/ControllerFactory.java

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
package main.controllers;
22

33
import main.controllers.Administration.EmailSettingsController;
4+
import main.controllers.Administration.StepTypeController;
45
import main.controllers.Administration.UserController;
56
import main.controllers.Project.*;
7+
import main.model.db.dao.project.StepDao;
68
import main.model.dto.*;
79

810
public class ControllerFactory {
@@ -24,8 +26,8 @@ public FinalResultController getHandler(FinalResultDto entity) {
2426
public ImportController getHandler(ImportDto entity) {
2527
return new ImportController(user);
2628
}
27-
public ImportTokenController getHandler(ImportTokenDto entity) {
28-
return new ImportTokenController(user);
29+
public APITokenController getHandler(APITokenDto entity) {
30+
return new APITokenController(user);
2931
}
3032
public MilestoneController getHandler(MilestoneDto entity) {
3133
return new MilestoneController(user);
@@ -60,4 +62,13 @@ public UserController getHandler(UserDto entity) {
6062
public EmailSettingsController getHandler(EmailSettingsDto entity) {
6163
return new EmailSettingsController(user);
6264
}
65+
public StepController getHandler(StepDto entity) {
66+
return new StepController(user);
67+
}
68+
public StepResultController getHandler(StepResultDto entity) {
69+
return new StepResultController(user);
70+
}
71+
public StepTypeController getHandler(StepTypeDto entity) {
72+
return new StepTypeController(user);
73+
}
6374
}

src/main/java/main/controllers/Project/ImportTokenController.java renamed to src/main/java/main/controllers/Project/APITokenController.java

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,49 +3,49 @@
33
import main.controllers.BaseController;
44
import main.exceptions.AqualityException;
55
import main.exceptions.AqualityPermissionsException;
6-
import main.model.db.dao.project.ImportTokenDao;
7-
import main.model.dto.ImportTokenDto;
6+
import main.model.db.dao.project.APITokenDao;
7+
import main.model.dto.APITokenDto;
88
import main.model.dto.UserDto;
99
import org.apache.commons.codec.digest.DigestUtils;
1010
import org.apache.poi.util.NotImplemented;
1111

1212
import java.util.List;
1313
import java.util.Objects;
1414

15-
public class ImportTokenController extends BaseController<ImportTokenDto> {
16-
private ImportTokenDao importTokenDao;
17-
public ImportTokenController(UserDto user) {
15+
public class APITokenController extends BaseController<APITokenDto> {
16+
private APITokenDao apiTokenDao;
17+
public APITokenController(UserDto user) {
1818
super(user);
19-
importTokenDao = new ImportTokenDao();
19+
apiTokenDao = new APITokenDao();
2020
}
2121

2222
@Override
23-
public List<ImportTokenDto> get(ImportTokenDto entity) throws AqualityException {
23+
public List<APITokenDto> get(APITokenDto entity) throws AqualityException {
2424
throw new UnsupportedOperationException();
2525
}
2626

2727
@Override
28-
public ImportTokenDto create(ImportTokenDto template) throws AqualityException {
28+
public APITokenDto create(APITokenDto template) throws AqualityException {
2929
if(baseUser.isAdmin() || baseUser.isManager() || baseUser.getProjectUser(template.getId()).isManager() || baseUser.getProjectUser(template.getId()).isAdmin()){
30-
return importTokenDao.create(template);
30+
return apiTokenDao.create(template);
3131
}else{
32-
throw new AqualityPermissionsException("Account is not allowed to create Import Token", baseUser);
32+
throw new AqualityPermissionsException("Account is not allowed to create API Token", baseUser);
3333
}
3434
}
3535

3636
@Override @NotImplemented
37-
public boolean delete(ImportTokenDto entity) throws AqualityException {
37+
public boolean delete(APITokenDto entity) throws AqualityException {
3838
throw new UnsupportedOperationException();
3939
}
4040

4141
public boolean isTokenValid(String token, Integer projectId) throws AqualityException {
4242
String actualHash = DigestUtils.md5Hex(token + "advbc1671-nlksdui-ff");
43-
ImportTokenDto tokenDTO = new ImportTokenDto();
43+
APITokenDto tokenDTO = new APITokenDto();
4444
tokenDTO.setId(projectId);
45-
List<ImportTokenDto> importTokens = importTokenDao.searchAll(tokenDTO);
45+
List<APITokenDto> apiTokens = apiTokenDao.searchAll(tokenDTO);
4646

47-
if(importTokens.size() > 0){
48-
String expectedHash = (importTokens.get(0)).getImport_token();
47+
if(apiTokens.size() > 0){
48+
String expectedHash = (apiTokens.get(0)).getApi_token();
4949
return Objects.equals(actualHash, expectedHash);
5050
}
5151

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
package main.controllers.Project;
2+
3+
import main.controllers.BaseController;
4+
import main.exceptions.AqualityException;
5+
import main.model.db.dao.project.Step2TestDao;
6+
import main.model.db.dao.project.StepDao;
7+
import main.model.dto.Step2TestDto;
8+
import main.model.dto.StepDto;
9+
import main.model.dto.UserDto;
10+
11+
import java.util.List;
12+
13+
public class StepController extends BaseController<StepDto> {
14+
private StepDao stepDao;
15+
private Step2TestDao step2TestDao;
16+
17+
public StepController(UserDto user) {
18+
super(user);
19+
stepDao = new StepDao();
20+
step2TestDao = new Step2TestDao();
21+
}
22+
23+
@Override
24+
public List<StepDto> get(StepDto entity) throws AqualityException {
25+
return stepDao.searchAll(entity);
26+
}
27+
28+
@Override
29+
public StepDto create(StepDto entity) throws AqualityException {
30+
return stepDao.create(entity);
31+
}
32+
33+
@Override
34+
public boolean delete(StepDto entity) throws AqualityException {
35+
return stepDao.delete(entity);
36+
}
37+
38+
public Step2TestDto assignToTest(Step2TestDto entity) throws AqualityException {
39+
return step2TestDao.create(entity);
40+
}
41+
42+
public boolean removeFromTest(Step2TestDto entity) throws AqualityException {
43+
return step2TestDao.delete(entity);
44+
}
45+
46+
public boolean updateOrder(List<Step2TestDto> entities) throws AqualityException {
47+
return step2TestDao.updateMultiply(entities);
48+
}
49+
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package main.controllers.Project;
2+
3+
import main.controllers.BaseController;
4+
import main.exceptions.AqualityException;
5+
import main.model.db.dao.project.StepResultDao;
6+
import main.model.dto.StepResultDto;
7+
import main.model.dto.UserDto;
8+
9+
import java.util.List;
10+
11+
public class StepResultController extends BaseController<StepResultDto> {
12+
private StepResultDao stepResultDao;
13+
public StepResultController(UserDto user) {
14+
super(user);
15+
}
16+
17+
@Override
18+
public List<StepResultDto> get(StepResultDto entity) throws AqualityException {
19+
return stepResultDao.searchAll(entity);
20+
}
21+
22+
@Override
23+
public StepResultDto create(StepResultDto entity) throws AqualityException {
24+
return stepResultDao.create(entity);
25+
}
26+
27+
@Override
28+
public boolean delete(StepResultDto entity) throws AqualityException {
29+
return stepResultDao.delete(entity);
30+
}
31+
}

src/main/java/main/exceptions/AqualitySQLException.java

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,17 @@
11
package main.exceptions;
22

3+
import java.sql.SQLException;
4+
35
public class AqualitySQLException extends AqualityException {
46

5-
public AqualitySQLException(String sqlcode) {
6-
super(getErrorMessage(sqlcode));
7-
this.responseCode = getErrorCode(sqlcode);
7+
public AqualitySQLException(SQLException exception) {
8+
super(getErrorMessage(exception));
9+
this.responseCode = getErrorCode(exception.getSQLState());
810
}
911

1012

11-
12-
private static String getErrorMessage(String sqlcode){
13-
switch (sqlcode){
13+
private static String getErrorMessage(SQLException exception){
14+
switch (exception.getSQLState()){
1415
case "23516":
1516
case "45000":
1617
case "23505":
@@ -19,8 +20,10 @@ private static String getErrorMessage(String sqlcode){
1920
return "You Regular expression is not valid!";
2021
case "40001":
2122
return "You are trying to edit entity which is locked. Please retry the operation.";
23+
case "23000":
24+
return String.format("You have missed required parameter: %s", exception.getMessage());
2225
default:
23-
return String.format("Unknown SQL Error: %s", sqlcode);
26+
return String.format("Unknown SQL Error: %s", exception.getSQLState());
2427
}
2528
}
2629

@@ -31,6 +34,7 @@ private static Integer getErrorCode(String sqlcode){
3134
case "23505":
3235
return 409;
3336
case "42000":
37+
case "23000":
3438
return 400;
3539
default:
3640
return 500;

src/main/java/main/model/db/dao/DAO.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ protected JSONArray CallStoredProcedure(String sql, List<Pair<String, String>> p
157157
rs.close();
158158
}
159159
} catch (SQLException e) {
160-
throw new AqualitySQLException(e.getSQLState());
160+
throw new AqualitySQLException(e);
161161
} finally {
162162
closeCallableStatement(callableStatement);
163163
}
@@ -211,7 +211,7 @@ private CallableStatement executeCallableStatement(String sql, List<Pair<String,
211211
try {
212212
callableStatement.execute();
213213
} catch (SQLException e) {
214-
throw new AqualitySQLException(e.getSQLState());
214+
throw new AqualitySQLException(e);
215215
}
216216

217217
return callableStatement;

src/main/java/main/model/db/dao/project/ImportTokenDao.java renamed to src/main/java/main/model/db/dao/project/APITokenDao.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,29 +4,29 @@
44
import com.mysql.cj.core.conf.url.ConnectionUrlParser.Pair;
55
import main.exceptions.AqualityException;
66
import main.model.db.dao.DAO;
7-
import main.model.dto.ImportTokenDto;
7+
import main.model.dto.APITokenDto;
88
import main.utils.RandomStringGenerator;
99
import org.apache.commons.codec.digest.DigestUtils;
1010

1111
import java.util.Date;
1212
import java.util.List;
1313

14-
public class ImportTokenDao extends DAO<ImportTokenDto> {
14+
public class APITokenDao extends DAO<APITokenDto> {
1515

16-
public ImportTokenDao(){
17-
super(ImportTokenDto.class);
18-
select = "{call SELECT_IMPORT_TOKEN(?)}";
19-
insert = "{call INSERT_IMPORT_TOKEN(?,?)}";
16+
public APITokenDao(){
17+
super(APITokenDto.class);
18+
select = "{call SELECT_API_TOKEN(?)}";
19+
insert = "{call INSERT_API_TOKEN(?,?)}";
2020
}
2121

2222
@Override
23-
public ImportTokenDto create(ImportTokenDto entity) throws AqualityException {
23+
public APITokenDto create(APITokenDto entity) throws AqualityException {
2424
String token = generateToken();
25-
entity.setImport_token(DigestUtils.md5Hex(token + "advbc1671-nlksdui-ff"));
25+
entity.setApi_token(DigestUtils.md5Hex(token + "advbc1671-nlksdui-ff"));
2626
List<Pair<String, String>> parameters = entity.getParameters();
2727

2828
CallStoredProcedure(insert, parameters);
29-
entity.setImport_token(token);
29+
entity.setApi_token(token);
3030
return entity;
3131
}
3232

0 commit comments

Comments
 (0)