code: public static Expression getterX(ClassNode annotatedNode, PropertyNode pNode) {
          ClassNode owner = pNode.getDeclaringClass();
          if (annotatedNode.equals(owner)) {
              String getterName = "get" + MetaClassHelper.capitalize(pNode.getName());
              if (ClassHelper.boolean_TYPE.equals(pNode.getOriginType())) {
                  getterName = "is" + MetaClassHelper.capitalize(pNode.getName());
              }
              return callX(new VariableExpression("this"), getterName, ArgumentListExpression.EMPTY_ARGUMENTS);
          }
          return propX(new VariableExpression("this"), pNode.getName());
      }
docs: This method is similar to {@link #propX(Expression, Expression)} but will make sure that if the property
  being accessed is defined inside the classnode provided as a parameter, then a getter call is generated
  instead of a field access.
  @param annotatedNode the class node where the property node is accessed from
  @param pNode the property being accessed
  @return a method call expression or a property expression