aboutsummaryrefslogtreecommitdiff
path: root/juick-server/src/main/java/com/juick/service
diff options
context:
space:
mode:
authorGravatar Alexander Alexeev2016-11-26 13:19:17 +0700
committerGravatar Alexander Alexeev2016-11-26 13:19:17 +0700
commitc61ba1deb4cf58bc44e1dfb272052dd64150eb49 (patch)
tree7b25d5d63570c7bcd498c70e4e89dc9a4786ed21 /juick-server/src/main/java/com/juick/service
parent8948fecade6f82e3853868e6edadbf343c04968f (diff)
working spring security config
Diffstat (limited to 'juick-server/src/main/java/com/juick/service')
-rw-r--r--juick-server/src/main/java/com/juick/service/UserService.java4
-rw-r--r--juick-server/src/main/java/com/juick/service/UserServiceImpl.java33
2 files changed, 37 insertions, 0 deletions
diff --git a/juick-server/src/main/java/com/juick/service/UserService.java b/juick-server/src/main/java/com/juick/service/UserService.java
index cfd5092a..4d7d09c9 100644
--- a/juick-server/src/main/java/com/juick/service/UserService.java
+++ b/juick-server/src/main/java/com/juick/service/UserService.java
@@ -28,6 +28,10 @@ public interface UserService {
User getUserByName(String username);
+ User getFullyUserByName(String username);
+
+ List<User> getFullyUsersByNames(Collection<String> usernames);
+
User getUserByJID(String jid);
List<User> getUsersByName(Collection<String> unames);
diff --git a/juick-server/src/main/java/com/juick/service/UserServiceImpl.java b/juick-server/src/main/java/com/juick/service/UserServiceImpl.java
index 2bdc4d41..d1e4eff5 100644
--- a/juick-server/src/main/java/com/juick/service/UserServiceImpl.java
+++ b/juick-server/src/main/java/com/juick/service/UserServiceImpl.java
@@ -129,6 +129,39 @@ public class UserServiceImpl extends BaseJdbcService implements UserService {
return result;
}
+ @Override
+ // No need marks with @Transactional annotation
+ public User getFullyUserByName(final String username) {
+ if (StringUtils.isNotBlank(username)) {
+ List<User> list = getFullyUsersByNames(Collections.singletonList(username));
+ if (!list.isEmpty())
+ return list.get(0);
+ }
+ return null;
+ }
+
+ @Transactional(readOnly = true)
+ @Override
+ public List<User> getFullyUsersByNames(final Collection<String> usernames) {
+ if (CollectionUtils.isEmpty(usernames))
+ return Collections.emptyList();
+
+ return getNamedParameterJdbcTemplate().query(
+ "SELECT id, nick, passw, lang, banned FROM users WHERE nick in (:names)",
+ new MapSqlParameterSource("names", usernames),
+ (rs, rowNum) -> {
+ User user = new User();
+
+ user.setUid(rs.getInt(1));
+ user.setName(rs.getString(2));
+ user.setCredentials(rs.getString(3));
+ user.setLang(rs.getString(4));
+ user.setBanned(rs.getBoolean(5));
+
+ return user;
+ });
+ }
+
@Transactional(readOnly = true)
@Override
public User getUserByJID(final String jid) {