Mam do Was pytanie. Mam set obiektów: rolePrivilegeSet (zestaw przywilejów dla danej roli), encja klasa RolePrivilege wygląda tak mniej więcej:
@ManyToOne
@JoinColumn(name = "role_id")
private Role role;
@ManyToOne
@JoinColumn(name = "privilege_id")
private Privilege privilege;
@Column(columnDefinition = "BOOLEAN NOT NULL DEFAULT FALSE")
@Builder.Default
private Boolean read = FALSE;
etc.
Chcę stworzyć kopię(klona) tej kolekcji rolProvilegeSet i podmienić tylko rolę na inną. Dziwne rzeczy się dzieją, jakieś z konkruencją,
Jak to zrobić najbardziej profesjonalnie? Pomożecie?
Coś takiego mam na tę chwilę:
public Set<RolePrivilege> clone (Set<RolePrivilege> rolePrivilegeSet, Role role) {
Set<RolePrivilege> rolePrivileges = rolePrivilegeSet;
for (RolePrivilege rolePrivilege: rolePrivileges){
rolePrivilege.setRole(role);
rolePrivileges.add(rolePrivilege);
}
return rolePrivileges;
}