private String rasterAvatarFileName(final Avatar avatar, final Avatar.Size size) { return removeExtension(size.param + "_" + avatar.getFileName()) + PNG_EXTENSION; }
private String getAvatarPath(final Avatar avatar, final ImageSize size) { if (hasVectorIcon(avatar)) { return AVATAR_CLASSPATH_PREFIX + avatar.getFileName(); } else { return AVATAR_CLASSPATH_PREFIX + size.getFilenameFlag() + avatar.getFileName(); } }
@Override public boolean apply(@Nullable final Avatar input) { if (null == input) { return false; } if (Avatar.Type.PROJECT.equals(type)) { return !Avatar.demotedSystemProjectAvatars.contains(input.getFileName()); } if (Avatar.Type.USER.equals(type)) { return !Avatar.demotedSystemUserAvatars.contains(input.getFileName()); } return true; } };
File getAvatarFile(final Avatar avatar, final String sizeFlag) { final File base = getAvatarBaseDirectory(); return new File(base, avatar.getId() + "_" + sizeFlag + avatar.getFileName()); }
if (avatarsToCreate.contains(avatar.getFileName())) avatarsToCreate.remove(avatar.getFileName());
private void setSystemDefaultForAvatar(Avatar avatar, boolean isSystemAvatar) { try { log.info(String.format("Changing '%s' system avatar status to " + isSystemAvatar, avatar.getFileName())); GenericValue gv = getOfBizDelegator().findById(AVATAR_ENTITY, avatar.getId()); gv.set(SYSTEM_AVATAR_FIELD, isSystemAvatar ? IS_SYSTEM : NOT_SYSTEM); gv.store(); } catch (GenericEntityException e) { log.error(String.format("Error updating '%s' system avatar status", avatar.getFileName()), e); } }
@VisibleForTesting File createAvatarFile(Avatar avatar, String flag) throws IOException { final File base = getAvatarBaseDirectory(); createDirectoryIfAbsent(base); return new File(base, avatar.getId() + "_" + flag + avatar.getFileName()); }
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; }
public File createAvatarFile(Avatar avatar, String flag) throws IOException { final File base = getAvatarBaseDirectory(); createDirectoryIfAbsent(base); return new File(base, avatar.getId() + "_" + flag + avatar.getFileName()); }
private void transcodeAndTag(final Avatar avatar, final Avatar.Size size, final File transcoded) throws IOException { try (final OutputStream outputStream = new FileOutputStream(transcoded); final InputStream svgFileStream = AvatarManagerImpl.class.getResourceAsStream("/avatars/" + avatar.getFileName())) { final TranscoderInput transcoderInput = new TranscoderInput(svgFileStream); final TranscoderOutput transcoderOutput = new TranscoderOutput(outputStream); final PNGTranscoder transcoder = newPNGTranscoder(size); transcoder.transcode(transcoderInput, transcoderOutput); avatarTagger.tagSingleAvatarFile(transcoded, transcoded); } catch (TranscoderException e) { throw new RuntimeException(e); } }
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); } }