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.

LuFullLoginDbo.java 1.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. package com.luticate.auth.dbo;
  2. import com.luticate.utils.dbo.LuDbo;
  3. import org.json.JSONArray;
  4. import org.json.JSONException;
  5. import org.json.JSONObject;
  6. import java.util.HashMap;
  7. import java.util.List;
  8. import java.util.Vector;
  9. /**
  10. * Created by robin on 11/27/15.
  11. */
  12. public class LuFullLoginDbo extends LuDbo {
  13. private LuLoginDbo _loginDbo;
  14. private List<LuPermissionDbo> _permissions;
  15. public LuLoginDbo getLoginDbo() {
  16. return _loginDbo;
  17. }
  18. public void setLoginDbo(LuLoginDbo loginDbo) {
  19. _loginDbo = loginDbo;
  20. }
  21. public List<LuPermissionDbo> getPermissions() {
  22. return _permissions;
  23. }
  24. public void setPermissions(List<LuPermissionDbo> permissions) {
  25. _permissions = permissions;
  26. }
  27. @Override
  28. public void fromJson(JSONObject json) throws JSONException {
  29. _loginDbo = new LuLoginDbo();
  30. _loginDbo.fromJson(json.getJSONObject("LoginDbo"));
  31. _permissions = new Vector<>();
  32. JSONArray array = json.getJSONArray("Permissions");
  33. for (int i = 0; i < array.length(); ++i) {
  34. LuPermissionDbo perm = new LuPermissionDbo();
  35. perm.fromJson(array.getJSONObject(i));
  36. _permissions.add(perm);
  37. }
  38. }
  39. @Override
  40. public HashMap<String, Object> toArray() {
  41. HashMap<String, Object> array = new HashMap<>();
  42. array.put("LoginDbo", _loginDbo.toArray());
  43. List<HashMap<String, Object>> permissions = new Vector<>();
  44. for (LuPermissionDbo perm : _permissions) {
  45. permissions.add(perm.toArray());
  46. }
  47. array.put("Permissions", permissions);
  48. return array;
  49. }
  50. public boolean hasPermission(String permission)
  51. {
  52. for (LuPermissionDbo perm : _permissions)
  53. {
  54. if (perm.getName().equals(permission))
  55. {
  56. return perm.getValue();
  57. }
  58. }
  59. return false;
  60. }
  61. }