Skip to content

Commit bfaaa8f

Browse files
AYS-444 & AYS-510 | UUID has been added to the response and time bug has been fixed (#389)
Co-authored-by: agitrubard <demiragitrubar@gmail.com>
1 parent eba207c commit bfaaa8f

21 files changed

+107
-83
lines changed

src/main/java/org/ays/auth/controller/AdminRegistrationApplicationController.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ public AysResponse<AdminRegistrationApplicationCreateResponse> create(
147147
public AysResponse<Void> approve(@PathVariable @UUID String id) {
148148

149149
adminRegistrationApplicationService.approve(id);
150-
return AysResponse.SUCCESS;
150+
return AysResponse.success();
151151
}
152152

153153
/**
@@ -164,7 +164,7 @@ public AysResponse<Void> reject(@PathVariable @UUID String id,
164164
@RequestBody @Valid AdminRegistrationApplicationRejectRequest rejectRequest) {
165165

166166
adminRegistrationApplicationService.reject(id, rejectRequest);
167-
return AysResponse.SUCCESS;
167+
return AysResponse.success();
168168
}
169169

170170
/**
@@ -179,7 +179,7 @@ public AysResponse<Void> complete(@PathVariable @UUID String id,
179179
@RequestBody @Valid AdminRegistrationApplicationCompleteRequest registerRequest) {
180180

181181
adminRegistrationCompleteService.complete(id, registerRequest);
182-
return AysResponse.SUCCESS;
182+
return AysResponse.success();
183183
}
184184

185185
}

src/main/java/org/ays/auth/controller/AysAuthController.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ public AysResponse<AysTokenResponse> refreshToken(@RequestBody @Valid AysTokenRe
7676
@PostMapping("/token/invalidate")
7777
public AysResponse<Void> invalidateTokens(@RequestBody @Valid AysTokenInvalidateRequest invalidateRequest) {
7878
authService.invalidateTokens(invalidateRequest.getRefreshToken());
79-
return AysResponse.SUCCESS;
79+
return AysResponse.success();
8080
}
8181

8282

@@ -89,7 +89,7 @@ public AysResponse<Void> invalidateTokens(@RequestBody @Valid AysTokenInvalidate
8989
@PostMapping("/password/forgot")
9090
public AysResponse<Void> forgotPassword(@RequestBody @Valid AysPasswordForgotRequest forgotPasswordRequest) {
9191
userPasswordService.forgotPassword(forgotPasswordRequest);
92-
return AysResponse.SUCCESS;
92+
return AysResponse.success();
9393
}
9494

9595

@@ -106,7 +106,7 @@ public AysResponse<Void> forgotPassword(@RequestBody @Valid AysPasswordForgotReq
106106
@GetMapping("/password/{id}/validity")
107107
public AysResponse<Void> checkPasswordChangingValidity(@PathVariable @UUID String id) {
108108
userPasswordService.checkPasswordChangingValidity(id);
109-
return AysResponse.SUCCESS;
109+
return AysResponse.success();
110110
}
111111

112112

@@ -126,7 +126,7 @@ public AysResponse<Void> forgotPassword(@PathVariable @UUID String id,
126126
@RequestBody @Valid AysPasswordCreateRequest createRequest) {
127127

128128
userPasswordService.createPassword(id, createRequest);
129-
return AysResponse.SUCCESS;
129+
return AysResponse.success();
130130
}
131131

132132
}

src/main/java/org/ays/auth/controller/AysRoleController.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,10 @@
2323
import org.springframework.validation.annotation.Validated;
2424
import org.springframework.web.bind.annotation.DeleteMapping;
2525
import org.springframework.web.bind.annotation.GetMapping;
26+
import org.springframework.web.bind.annotation.PatchMapping;
2627
import org.springframework.web.bind.annotation.PathVariable;
2728
import org.springframework.web.bind.annotation.PostMapping;
2829
import org.springframework.web.bind.annotation.PutMapping;
29-
import org.springframework.web.bind.annotation.PatchMapping;
3030
import org.springframework.web.bind.annotation.RequestBody;
3131
import org.springframework.web.bind.annotation.RequestMapping;
3232
import org.springframework.web.bind.annotation.RestController;
@@ -137,7 +137,7 @@ public AysResponse<AysRoleResponse> findById(@PathVariable @UUID String id) {
137137
@PreAuthorize("hasAnyAuthority('role:create')")
138138
public AysResponse<Void> create(@RequestBody @Valid AysRoleCreateRequest createRequest) {
139139
roleCreateService.create(createRequest);
140-
return AysResponse.SUCCESS;
140+
return AysResponse.success();
141141
}
142142

143143

@@ -158,7 +158,7 @@ public AysResponse<Void> update(@PathVariable @UUID final String id,
158158
@RequestBody @Valid final AysRoleUpdateRequest updateRequest) {
159159

160160
roleUpdateService.update(id, updateRequest);
161-
return AysResponse.SUCCESS;
161+
return AysResponse.success();
162162
}
163163

164164

@@ -176,7 +176,7 @@ public AysResponse<Void> update(@PathVariable @UUID final String id,
176176
@PreAuthorize("hasAnyAuthority('role:update')")
177177
public AysResponse<Void> activate(@PathVariable @UUID final String id) {
178178
roleUpdateService.activate(id);
179-
return AysResponse.SUCCESS;
179+
return AysResponse.success();
180180
}
181181

182182

@@ -194,7 +194,7 @@ public AysResponse<Void> activate(@PathVariable @UUID final String id) {
194194
@PreAuthorize("hasAnyAuthority('role:update')")
195195
public AysResponse<Void> passivate(@PathVariable @UUID final String id) {
196196
roleUpdateService.passivate(id);
197-
return AysResponse.SUCCESS;
197+
return AysResponse.success();
198198
}
199199

200200

@@ -212,7 +212,7 @@ public AysResponse<Void> passivate(@PathVariable @UUID final String id) {
212212
@PreAuthorize("hasAnyAuthority('role:delete')")
213213
public AysResponse<Void> delete(@PathVariable @UUID final String id) {
214214
roleUpdateService.delete(id);
215-
return AysResponse.SUCCESS;
215+
return AysResponse.success();
216216
}
217217

218218
}

src/main/java/org/ays/auth/controller/AysUserController.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ public AysResponse<AysUserResponse> findById(@PathVariable @UUID final String id
109109
@PreAuthorize("hasAnyAuthority('user:create')")
110110
public AysResponse<Void> create(@RequestBody @Valid final AysUserCreateRequest createRequest) {
111111
userCreateService.create(createRequest);
112-
return AysResponse.SUCCESS;
112+
return AysResponse.success();
113113
}
114114

115115

@@ -130,7 +130,7 @@ public AysResponse<Void> update(@PathVariable @UUID final String id,
130130
@RequestBody @Valid final AysUserUpdateRequest updateRequest) {
131131

132132
userUpdateService.update(id, updateRequest);
133-
return AysResponse.SUCCESS;
133+
return AysResponse.success();
134134
}
135135

136136

@@ -148,7 +148,7 @@ public AysResponse<Void> update(@PathVariable @UUID final String id,
148148
@PreAuthorize("hasAnyAuthority('user:update')")
149149
public AysResponse<Void> activate(@PathVariable @UUID final String id) {
150150
userUpdateService.activate(id);
151-
return AysResponse.SUCCESS;
151+
return AysResponse.success();
152152
}
153153

154154

@@ -166,7 +166,7 @@ public AysResponse<Void> activate(@PathVariable @UUID final String id) {
166166
@PreAuthorize("hasAnyAuthority('user:update')")
167167
public AysResponse<Void> passivate(@PathVariable @UUID final String id) {
168168
userUpdateService.passivate(id);
169-
return AysResponse.SUCCESS;
169+
return AysResponse.success();
170170
}
171171

172172

@@ -184,7 +184,7 @@ public AysResponse<Void> passivate(@PathVariable @UUID final String id) {
184184
@PreAuthorize("hasAnyAuthority('user:delete')")
185185
public AysResponse<Void> delete(@PathVariable @UUID final String id) {
186186
userUpdateService.delete(id);
187-
return AysResponse.SUCCESS;
187+
return AysResponse.success();
188188
}
189189

190190
}

src/main/java/org/ays/common/model/response/AysErrorResponse.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import lombok.RequiredArgsConstructor;
99
import org.apache.commons.collections4.CollectionUtils;
1010
import org.apache.commons.lang3.StringUtils;
11+
import org.ays.common.util.AysRandomUtil;
1112
import org.springframework.validation.FieldError;
1213
import org.springframework.web.method.annotation.MethodArgumentTypeMismatchException;
1314

@@ -32,6 +33,12 @@ public class AysErrorResponse {
3233
@Builder.Default
3334
private LocalDateTime time = LocalDateTime.now();
3435

36+
/**
37+
* A unique code identifying the response.
38+
*/
39+
@Builder.Default
40+
private String code = AysRandomUtil.generateUUID();
41+
3542
/**
3643
* The header of the error response.
3744
*/

src/main/java/org/ays/common/model/response/AysResponse.java

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.fasterxml.jackson.annotation.JsonInclude;
44
import lombok.Builder;
55
import lombok.Getter;
6+
import org.ays.common.util.AysRandomUtil;
67

78
import java.time.LocalDateTime;
89

@@ -21,6 +22,12 @@ public class AysResponse<T> {
2122
@Builder.Default
2223
private LocalDateTime time = LocalDateTime.now();
2324

25+
/**
26+
* A unique code identifying the response.
27+
*/
28+
@Builder.Default
29+
private String code = AysRandomUtil.generateUUID();
30+
2431
/**
2532
* Indicates whether the API request was successful or not.
2633
*/
@@ -34,10 +41,13 @@ public class AysResponse<T> {
3441

3542

3643
/**
37-
* A pre-defined success response with no content.
44+
* A success response with no content.
3845
*/
39-
public static final AysResponse<Void> SUCCESS = AysResponse.<Void>builder()
40-
.isSuccess(true).build();
46+
public static <T> AysResponse<T> success() {
47+
return AysResponse.<T>builder()
48+
.isSuccess(true)
49+
.build();
50+
}
4151

4252
/**
4353
* Creates a success response with the specified response object.

src/main/java/org/ays/emergency_application/controller/EmergencyEvacuationApplicationController.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ public AysResponse<EmergencyEvacuationApplicationResponse> findById(@PathVariabl
9191
@PostMapping("/emergency-evacuation-application")
9292
public AysResponse<Void> create(@RequestBody @Valid EmergencyEvacuationApplicationRequest emergencyEvacuationApplicationRequest) {
9393
emergencyEvacuationApplicationService.create(emergencyEvacuationApplicationRequest);
94-
return AysResponse.SUCCESS;
94+
return AysResponse.success();
9595
}
9696

9797

@@ -114,7 +114,7 @@ public AysResponse<Void> update(@PathVariable @UUID final String id,
114114
@RequestBody @Valid final EmergencyEvacuationApplicationUpdateRequest updateRequest) {
115115

116116
emergencyEvacuationApplicationService.update(id, updateRequest);
117-
return AysResponse.SUCCESS;
117+
return AysResponse.success();
118118
}
119119

120120
}

src/test/java/org/ays/AysMockMvc.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ public ResultActions perform(final MockHttpServletRequestBuilder mockHttpServlet
3636
.andDo(MockMvcResultHandlers.print())
3737
.andExpect(AysMockResultMatchersBuilders.time()
3838
.isNotEmpty())
39+
.andExpect(AysMockResultMatchersBuilders.code()
40+
.isNotEmpty())
3941
.andExpect(AysMockResultMatchersBuilders.isSuccess()
4042
.isBoolean())
4143
.andExpect(AysMockResultMatchersBuilders.header()

src/test/java/org/ays/auth/controller/AdminRegistrationApplicationControllerTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -376,7 +376,7 @@ void givenValidAdminRegisterRequest_whenAdminRegistered_thenReturnSuccessRespons
376376
MockHttpServletRequestBuilder mockHttpServletRequestBuilder = AysMockMvcRequestBuilders
377377
.post(endpoint, mockRequest);
378378

379-
AysResponse<Void> mockResponse = AysResponseBuilder.SUCCESS;
379+
AysResponse<Void> mockResponse = AysResponseBuilder.success();
380380

381381
aysMockMvc.perform(mockHttpServletRequestBuilder, mockResponse)
382382
.andExpect(AysMockResultMatchersBuilders.status()
@@ -608,7 +608,7 @@ void givenValidAdminRegisterApplicationCompleteRequestWithParametrizedValidEmail
608608
MockHttpServletRequestBuilder mockHttpServletRequestBuilder = AysMockMvcRequestBuilders
609609
.post(endpoint, mockRequest);
610610

611-
AysResponse<Void> mockResponse = AysResponseBuilder.SUCCESS;
611+
AysResponse<Void> mockResponse = AysResponseBuilder.success();
612612

613613
aysMockMvc.perform(mockHttpServletRequestBuilder, mockResponse)
614614
.andExpect(AysMockResultMatchersBuilders.status()
@@ -667,7 +667,7 @@ void givenValidAdminRegisterApplicationId_whenApproveAdminRegisterApplication_th
667667
MockHttpServletRequestBuilder mockHttpServletRequestBuilder = AysMockMvcRequestBuilders
668668
.post(endpoint, mockSuperAdminToken.getAccessToken());
669669

670-
AysResponse<Void> mockResponse = AysResponse.SUCCESS;
670+
AysResponse<Void> mockResponse = AysResponseBuilder.success();
671671

672672
aysMockMvc.perform(mockHttpServletRequestBuilder, mockResponse)
673673
.andExpect(AysMockResultMatchersBuilders.status()
@@ -721,7 +721,7 @@ void givenValidAdminRegisterApplicationRejectRequest_whenRejectingAdminRegisterA
721721
MockHttpServletRequestBuilder mockHttpServletRequestBuilder = AysMockMvcRequestBuilders
722722
.post(endpoint, mockSuperAdminToken.getAccessToken(), mockRequest);
723723

724-
AysResponse<Void> mockResponse = AysResponseBuilder.SUCCESS;
724+
AysResponse<Void> mockResponse = AysResponseBuilder.success();
725725

726726
aysMockMvc.perform(mockHttpServletRequestBuilder, mockResponse)
727727
.andExpect(AysMockResultMatchersBuilders.status()

src/test/java/org/ays/auth/controller/AdminRegistrationApplicationEndToEndTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ void givenValidAdminRegistrationApplicationListRequest_whenAdminRegistrationAppl
110110
MockHttpServletRequestBuilder mockHttpServletRequestBuilder = AysMockMvcRequestBuilders
111111
.post(endpoint, superAdminToken.getAccessToken(), listRequest);
112112

113-
AysResponse<AysPageResponse<AdminRegistrationApplication>> mockResponse = AysResponseBuilder.success();
113+
AysResponse<AysPageResponse<AdminRegistrationApplication>> mockResponse = AysResponseBuilder.successPage();
114114

115115
aysMockMvc.perform(mockHttpServletRequestBuilder, mockResponse)
116116
.andExpect(AysMockResultMatchersBuilders.status()
@@ -357,7 +357,7 @@ void givenValidAdminRegistrationApplicationCompleteRequest_whenAdminRegistered_t
357357
MockHttpServletRequestBuilder mockHttpServletRequestBuilder = AysMockMvcRequestBuilders
358358
.post(endpoint, completeRequest);
359359

360-
AysResponse<Void> mockResponse = AysResponseBuilder.SUCCESS;
360+
AysResponse<Void> mockResponse = AysResponseBuilder.success();
361361

362362
aysMockMvc.perform(mockHttpServletRequestBuilder, mockResponse)
363363
.andExpect(AysMockResultMatchersBuilders.status()
@@ -444,7 +444,7 @@ void givenValidAdminRegistrationApplicationId_whenApproveAdminRegistrationApplic
444444
MockHttpServletRequestBuilder mockHttpServletRequestBuilder = AysMockMvcRequestBuilders
445445
.post(endpoint, superAdminToken.getAccessToken());
446446

447-
AysResponse<Void> mockResponse = AysResponse.SUCCESS;
447+
AysResponse<Void> mockResponse = AysResponseBuilder.success();
448448

449449
aysMockMvc.perform(mockHttpServletRequestBuilder, mockResponse)
450450
.andExpect(AysMockResultMatchersBuilders.status()
@@ -666,7 +666,7 @@ void givenValidAdminRegistrationApplicationRejectRequest_whenRejectingAdminRegis
666666
MockHttpServletRequestBuilder mockHttpServletRequestBuilder = AysMockMvcRequestBuilders
667667
.post(endpoint, superAdminToken.getAccessToken(), rejectRequest);
668668

669-
AysResponse<Void> mockResponse = AysResponse.SUCCESS;
669+
AysResponse<Void> mockResponse = AysResponseBuilder.success();
670670

671671
aysMockMvc.perform(mockHttpServletRequestBuilder, mockResponse)
672672
.andExpect(AysMockResultMatchersBuilders.status()

0 commit comments

Comments
 (0)