Skip to content

Add missing Javadoc to API subprojects #2218

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 3, 2025
Merged

Add missing Javadoc to API subprojects #2218

merged 1 commit into from
Apr 3, 2025

Conversation

gnodet
Copy link
Contributor

@gnodet gnodet commented Apr 2, 2025

This PR adds missing Javadoc to various classes and interfaces in the API subprojects.

Changes:

  • Add class-level and method-level Javadoc to various classes in api/ subprojects
  • Add missing package-info.java for org.apache.maven.di.tool package
  • Enhance existing package-info.java files with more detailed documentation
  • Ensure consistent Javadoc style across the API

These changes improve the API documentation, making it more comprehensive and consistent, which will help developers using the Maven API.

@elharo elharo self-requested a review April 2, 2025 13:29
@@ -24,28 +24,69 @@
import java.util.Objects;
import java.util.Set;

/**
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not for this PR, but I wonder if we should have a different name here to avoid confusion with Java enums, which these aren't

private static class DefaultPathScope extends DefaultExtensibleEnum implements PathScope {
private final ProjectScope projectScope;
private final Set<DependencyScope> dependencyScopes;

/**
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

again not for this PR, but why is this all in one class? It feels like these should be split out to different classes

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This whole class is package protected and the classes are even private. Ideally they'd be refactored as records. And they'd become a one line record definition (we may need the toString though).
Having them top-level classes make them more visible (not in the java sense), and I don't think they need to be.

@gnodet gnodet force-pushed the add-api-javadoc branch 2 times, most recently from d65222b to c416845 Compare April 3, 2025 11:03
- Add missing class-level and method-level Javadoc to various classes in api/ subprojects
- Add missing type parameter Javadoc to parameterized classes
- Fix Javadoc errors by escaping angle brackets in code examples
- Fix Javadoc reference errors in TypeRegistry
- Remove cross-module references in TypeRegistry Javadoc
- Enhance javadoc for Config.Source enum to clarify when properties are evaluated
- Add missing package-info.java for org.apache.maven.di.tool package
- Enhance existing package-info.java files with more detailed documentation
- Ensure consistent Javadoc style across the API
@gnodet gnodet force-pushed the add-api-javadoc branch from c416845 to ac7365d Compare April 3, 2025 11:12
@gnodet gnodet added this to the 4.0.0-rc-4 milestone Apr 3, 2025
@gnodet gnodet merged commit 1614e53 into master Apr 3, 2025
15 of 20 checks passed
@slawekjaranowski slawekjaranowski deleted the add-api-javadoc branch June 7, 2025 12:56
@slawekjaranowski
Copy link
Member

source branch deleted

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants