package fr.openwide.core.wicket.more.link.descriptor.generator; import org.apache.wicket.Component; import org.apache.wicket.model.IDetachable; import org.apache.wicket.request.resource.ResourceReference; import fr.openwide.core.wicket.more.link.descriptor.DynamicImage; /** * An {@link ILinkGenerator} pointing to a {@link ResourceReference} that is an image. * * <p>Re-implementing this interface is not recommended, as it may be extended with additional methods without prior notice. * <p><strong>Warning:</strong> this interface extends {@link IDetachable}. Thus, it <em>must</em> be detached before serialization. * * @see ILinkGenerator */ public interface IImageResourceLinkGenerator extends ILinkGenerator, IDetachable { /** * Creates a {@link DynamicImage} that points to the same resource than this descriptor, with the same parameters. * <p><strong>Note:</strong> special conditions apply to the rendering of this image if the parameters are invalid. * See {@link DynamicImage} for more information. * @return A {@link DynamicImage} matching this link descriptor. * @see DynamicImage */ DynamicImage image(String wicketId); /** * {@inheritDoc} */ @Override IImageResourceLinkGenerator wrap(Component component); /** * @see #chain(ILinkGenerator) */ IImageResourceLinkGenerator chain(IImageResourceLinkGenerator other); }