You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

LuticateUsersBusiness.java 1.8KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package com.luticate.auth.business;
  2. import com.luticate.auth.dataaccess.LuticateUsersDataAccess;
  3. import com.luticate.auth.dbo.LuFullLoginDbo;
  4. import com.luticate.auth.dbo.LuPermissionDbo;
  5. import com.luticate.utils.business.LuBusinessManager;
  6. import com.luticate.utils.business.LuPromise;
  7. import com.luticate.auth.dbo.LuLoginDbo;
  8. import com.luticate.utils.dbo.LuDataAccessConfigDbo;
  9. /**
  10. *
  11. * Created by robin on 11/27/15.
  12. */
  13. public class LuticateUsersBusiness extends LuBusinessManager {
  14. public static LuPromise<LuLoginDbo> login(LuDataAccessConfigDbo config, String username, String password)
  15. {
  16. return LuticateUsersDataAccess.login(config, username, password);
  17. }
  18. public static LuPromise<LuLoginDbo> logout(LuDataAccessConfigDbo config)
  19. {
  20. return LuticateUsersDataAccess.logout(config);
  21. }
  22. public static LuPromise<LuFullLoginDbo> loginFull(final LuDataAccessConfigDbo config, String username, String password)
  23. {
  24. final LuPromise<LuFullLoginDbo> promise = new LuPromise<>();
  25. login(config, username, password).then(new LuPromise.LuConsumer<LuLoginDbo>() {
  26. @Override
  27. public void execute(final LuLoginDbo user) {
  28. LuticatePermissionsBusiness.getAllEffectiveMe(config).then(new LuPromise.LuConsumer<LuPermissionDbo.LuMultiplePermissionDbo>() {
  29. @Override
  30. public void execute(LuPermissionDbo.LuMultiplePermissionDbo permissions) {
  31. LuFullLoginDbo dbo = new LuFullLoginDbo();
  32. dbo.setLoginDbo(user);
  33. dbo.setPermissions(permissions.getData());
  34. promise.resolve(dbo);
  35. }
  36. }, promise.rejectConsumer());
  37. }
  38. }, promise.rejectConsumer());
  39. return promise;
  40. }
  41. }