Class PackageClassifier

java.lang.Object
org.fhirfrog.frog.ant.ig.PackageClassifier

public class PackageClassifier extends Object
Classifies FHIR packages from the local package cache as include, exclude, or skip for a given target FHIR version (R4 or R5).

Uses FilesystemPackageCacheManager to resolve packages from ~/.fhir/packages, downloading missing packages automatically. Walks the full transitive dependency closure via NpmPackage.dependencies().

Classification Rules (for target R4)

  • Type fhir.core or Coreskip (HAPI loads core implicitly)
  • Type Toolskip
  • All declared FHIR versions start with "5."exclude
  • Any declared FHIR version starts with "4."include
  • Constructor Details

  • Method Details

    • classify

      public PackageClassifier.ClassificationResult classify(Map<String,String> directDependencies) throws IOException
      Resolves and classifies all packages in the transitive dependency tree rooted at the given direct dependencies.
      Parameters:
      directDependencies - map of package name → version from sushi-config.yaml
      Returns:
      classification result with include and exclude lists
      Throws:
      IOException