Skip to content

Commit 927c484

Browse files
Merge pull request #25 from aquality-automation/feature/Rename_Import_Token_to_API_Token
Features:
2 parents be2e188 + e4f93d8 commit 927c484

File tree

12 files changed

+139
-57
lines changed

12 files changed

+139
-57
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);

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ public FinalResultController getHandler(FinalResultDto entity) {
2424
public ImportController getHandler(ImportDto entity) {
2525
return new ImportController(user);
2626
}
27-
public ImportTokenController getHandler(ImportTokenDto entity) {
28-
return new ImportTokenController(user);
27+
public APITokenController getHandler(APITokenDto entity) {
28+
return new APITokenController(user);
2929
}
3030
public MilestoneController getHandler(MilestoneDto entity) {
3131
return new MilestoneController(user);

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

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

src/main/java/main/model/db/dao/project/UserDao.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package main.model.db.dao.project;
22

3-
import main.controllers.Project.ImportTokenController;
3+
import main.controllers.Project.APITokenController;
44
import main.controllers.Project.ProjectUserController;
55
import main.exceptions.AqualityException;
66
import main.exceptions.AqualityPermissionsException;
@@ -11,7 +11,6 @@
1111
import org.apache.commons.codec.binary.Base64;
1212
import org.apache.commons.codec.binary.StringUtils;
1313

14-
import java.util.ArrayList;
1514
import java.util.Collections;
1615
import java.util.Date;
1716
import java.util.List;
@@ -81,7 +80,7 @@ private UserDto IsAuthorizedUser(String sessionId, String sessionHash) throws Aq
8180
private UserDto IsAuthorizedToken(String sessionId) throws AqualityException {
8281
String[] strings = sessionId.split(":");
8382
Integer projectId = Integer.parseInt(strings[1]);
84-
boolean isTokenValid = new ImportTokenController(new UserDto()).isTokenValid(strings[2],projectId);
83+
boolean isTokenValid = new APITokenController(new UserDto()).isTokenValid(strings[2],projectId);
8584

8685
if(isTokenValid){
8786
UserDto user = new UserDto();
@@ -94,7 +93,7 @@ private UserDto IsAuthorizedToken(String sessionId) throws AqualityException {
9493
return user;
9594
}
9695
else{
97-
throw new AqualityPermissionsException("The import token is not valid", null);
96+
throw new AqualityPermissionsException("The API token is not valid", null);
9897
}
9998
}
10099
}

src/main/java/main/model/dto/ImportTokenDto.java renamed to src/main/java/main/model/dto/APITokenDto.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@
55

66

77
@Data @EqualsAndHashCode(callSuper = true)
8-
public class ImportTokenDto extends BaseDto {
8+
public class APITokenDto extends BaseDto {
99
@DataBaseSearchable
1010
@DataBaseName(name = "request_project_id")
1111
@DataBaseInsert
1212
private Integer id;
13-
@DataBaseName(name = "request_import_token")
13+
@DataBaseName(name = "request_api_token")
1414
@DataBaseInsert
15-
private String import_token;
15+
private String api_token;
1616
}

src/main/java/main/view/Project/ImportTokenServlet.java renamed to src/main/java/main/view/Project/APITokenServlet.java

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

33
import main.Session;
4-
import main.model.dto.DtoMapper;
5-
import main.model.dto.ImportTokenDto;
4+
import main.model.dto.APITokenDto;
65
import main.view.BaseServlet;
76
import main.view.IGet;
8-
import main.view.IPost;
97

108
import javax.servlet.annotation.WebServlet;
119
import javax.servlet.http.HttpServletRequest;
1210
import javax.servlet.http.HttpServletResponse;
1311

14-
@WebServlet("/project/importToken")
15-
public class ImportTokenServlet extends BaseServlet implements IGet {
12+
@WebServlet("/project/apiToken")
13+
public class APITokenServlet extends BaseServlet implements IGet {
1614

1715
@Override
1816
public void doGet(HttpServletRequest req, HttpServletResponse resp) {
@@ -21,9 +19,9 @@ public void doGet(HttpServletRequest req, HttpServletResponse resp) {
2119

2220
try {
2321
Session session = createSession(req);
24-
ImportTokenDto tokenDto = new ImportTokenDto();
22+
APITokenDto tokenDto = new APITokenDto();
2523
tokenDto.getSearchTemplateFromRequestParameters(req);
26-
tokenDto.setImport_token(session.controllerFactory.getHandler(tokenDto).create(tokenDto).getImport_token());
24+
tokenDto.setApi_token(session.controllerFactory.getHandler(tokenDto).create(tokenDto).getApi_token());
2725
resp.getWriter().write(mapper.serialize(tokenDto));
2826
} catch (Exception e) {
2927
handleException(resp, e);

src/main/resources/db_changelog/changelog.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,5 @@
2525
<include file="db.changelog-0.5.xml" relativeToChangelogFile="true"/>
2626
<include file="db.changelog-0.6.xml" relativeToChangelogFile="true"/>
2727
<include file="db.changelog-0.3.1.xml" relativeToChangelogFile="true"/>
28+
<include file="db.changelog-0.3.3.xml" relativeToChangelogFile="true"/>
2829
</databaseChangeLog>
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<databaseChangeLog
3+
xmlns="http://www.liquibase.org/xml/ns/dbchangelog/1.9"
4+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5+
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog/1.9
6+
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-1.9.xsd">
7+
8+
<changeSet id="Rename Import token column" author="v.kostyukevich">
9+
<sql endDelimiter="#">
10+
ALTER TABLE `projects`
11+
CHANGE COLUMN `import_token` `api_token` VARCHAR(500) NULL DEFAULT NULL ;
12+
</sql>
13+
<rollback>
14+
ALTER TABLE `projects`
15+
CHANGE COLUMN `api_token` `import_token` VARCHAR(500) NULL DEFAULT NULL ;
16+
</rollback>
17+
</changeSet>
18+
19+
<changeSet id="Rename INSERT import Token" author="v.kostyukevich">
20+
<sql endDelimiter="#">
21+
DROP procedure IF EXISTS `INSERT_IMPORT_TOKEN`;
22+
23+
#
24+
25+
CREATE PROCEDURE `INSERT_API_TOKEN`(
26+
IN request_api_token VARCHAR(500),
27+
IN request_project_id VARCHAR(10)
28+
)
29+
BEGIN
30+
Update projects Set api_token=request_api_token Where id = request_project_id;
31+
32+
Select id, api_token from projects Where id = request_project_id;
33+
END
34+
</sql>
35+
<rollback>
36+
DROP procedure IF EXISTS `INSERT_IMPORT_TOKEN`;
37+
38+
#
39+
40+
DROP procedure IF EXISTS `INSERT_API_TOKEN`;
41+
42+
#
43+
44+
CREATE PROCEDURE `INSERT_IMPORT_TOKEN`(
45+
IN request_import_token VARCHAR(500),
46+
IN request_project_id VARCHAR(10)
47+
)
48+
BEGIN
49+
Update projects Set import_token=request_import_token Where id = request_project_id;
50+
51+
Select id, import_token from projects Where id = request_project_id;
52+
END
53+
</rollback>
54+
</changeSet>
55+
56+
<changeSet id="Rename SELECT import Token" author="v.kostyukevich">
57+
<sql endDelimiter="#">
58+
DROP procedure IF EXISTS `SELECT_IMPORT_TOKEN`;
59+
60+
#
61+
62+
CREATE PROCEDURE `SELECT_API_TOKEN`(
63+
IN request_project_id VARCHAR(10)
64+
)
65+
BEGIN
66+
SELECT id, api_token FROM projects where id = request_project_id;
67+
END
68+
</sql>
69+
<rollback>
70+
DROP procedure IF EXISTS `SELECT_IMPORT_TOKEN`;
71+
72+
#
73+
74+
DROP procedure IF EXISTS `SELECT_API_TOKEN`;
75+
76+
#
77+
78+
CREATE PROCEDURE `SELECT_IMPORT_TOKEN`(
79+
IN request_project_id VARCHAR(10)
80+
)
81+
BEGIN
82+
SELECT id, import_token FROM projects where id = request_project_id;
83+
END
84+
</rollback>
85+
</changeSet>
86+
</databaseChangeLog>

0 commit comments

Comments
 (0)