package org.orienteer.core.component.visualizer; import com.orientechnologies.orient.core.metadata.schema.OProperty; import com.orientechnologies.orient.core.metadata.schema.OType; import com.orientechnologies.orient.core.record.impl.ODocument; import org.apache.wicket.Component; import org.apache.wicket.model.IModel; import org.orienteer.core.component.property.DisplayMode; import org.orienteer.core.component.property.ImageEditPanel; import org.orienteer.core.component.property.ImageViewPanel; /** * {@link IVisualizer} to display binary images. */ public class ImageVisualizer extends AbstractSimpleVisualizer { public ImageVisualizer() { super("image", false, OType.BINARY); } @Override public <V> Component createComponent(String id, DisplayMode mode, IModel<ODocument> documentModel, IModel<OProperty> propertyModel, IModel<V> valueModel) { switch (mode) { case VIEW: return new ImageViewPanel<V>(id, valueModel); case EDIT: return new ImageEditPanel(id, (IModel<byte[]>)valueModel); default: return null; } } }