Class StringPropertyAccessorGenerator


  • final class StringPropertyAccessorGenerator
    extends Object
    • Method Detail

      • 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