@Transient @JsonProperty("accessControlTeamMaps") @JsonView(AllViews.TableRow.class) public List<?> getAccessControlTeamMapsJSON() { List<Map<?, ?>> teamMaps = list(); if (this.accessControlTeamMaps != null) { for (AccessControlTeamMap accessControlTeamMap : this.accessControlTeamMaps) { List<Map<?, ?>> appMaps = list(); if (accessControlTeamMap.getAccessControlApplicationMaps() != null) { for (AccessControlApplicationMap appMap : accessControlTeamMap.getAccessControlApplicationMaps()) { appMaps.add(map( "teamName", accessControlTeamMap.getOrganization().getName(), "roleName", appMap.getRole() != null ? appMap.getRole().getDisplayName() : "-", "appName", appMap.getApplication().getName(), "active", appMap.isActive() ) ); } } teamMaps.add(map( "roleName", accessControlTeamMap.getRole() != null ? accessControlTeamMap.getRole().getDisplayName() : "-", "teamName", accessControlTeamMap.getOrganization().getName(), "appRoles", appMaps ) ); } } return teamMaps; }