Class ResourceCheckProcessor


  • public class ResourceCheckProcessor
    extends org.jboss.errai.ioc.rebind.ioc.extension.IOCDecoratorExtension<org.uberfire.security.annotations.ResourceCheck>

    Given a method where "project" creation permissions are required like, for instance:

     @SecuredAction(type="project", action="create")
        private void enableProjectCreation() {
            creationButton.setEnabled(true);
        }
     
     

    This processor class will append the required security check code to ensure the method body is only executed when the user is granted with the proper permission rights.

    For resource instance specific checks a parameter of a class implementing Resource is required. For instance:

     @SecuredAction(action="create")
        private void addProjectToView(Project project) {
            view,addProject(project.getName());
        }
     
     
    • Constructor Detail

      • ResourceCheckProcessor

        public ResourceCheckProcessor​(Class<org.uberfire.security.annotations.ResourceCheck> decoratesWith)
    • Method Detail

      • buildCheckStatement

        public static org.jboss.errai.codegen.Statement buildCheckStatement​(org.jboss.errai.codegen.builder.ContextualStatementBuilder authzCall,
                                                                            String onGranted,
                                                                            String onDenied)
      • generateDecorator

        public void generateDecorator​(org.jboss.errai.ioc.rebind.ioc.injector.api.Decorable decorable,
                                      org.jboss.errai.ioc.rebind.ioc.injector.api.FactoryController controller)
        Specified by:
        generateDecorator in class org.jboss.errai.ioc.rebind.ioc.extension.IOCDecoratorExtension<org.uberfire.security.annotations.ResourceCheck>
      • implementsResource

        public boolean implementsResource​(org.jboss.errai.codegen.meta.MetaClass metaClass)
      • createResourceActionCheck

        public org.jboss.errai.codegen.Statement createResourceActionCheck​(String resourceName,
                                                                           String resourceAction,
                                                                           String onGranted,
                                                                           String onDenied)
      • createGlobalActionCheck

        public org.jboss.errai.codegen.Statement createGlobalActionCheck​(String resourceType,
                                                                         String resourceAction,
                                                                         String onGranted,
                                                                         String onDenied)