code: private void processJsonPropertyAnnotations(final RoundEnvironment roundEnv) {
      final Set<? extends Element> elements = roundEnv.getElementsAnnotatedWith(JsonProperty.class);
      for (final Element e : elements) {
        if (e.getEnclosingElement() == null) {
          continue;
        }
        final Element parentElement = e.getEnclosingElement().getEnclosingElement();
        if (parentElement == null) {
          continue;
        }
        if (!(parentElement instanceof TypeElement)) {
          continue;
        }
        final TypeElement parent = (TypeElement) parentElement;
        final String parentJavaDoc = processingEnv.getElementUtils().getDocComment(parent);
        final String parentName = parent.getQualifiedName().toString();
  
        final TransferClass klass = getOrCreateTransferClass(parentName, parentJavaDoc);
  
        klass.add(e.toString(), makeTypeDescriptor(e.asType()));
      }
    }
docs: Go through a Jackson-annotated constructor, and produce {@link TransferClass}es representing
  what we found.