Package uno.anahata.asi.nb.tools.project.components
package uno.anahata.asi.nb.tools.project.components
Defines the structural components and domain model for NetBeans project mapping.
This package provides a hierarchical representation of a project's internal structure, bridging the gap between physical files and logical Java types. It employs a "Refined Project Model" that categorizes workspace elements into Java source groups, resource folders, and project nodes.
Core Architectural Features:
- Hybrid Scanning: Uses the NetBeans
ClassIndexfor high-speed logical type discovery and physical filesystem walks for non-indexed resources (e.g.,package-info.java, images). - Recursive Modeling: Implements a composite pattern via
ProjectNodefor hierarchical size calculation and Markdown rendering. - VCS Awareness:
ProjectComponentintegrates with the IDE's Node API to extract version control badges and status.
- Author:
- anahata
-
ClassesClassDescriptionA domain object representing a logical Java package within a project.A specialized container for a Java source group (e.g., src/main/java).A leaf or branch node representing a physical file or a logical Java type.The abstract base class for all structural nodes in the project model.The high-level orchestrator for the refined project structure model.A domain object representing a physical directory containing project resources.A specialized container for a physical resource source group (e.g., src/main/resources).

