doc-architect/doc-architect-core/src/main/java/com/docarchitect/core/scanner/impl/java/JaxRsApiScanner.java [322:349]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        cu.findAll(ClassOrInterfaceDeclaration.class).forEach(classDecl -> {
            // Check if class/interface has @Path annotation
            Optional<AnnotationExpr> pathAnnotation = classDecl.getAnnotations().stream()
                .filter(ann -> PATH_ANNOTATION.equals(ann.getNameAsString()))
                .findFirst();

            if (pathAnnotation.isEmpty()) {
                return; // Skip classes without @Path
            }

            String className = classDecl.getNameAsString();
            String packageName = cu.getPackageDeclaration()
                .map(pd -> pd.getNameAsString())
                .orElse("");

            String fullyQualifiedName = packageName.isEmpty() ? className : packageName + "." + className;

            // Extract base path from class-level @Path
            String basePath = extractPathFromAnnotation(pathAnnotation.get());

            // Extract class-level @Produces and @Consumes
            String classProduces = extractContentType(classDecl.getAnnotations(), PRODUCES_ANNOTATION);
            String classConsumes = extractContentType(classDecl.getAnnotations(), CONSUMES_ANNOTATION);

            log.debug("Found JAX-RS resource: {} with base path: {}", fullyQualifiedName, basePath);

            // Find all HTTP method annotated methods
            classDecl.getMethods().forEach(method -> {
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



doc-architect/doc-architect-core/src/main/java/com/docarchitect/core/scanner/impl/java/JaxRsApiScanner.java [470:497]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        cu.findAll(ClassOrInterfaceDeclaration.class).forEach(classDecl -> {
            // Check if class/interface has @Path annotation
            Optional<AnnotationExpr> pathAnnotation = classDecl.getAnnotations().stream()
                .filter(ann -> PATH_ANNOTATION.equals(ann.getNameAsString()))
                .findFirst();

            if (pathAnnotation.isEmpty()) {
                return; // Skip classes without @Path
            }

            String className = classDecl.getNameAsString();
            String packageName = cu.getPackageDeclaration()
                .map(pd -> pd.getNameAsString())
                .orElse("");

            String fullyQualifiedName = packageName.isEmpty() ? className : packageName + "." + className;

            // Extract base path from class-level @Path
            String basePath = extractPathFromAnnotation(pathAnnotation.get());

            // Extract class-level @Produces and @Consumes
            String classProduces = extractContentType(classDecl.getAnnotations(), PRODUCES_ANNOTATION);
            String classConsumes = extractContentType(classDecl.getAnnotations(), CONSUMES_ANNOTATION);

            log.debug("Found JAX-RS resource: {} with base path: {}", fullyQualifiedName, basePath);

            // Find all HTTP method annotated methods
            classDecl.getMethods().forEach(method -> {
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



