Skip to content

Package: RolePermissionImpl

RolePermissionImpl

nameinstructionbranchcomplexitylinemethod
RolePermissionImpl()
M: 3 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 2 C: 0
0%
M: 1 C: 0
0%
RolePermissionImpl(KapuaId)
M: 4 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 2 C: 0
0%
M: 1 C: 0
0%
RolePermissionImpl(KapuaId, Permission)
M: 7 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 3 C: 0
0%
M: 1 C: 0
0%
RolePermissionImpl(RolePermission)
M: 16 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 5 C: 0
0%
M: 1 C: 0
0%
equals(Object)
M: 41 C: 0
0%
M: 12 C: 0
0%
M: 7 C: 0
0%
M: 13 C: 0
0%
M: 1 C: 0
0%
getPermission()
M: 14 C: 0
0%
M: 2 C: 0
0%
M: 2 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
getRoleId()
M: 3 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
hashCode()
M: 32 C: 0
0%
M: 4 C: 0
0%
M: 3 C: 0
0%
M: 5 C: 0
0%
M: 1 C: 0
0%
preUpdateAction()
M: 16 C: 0
0%
M: 4 C: 0
0%
M: 3 C: 0
0%
M: 5 C: 0
0%
M: 1 C: 0
0%
setPermission(Permission)
M: 19 C: 0
0%
M: 4 C: 0
0%
M: 3 C: 0
0%
M: 5 C: 0
0%
M: 1 C: 0
0%
setRoleId(KapuaId)
M: 5 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 2 C: 0
0%
M: 1 C: 0
0%
toString()
M: 4 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%

Coverage

1: /*******************************************************************************
2: * Copyright (c) 2016, 2022 Eurotech and/or its affiliates and others
3: *
4: * This program and the accompanying materials are made
5: * available under the terms of the Eclipse Public License 2.0
6: * which is available at https://www.eclipse.org/legal/epl-2.0/
7: *
8: * SPDX-License-Identifier: EPL-2.0
9: *
10: * Contributors:
11: * Eurotech - initial API and implementation
12: *******************************************************************************/
13: package org.eclipse.kapua.service.authorization.role.shiro;
14:
15: import org.eclipse.kapua.commons.model.AbstractKapuaEntity;
16: import org.eclipse.kapua.commons.model.id.KapuaEid;
17: import org.eclipse.kapua.commons.security.KapuaSecurityUtils;
18: import org.eclipse.kapua.model.id.KapuaId;
19: import org.eclipse.kapua.service.authorization.permission.Permission;
20: import org.eclipse.kapua.service.authorization.permission.shiro.PermissionImpl;
21: import org.eclipse.kapua.service.authorization.role.RolePermission;
22:
23: import javax.persistence.AttributeOverride;
24: import javax.persistence.AttributeOverrides;
25: import javax.persistence.Column;
26: import javax.persistence.Embedded;
27: import javax.persistence.Entity;
28: import javax.persistence.PreUpdate;
29: import javax.persistence.Table;
30: import java.util.Date;
31:
32: /**
33: * {@link RolePermission} implementation.
34: *
35: * @since 1.0.0
36: */
37: @Entity(name = "RolePermission")
38: @Table(name = "athz_role_permission")
39: public class RolePermissionImpl extends AbstractKapuaEntity implements RolePermission {
40:
41: private static final long serialVersionUID = -4107313856966377197L;
42:
43: @Embedded
44: @AttributeOverrides({
45: @AttributeOverride(name = "eid", column = @Column(name = "role_id"))
46: })
47: private KapuaEid roleId;
48:
49: @Embedded
50: private PermissionImpl permission;
51:
52: /**
53: * Constructor.
54: *
55: * @since 1.0.0
56: */
57: protected RolePermissionImpl() {
58: super();
59: }
60:
61: /**
62: * Constructor.
63: *
64: * @param scopeId The scope {@link KapuaId} to set into the {@link RolePermission}
65: * @since 1.0.0
66: */
67: public RolePermissionImpl(KapuaId scopeId) {
68: super(scopeId);
69: }
70:
71: /**
72: * Constructor.
73: *
74: * @param scopeId The scope {@link KapuaId} to set into the {@link RolePermission}
75: * @param permission The {@link Permission} to set into the {@link RolePermission}
76: * @since 1.0.0
77: */
78: public RolePermissionImpl(KapuaId scopeId, Permission permission) {
79: this(scopeId);
80:
81: setPermission(permission);
82: }
83:
84: /**
85: * Clone constructor
86: *
87: * @param rolePermission
88: * @since 1.0.0
89: */
90: public RolePermissionImpl(RolePermission rolePermission) {
91: super(rolePermission);
92:
93: setId(rolePermission.getId());
94: setRoleId(rolePermission.getRoleId());
95: setPermission(rolePermission.getPermission());
96: }
97:
98: @Override
99: public void setRoleId(KapuaId roleId) {
100: this.roleId = KapuaEid.parseKapuaId(roleId);
101: }
102:
103: @Override
104: public KapuaId getRoleId() {
105: return roleId;
106: }
107:
108: @Override
109: public void setPermission(Permission permission) {
110: PermissionImpl permissionImpl = null;
111:• if (permission != null) {
112:• permissionImpl = permission instanceof PermissionImpl ? (PermissionImpl) permission : new PermissionImpl(permission);
113: }
114: this.permission = permissionImpl;
115: }
116:
117: @Override
118: public Permission getPermission() {
119:• return permission != null ? permission : new PermissionImpl(null, null, null, null);
120: }
121:
122: @Override
123: public String toString() {
124: return getPermission().toString();
125: }
126:
127: @PreUpdate
128: protected void preUpdateAction() {
129:• if (getCreatedBy() == null) {
130: setCreatedBy(KapuaSecurityUtils.getSession().getUserId());
131: }
132:
133:• if (getCreatedOn() == null) {
134: setCreatedOn(new Date());
135: }
136: }
137:
138: @Override
139: public int hashCode() {
140: final int prime = 31;
141: int result = 1;
142:• result = prime * result + (permission == null ? 0 : permission.hashCode());
143:• result = prime * result + (roleId == null ? 0 : roleId.hashCode());
144: return result;
145: }
146:
147: @Override
148: public boolean equals(Object obj) {
149:• if (this == obj) {
150: return true;
151: }
152:• if (obj == null) {
153: return false;
154: }
155:• if (getClass() != obj.getClass()) {
156: return false;
157: }
158: RolePermissionImpl other = (RolePermissionImpl) obj;
159:• if (roleId == null) {
160:• if (other.roleId != null) {
161: return false;
162: }
163:• } else if (!roleId.equals(other.roleId)) {
164: return false;
165: }
166:
167: return getPermission().equals(other.getPermission());
168: }
169: }