Guest User

Untitled

a guest
Jul 22nd, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.07 KB | None | 0 0
  1. // Java sucks
  2.  
  3. // old version without generics
  4. public Set<User> getUsersOld(String userIds) {
  5. Set<User> users = Sets.newHashSet();
  6. if (userIds == null) return users;
  7. for (String userId : userIds.split(",")) {
  8. userId = userId.trim();
  9. User user = userManager.get(userId);
  10. if (user != null) users.add(user);
  11. }
  12. return users;
  13. }
  14.  
  15. // new version with generics
  16. public Set<User> getUsersNew(String userIds) {
  17. final UserManager fUserManager = userManager; // retarded
  18. return getEntities(userIds, ",",
  19. new GetCallback<User>() {
  20. User get(key) {
  21. fUserManager.get(key);
  22. }
  23. });
  24. }
  25.  
  26. protected <T> Set<T> getEntities(String keys, String delimiter, GetCallback<T> fetchCallback) {
  27. Set<T> ts = Sets.newHashSet();
  28. if (keys == null) return ts;
  29.  
  30. for (String v : keys.split(delimiter)) {
  31. v = v.trim();
  32. T t = fetchCallback.get(v);
  33. if (t != null) ts.add(t);
  34. }
  35.  
  36. return ts;
  37. }
  38.  
  39. interface GetCallback<T> {
  40. <T> T get(String key);
  41. }
Add Comment
Please, Sign In to add comment