doc-architect/doc-architect-core/src/main/java/com/docarchitect/core/scanner/impl/dotnet/StreamizKafkaScanner.java [239:251]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    private String extractClassName(Path file, String content) {
        // Try to extract from namespace and class declaration
        Pattern namespacePattern = Pattern.compile("namespace\\s+([\\w.]+)");
        Pattern classPattern = Pattern.compile("(?:public|internal|private)?\\s*(?:static)?\\s*(?:partial)?\\s*class\\s+(\\w+)");

        Matcher namespaceMatcher = namespacePattern.matcher(content);
        Matcher classMatcher = classPattern.matcher(content);

        String namespace = namespaceMatcher.find() ? namespaceMatcher.group(1) : "";
        String className = classMatcher.find() ? classMatcher.group(1) : file.getFileName().toString().replace(".cs", "");

        return namespace.isEmpty() ? className : namespace + "." + className;
    }
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



doc-architect/doc-architect-core/src/main/java/com/docarchitect/core/scanner/impl/dotnet/GrpcServiceScanner.java [192:203]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    private String extractClassName(Path file, String content) {
        Pattern namespacePattern = Pattern.compile("namespace\\s+([\\w.]+)");
        Pattern classPattern = Pattern.compile("(?:public|internal)?\\s*class\\s+(\\w+)");

        Matcher namespaceMatcher = namespacePattern.matcher(content);
        Matcher classMatcher = classPattern.matcher(content);

        String namespace = namespaceMatcher.find() ? namespaceMatcher.group(1) : "";
        String className = classMatcher.find() ? classMatcher.group(1) : file.getFileName().toString().replace(".cs", "");

        return namespace.isEmpty() ? className : namespace + "." + className;
    }
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



