Class StringPropertyAccessorGenerator

java.lang.Object
io.quarkus.spring.security.deployment.StringPropertyAccessorGenerator

final class StringPropertyAccessorGenerator extends Object
  • Method Details

    • getAccessorClassName

      static String getAccessorClassName(org.jboss.jandex.DotName className)
    • generate

      static String generate(org.jboss.jandex.DotName className, Set<org.jboss.jandex.FieldInfo> properties, io.quarkus.gizmo.ClassOutput classOutput)
      Generates a class like the following:
       @Singleton
       public class Person_1234_Accessor implements StringPropertyAccessor {
      
           public String access(Object obj, String property) {
               Person person = (Person) obj;
               if ("name".equals(property)) {
                   return person.getName();
               }
               if ("lastName".equals(property)) {
                   return person.getLastName();
               }
               throw new IllegalArgumentException("Unknown property '" + name + "'");
           }
       }
       
      This generated class is used by PrincipalNameFromParameterObjectSecurityCheck to access fields of the object referenced by security expressions