public boolean isVisible(final AuthenticationSession session, final ObjectAdapter target, final Identifier identifier) {
final IdentityData targetData = encoderDecoder.encodeIdentityData(target);
final String idString = identifier.toIdentityString(Identifier.CLASS_MEMBERNAME_PARAMETERS);
if (!visibilityCache.containsKey(idString)) {
final AuthorizationRequestVisibility request = new AuthorizationRequestVisibility(session, targetData, idString);
final AuthorizationResponse response = serverFacade.authorizeVisibility(request);
final Boolean authorized = isAuthorized(response);
visibilityCache.put(idString, authorized);
}
return visibilityCache.get(idString);