@Override final public SystemAndCustomAvatars getAvatars(final ApplicationUser remoteUser, final String owningObjectId) { final List<Avatar> systemAvatars = avatarManager.getAllSystemAvatars(type); final List<Avatar> avatarsForOwner = avatarManager.getCustomAvatarsForOwner(type, owningObjectId); return new SystemAndCustomAvatars(systemAvatars, avatarsForOwner); }
/** * @since v6.3 */ @GET @Path ("type/{type}/owner/{owningObjectId}") public Response getAvatars(final @PathParam ("type") String avatarType, final @PathParam ("owningObjectId") String owningObjectId) { final Avatar.Type avatarsType = Avatar.Type.getByName(avatarType); final TypeAvatarService avatarsForType = universalAvatars.getAvatars(avatarsType); if (null == avatarsForType) { return Response.status(Response.Status.NOT_FOUND).entity("avatarType").build(); } final AvatarImageResolver uriResolver = universalAvatars.getImages(avatarsType); if (null == uriResolver) { return Response.status(Response.Status.NOT_FOUND).entity("avatarType").build(); } final SystemAndCustomAvatars allAvatars = avatarsForType.getAvatars(authContext.getUser(), owningObjectId); final ApplicationUser remoteUser = authContext.getUser(); final List<AvatarBean> systemAvatarBeans = createAvatarBeans(allAvatars.getSystemAvatars(), remoteUser, uriResolver); final List<AvatarBean> customAvatarBeans = createAvatarBeans(allAvatars.getCustomAvatars(), remoteUser, uriResolver); Map<String, List<AvatarBean>> result = ImmutableMap.<String, List<AvatarBean>>builder(). put(SYSTEM_AVATARS_FIELD, systemAvatarBeans). put(CUSTOM_AVATARS_FIELD, customAvatarBeans). build(); return Response.ok(result).build(); }