public ImageContext createPlaceholderImageContext(boolean featured) { ImageContext context = new ImageContext("http://placehold.it/800x800"); if (theme != null && theme.getImageFormats().size() > 0) { for (String dimensionName : theme.getImageFormats().keySet()) { // Note: if only one dimension is passed for an image format (it means the image format is supposed // to respect the original image aspect ratio according to the one dimension passed), we present the // placeholder image as a square. ImageFormatDefinition definition = theme.getImageFormats().get(dimensionName); String url = MessageFormat.format("http://placehold.it/{0,number,#}x{1,number,#}", definition.getWidth() != null ? definition.getWidth() : definition.getHeight(), definition.getHeight() != null ? definition.getHeight() : definition.getWidth()); context.put("theme_" + dimensionName + "_" + ContextConstants.URL, url); } } return context; }
@Override public Object get() { Map<String, Map<String, Object>> entities = Maps.newLinkedHashMap(); for (EntityMeta meta : entityMetaRegistry.getEntities()) { Map data = Maps.newHashMap(); entities.put(meta.getEntityName(), data); } Theme theme = context.getTheme(); if (theme != null) { addAddons(entities, theme.getDefinition().getAddons(), AddonSource.THEME); addModels(entities, theme.getDefinition().getModels()); addImageFormats(entities, theme.getDefinition().getImageFormats(), AddonSource.THEME); addTypes(entities, theme.getDefinition().getProductTypes()); } addAddons(entities, platformSettings.getAddons(), AddonSource.PLATFORM); addImageFormats(entities, platformSettings.getImages(), AddonSource.PLATFORM); addModels(entities, platformSettings.getModels()); for (String entity : entities.keySet()) { for (EntityConfigurationContributor contributor : contributors.values()) { if (contributor.contributesTo().equals(entity)) { contributor.contribute(entities.get(entity)); } } } return entities; }
image.getAttachment().getExtension())); if (theme != null && theme.getImageFormats().size() > 0) { for (String dimensionName : theme.getImageFormats().keySet()) { ImageFormatDefinition definition = theme.getImageFormats().get(dimensionName); Optional<Thumbnail> bestFit = findBestFit(image, definition.getWidth(), definition.getHeight());