package fr.openwide.core.wicket.more.security.authorization; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.lang.annotation.Inherited; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; import fr.openwide.core.wicket.more.link.descriptor.builder.LinkDescriptorBuilder; import fr.openwide.core.wicket.more.link.descriptor.builder.state.parameter.chosen.common.IOneChosenParameterState; import fr.openwide.core.wicket.more.link.descriptor.builder.state.validator.IValidatorState; /** * @deprecated Use validation features in {@link LinkDescriptorBuilder LinkDescriptors} instead. * Here's how to add permission validation to your link descriptors: * <ul> * <li>When building a LinkDescriptor mapper: <code>new LinkDescriptorBuilder().page(...).model(MyParameterClass.class).map("id").permission(MyPermissionConstants.MY_PERMISSION).build()</code> * <li>When building a LinkDescriptor directly (legacy syntax): <code>new LinkDescriptorBuilder().page(...).map("id", myParameterModel, MyParameterClass.class).permission(MyPermissionConstants.MY_PERMISSION).build()</code> * </ul> * @see IValidatorState#permission(org.apache.wicket.model.IModel, String, String...) * @see IOneChosenParameterState#permission(String) */ @Deprecated @Retention(RetentionPolicy.RUNTIME) @Target( { ElementType.TYPE }) @Documented @Inherited public @interface AuthorizeRenderIfPermissionOnModelObject { String[] permissions(); }