private static boolean isSvgType(final Avatar avatar) { return MailAttachments.isSvgType(avatar.getContentType()); }
private boolean hasVectorIcon(final Avatar avatar) { return AvatarManager.AVATAR_IMAGE_FORMAT_SVG.getContentType().equals(avatar.getContentType()); }
@Override public ToBodyPartConsumer prepareBodyPart() throws IOException { final ToBodyPartConsumer dataAccessor = new ToBodyPartConsumer(avatar.getContentType()); // The size we provide here must match the dimensions of the embedded avatar image in // jira-components/jira-core/src/main/resources/templates/email/html/includes/header.vm , otherwise // Outlook will rewrite the image and destroy our JIRA metadata needed for JRA-25705 avatarManager.readAvatarData(avatar, MEDIUM, dataAccessor); return dataAccessor; } }
private Map<String, Object> getNonPkFields(Avatar avatar) { final Map<String, Object> fields = new HashMap<>(); fields.put(FILE_NAME, avatar.getFileName()); fields.put(CONTENT_TYPE, avatar.getContentType()); fields.put(AVATAR_TYPE, avatar.getAvatarType().getName()); fields.put(OWNER, avatar.getOwner()); fields.put(SYSTEM_AVATAR, avatar.isSystemAvatar() ? IS_SYSTEM : NOT_SYSTEM); return fields; }
private void sendAvatar(final HttpServletResponse response, final Avatar avatar, AvatarManager.ImageSize size) throws IOException { response.setContentType(avatar.getContentType()); HttpResponseHeaders.cachePrivatelyForAboutOneYear(response); final OutputStream out = response.getOutputStream(); StreamCopyingConsumer streamCopier = new StreamCopyingConsumer(out, AVATAR_BUFFER_SIZE); getAvatarManager().readAvatarData(avatar, size, streamCopier); }
public void sendAvatar(final Avatar avatar, final Avatar.Size size, final HttpServletResponse response) throws IOException { response.setContentType(avatar.getContentType()); HttpResponseHeaders.cachePrivatelyForAboutOneYear(response); final OutputStream out = response.getOutputStream(); StreamCopyingConsumer streamCopier = new StreamCopyingConsumer(out, AVATAR_BUFFER_SIZE); final AvatarManager.ImageSize avatarSize = AvatarManager.ImageSize.fromSize(size); avatarManager.readAvatarData(avatar, avatarSize, streamCopier); } }
RemoteAvatar createRemoteAvatar(final Avatar a, final boolean large, final Base64InputStreamConsumer data) { final long id = a.getId(); final String contentType = a.getContentType(); final String type = a.getAvatarType().getName(); try { if (large) { avatarManager.readAvatarData(a, AvatarManager.ImageSize.LARGE, data); } else { avatarManager.readAvatarData(a, AvatarManager.ImageSize.SMALL, data); } } catch (IOException e) { log.error("Exception trying to get Avatar image data, continuing without it", e); } return new RemoteAvatar(id, contentType, a.getOwner(), a.isSystemAvatar(), type, data.getEncoded()); }
public Avatar create(final Avatar avatar) { Assertions.notNull("avatar", avatar); Assertions.stateTrue("avatar.id must be null", avatar.getId() == null); Assertions.notNull("avatar.fileName", avatar.getFileName()); Assertions.notNull("avatar.contentType", avatar.getContentType()); Assertions.notNull("avatar.avatarType", avatar.getAvatarType()); return gvToAvatar(ofBizDelegator.createValue(AVATAR_ENTITY, getNonPkFields(avatar))); }
public void update(final Avatar avatar) { Assertions.notNull("avatar", avatar); Long avatarId = Assertions.notNull("avatar.id", avatar.getId()); Assertions.notNull("avatar.fileName", avatar.getFileName()); Assertions.notNull("avatar.contentType", avatar.getContentType()); Assertions.notNull("avatar.avatarType", avatar.getAvatarType()); Assertions.notNull("avatar.owner", avatar.getOwner()); final GenericValue gv = ofBizDelegator.findById(AVATAR_ENTITY, avatarId); gv.setNonPKFields(getNonPkFields(avatar)); try { gv.store(); } catch (GenericEntityException e) { throw new DataAccessException(e); } finally { taggedAvatars.remove(avatarId); avatars.remove(avatarId); } }