Skip to content

Commit c19217e

Browse files
committed
Cosmetic changes in ServiceRoleDefinition
1 parent 06706a5 commit c19217e

File tree

1 file changed

+54
-1
lines changed

1 file changed

+54
-1
lines changed

services-api/src/main/java/io/scalecube/services/methods/ServiceRoleDefinition.java

Lines changed: 54 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,62 @@
11
package io.scalecube.services.methods;
22

3+
import java.util.Arrays;
4+
import java.util.Objects;
35
import java.util.Set;
46
import java.util.StringJoiner;
57

6-
public record ServiceRoleDefinition(String role, Set<String> permissions) {
8+
public class ServiceRoleDefinition {
9+
10+
private final String role;
11+
private final Set<String> permissions;
12+
13+
/**
14+
* Constructor.
15+
*
16+
* @param role service role
17+
* @param permissions service permissions
18+
*/
19+
public ServiceRoleDefinition(String role, String... permissions) {
20+
this(role, Set.copyOf(Arrays.asList(permissions)));
21+
}
22+
23+
/**
24+
* Constructor.
25+
*
26+
* @param role service role
27+
* @param permissions service permissions
28+
*/
29+
public ServiceRoleDefinition(String role, Set<String> permissions) {
30+
this.role = role;
31+
this.permissions = permissions;
32+
}
33+
34+
public String role() {
35+
return role;
36+
}
37+
38+
public Set<String> permissions() {
39+
return permissions;
40+
}
41+
42+
@Override
43+
public boolean equals(Object o) {
44+
if (this == o) {
45+
return true;
46+
}
47+
if (o == null || getClass() != o.getClass()) {
48+
return false;
49+
}
50+
final var that = (ServiceRoleDefinition) o;
51+
return Objects.equals(role, that.role) && Objects.equals(permissions, that.permissions);
52+
}
53+
54+
@Override
55+
public int hashCode() {
56+
int result = Objects.hashCode(role);
57+
result = 31 * result + Objects.hashCode(permissions);
58+
return result;
59+
}
760

861
@Override
962
public String toString() {

0 commit comments

Comments
 (0)