cleanup and added unit tests
This commit is contained in:
@@ -33,14 +33,6 @@ public class QueryService {
|
||||
@PersistenceContext
|
||||
private EntityManager eManager;
|
||||
|
||||
public int count(String namedQuery, Param... params) {
|
||||
Query query = eManager.createNamedQuery(namedQuery);
|
||||
for (Param param : params) {
|
||||
query.setParameter(param.name(), param.value());
|
||||
}
|
||||
return ((Number) query.getSingleResult()).intValue();
|
||||
}
|
||||
|
||||
public <T> Optional<T> callNamedQuerySingleResult(String namedQuery, Param... params) {
|
||||
return singleResult(eManager.createNamedQuery(namedQuery), Arrays.asList(params));
|
||||
}
|
||||
@@ -66,30 +58,6 @@ public class QueryService {
|
||||
return (T) query.getResultList();
|
||||
}
|
||||
|
||||
public <T> Optional<T> callQuerySingleResult(String sql, Param... objects) {
|
||||
Query query = eManager.createQuery(sql);
|
||||
for (Param param : objects) {
|
||||
query.setParameter(param.name(), param.value());
|
||||
}
|
||||
return Optional.of((T) query.getSingleResult());
|
||||
}
|
||||
|
||||
public <T> T callNativeQuery(String sql, Param... objects) {
|
||||
Query query = eManager.createNativeQuery(sql);
|
||||
for (Param param : objects) {
|
||||
query.setParameter(param.name(), param.value());
|
||||
}
|
||||
return (T) query.getResultList();
|
||||
}
|
||||
|
||||
public int callNativeQueryUpdate(String sql, Param... objects) {
|
||||
Query query = eManager.createNativeQuery(sql);
|
||||
for (Param param : objects) {
|
||||
query.setParameter(param.name(), param.value());
|
||||
}
|
||||
return query.executeUpdate();
|
||||
}
|
||||
|
||||
public int callNamedQueryUpdate(String namedQuery, Param... objects) {
|
||||
Query query = eManager.createNamedQuery(namedQuery);
|
||||
for (Param param : objects) {
|
||||
|
||||
@@ -52,7 +52,7 @@ public class CustomerPictureService extends AbstractService {
|
||||
|
||||
// query = search for name, number and date
|
||||
public List<CustomerListValue> getAll(String queryStr, String startsWith) {
|
||||
// FIXME: do query
|
||||
// FIXME: do query on date
|
||||
|
||||
CriteriaBuilder builder = entityManager.getCriteriaBuilder();
|
||||
CriteriaQuery<Customer> criteriaQuery = builder.createQuery(Customer.class);
|
||||
|
||||
@@ -55,7 +55,7 @@ public class JwtTokenService extends AbstractService {
|
||||
return new TokenPairValue(accessToken, refreshToken);
|
||||
}
|
||||
|
||||
public String refreshAccessToken(String refreshToken) throws Exception {
|
||||
public String refreshAccessToken(String refreshToken) {
|
||||
Claims claims = jwtTokenUtil.validateAndExtractClaims(refreshToken);
|
||||
Long userId = Long.parseLong(claims.getSubject());
|
||||
|
||||
|
||||
@@ -29,19 +29,11 @@ public class LoginService extends AbstractService{
|
||||
// Get logged-in user from database
|
||||
Optional<User> userOpt = queryService.callNamedQuerySingleResult(User.BY_USERNAME, new Param(User.PARAM_USERNAME, username));
|
||||
if (userOpt.isEmpty()) {
|
||||
// FIXME: implement me
|
||||
// Should never happen
|
||||
return null;
|
||||
}
|
||||
|
||||
User user = userOpt.get();
|
||||
// Verify user is active
|
||||
if (!user.isActive()) {
|
||||
throw new IllegalArgumentException("User account is inactive");
|
||||
}
|
||||
|
||||
TokenPairValue tokens = jwtTokenService.generateTokenPair(user, deviceInfo, ipAddress);
|
||||
// Logout from the temporary login (we're using tokens now, not session)
|
||||
return tokens;
|
||||
|
||||
return jwtTokenService.generateTokenPair(user, deviceInfo, ipAddress);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -67,10 +67,7 @@ public class LoginResource {
|
||||
String deviceInfo = loginUtils.extractDeviceInfo(httpServletRequest);
|
||||
String ipAddress = loginUtils.extractIpAddress(httpServletRequest);
|
||||
|
||||
TokenPairValue tokenPairValue = loginService.authenticateUser(username, deviceInfo, ipAddress);
|
||||
|
||||
//FIXME: check if we can do a logout to free user from WildFly httpServletRequest.logout();
|
||||
var tokenPairValue = loginService.authenticateUser(username, deviceInfo, ipAddress);
|
||||
return Response.ok(tokenPairValue).build();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -48,9 +48,7 @@ public class PictureResource {
|
||||
protected ResponseBuilder deleteResponse(StorageState state) {
|
||||
return switch(state) {
|
||||
case OK -> Response.status(Status.OK);
|
||||
case DUPLICATE -> Response.status(Status.CONFLICT);
|
||||
case NOT_FOUND -> Response.status(Status.NOT_FOUND);
|
||||
case FORBIDDEN -> Response.status(Status.FORBIDDEN);
|
||||
default -> Response.status(Status.INTERNAL_SERVER_ERROR);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -37,7 +37,8 @@ import com.networknt.schema.ValidationMessage;
|
||||
*/
|
||||
@Provider
|
||||
@Consumes(value = {
|
||||
MediaType.APPLICATION_JSON, "application/json; charset=utf-8"
|
||||
MediaType.APPLICATION_JSON, "application/json",
|
||||
MediaType.APPLICATION_JSON, "application/json; charset=utf-8",
|
||||
})
|
||||
public class ValidatedMessageBodyReader implements MessageBodyReader<SchemaValidated> {
|
||||
private static final Log LOG = LogFactory.getLog(ValidatedMessageBodyReader.class);
|
||||
|
||||
Reference in New Issue
Block a user