diff --git a/pkl-cli/src/main/kotlin/org/pkl/cli/CliProjectPackager.kt b/pkl-cli/src/main/kotlin/org/pkl/cli/CliProjectPackager.kt index 7f5322a1..d227c9df 100644 --- a/pkl-cli/src/main/kotlin/org/pkl/cli/CliProjectPackager.kt +++ b/pkl-cli/src/main/kotlin/org/pkl/cli/CliProjectPackager.kt @@ -36,7 +36,7 @@ class CliProjectPackager( ) : CliProjectCommand(baseOptions, projectDirs) { private fun runApiTests(project: Project) { - val apiTests = project.`package`!!.apiTests + val apiTests = project.`package`!!.apiTests() if (apiTests.isEmpty()) return val normalizeApiTests = apiTests.map { project.projectDir.resolve(it).toUri() } val testRunner = @@ -49,7 +49,7 @@ class CliProjectPackager( try { testRunner.run() } catch (e: CliTestException) { - throw CliException(ErrorMessages.create("packageTestsFailed", project.`package`!!.uri)) + throw CliException(ErrorMessages.create("packageTestsFailed", project.`package`!!.uri())) } } @@ -67,8 +67,8 @@ class CliProjectPackager( } // Require that all local projects are included projects.forEach { proj -> - proj.dependencies.localDependencies.values.forEach { localDep -> - val projectDir = Path.of(localDep.projectFileUri).parent + proj.dependencies.localDependencies().values.forEach { localDep -> + val projectDir = Path.of(localDep.projectFileUri()).parent if (projects.none { it.projectDir == projectDir }) { throw CliException( ErrorMessages.create("missingProjectInPackageCommand", proj.projectDir, projectDir) diff --git a/pkl-core/src/main/java/org/pkl/core/module/ProjectDependenciesManager.java b/pkl-core/src/main/java/org/pkl/core/module/ProjectDependenciesManager.java index 5ed77497..1194f938 100644 --- a/pkl-core/src/main/java/org/pkl/core/module/ProjectDependenciesManager.java +++ b/pkl-core/src/main/java/org/pkl/core/module/ProjectDependenciesManager.java @@ -70,7 +70,7 @@ public final class ProjectDependenciesManager { SecurityManager securityManager) { this.declaredDependencies = declaredDependencies; // new URI("scheme://host/a/b/c.txt").resolve(".") == new URI("scheme://host/a/b/") - this.projectBaseUri = IoUtils.resolve(declaredDependencies.getProjectFileUri(), "."); + this.projectBaseUri = IoUtils.resolve(declaredDependencies.projectFileUri(), "."); this.moduleResolver = moduleResolver; this.securityManager = securityManager; } @@ -88,7 +88,7 @@ public final class ProjectDependenciesManager { } var projectDeps = getProjectDeps(); myDependencies = doBuildResolvedDependenciesForProject(declaredDependencies, projectDeps); - for (var localPkg : declaredDependencies.getLocalDependencies().values()) { + for (var localPkg : declaredDependencies.localDependencies().values()) { ensureLocalProjectDependencyInitialized(localPkg, projectDeps); } } @@ -97,14 +97,14 @@ public final class ProjectDependenciesManager { private void ensureLocalProjectDependencyInitialized( DeclaredDependencies localProjectDependencies, ProjectDeps projectDeps) { // turn `package:` scheme into `projectpackage`: scheme - var uri = PackageUri.create("project" + localProjectDependencies.getMyPackageUri()); + var uri = PackageUri.create("project" + localProjectDependencies.myPackageUri()); if (localPackageDependencies.containsKey(uri)) { return; } var resolvedDeps = doBuildResolvedDependenciesForProject(localProjectDependencies, projectDeps); localPackageDependencies.put(uri, resolvedDeps); // TODO: check circular imports (should not be possible) - for (var declaredDeps : localProjectDependencies.getLocalDependencies().values()) { + for (var declaredDeps : localProjectDependencies.localDependencies().values()) { ensureLocalProjectDependencyInitialized(declaredDeps, projectDeps); } } @@ -124,22 +124,21 @@ public final class ProjectDependenciesManager { DeclaredDependencies declaredDeps, ProjectDeps resolvedProjectDeps) { var ret = new HashMap( - declaredDeps.getRemoteDependencies().size() - + declaredDeps.getLocalDependencies().size()); - for (var entry : declaredDeps.getLocalDependencies().entrySet()) { + declaredDeps.remoteDependencies().size() + declaredDeps.localDependencies().size()); + for (var entry : declaredDeps.localDependencies().entrySet()) { var localDeclaredDependencies = entry.getValue(); - var packageUri = localDeclaredDependencies.getMyPackageUri(); + var packageUri = localDeclaredDependencies.myPackageUri(); assert packageUri != null; var canonicalPackageUri = - CanonicalPackageUri.fromPackageUri(localDeclaredDependencies.getMyPackageUri()); + CanonicalPackageUri.fromPackageUri(localDeclaredDependencies.myPackageUri()); var resolvedDep = resolvedProjectDeps.get(canonicalPackageUri); if (resolvedDep == null) { throw new PackageLoadError("unresolvedProjectDependency", packageUri); } - checkProjectDependencyOutOfDate(declaredDeps.getProjectFileUri(), packageUri, resolvedDep); + checkProjectDependencyOutOfDate(declaredDeps.projectFileUri(), packageUri, resolvedDep); ret.put(entry.getKey(), resolvedDep); } - for (var entry : declaredDeps.getRemoteDependencies().entrySet()) { + for (var entry : declaredDeps.remoteDependencies().entrySet()) { var remoteDep = entry.getValue(); var packageUri = CanonicalPackageUri.fromPackageUri(remoteDep.getPackageUri()); var resolvedDep = resolvedProjectDeps.get(packageUri); @@ -147,7 +146,7 @@ public final class ProjectDependenciesManager { throw new PackageLoadError("unresolvedProjectDependency", entry.getValue().getPackageUri()); } checkProjectDependencyOutOfDate( - declaredDeps.getProjectFileUri(), remoteDep.getPackageUri(), resolvedDep); + declaredDeps.projectFileUri(), remoteDep.getPackageUri(), resolvedDep); ret.put(entry.getKey(), resolvedDep); } return ret; @@ -220,7 +219,7 @@ public final class ProjectDependenciesManager { } public URI getProjectFileUri() { - return declaredDependencies.getProjectFileUri(); + return declaredDependencies.projectFileUri(); } private ProjectDeps getProjectDeps() { diff --git a/pkl-core/src/main/java/org/pkl/core/project/CanonicalPackageUri.java b/pkl-core/src/main/java/org/pkl/core/project/CanonicalPackageUri.java index 8ec183b1..adc96f21 100644 --- a/pkl-core/src/main/java/org/pkl/core/project/CanonicalPackageUri.java +++ b/pkl-core/src/main/java/org/pkl/core/project/CanonicalPackageUri.java @@ -17,7 +17,6 @@ package org.pkl.core.project; import java.net.URI; import java.net.URISyntaxException; -import java.util.Objects; import org.pkl.core.PklBugException; import org.pkl.core.packages.PackageUri; import org.pkl.core.util.ErrorMessages; @@ -29,10 +28,7 @@ import org.pkl.core.util.ErrorMessages; * package://example.com/foo/bar@0}. Does not include a URI's userinfo, query params or fragment * segments. */ -public final class CanonicalPackageUri { - private final URI baseUri; - private final int majorVersion; - +public record CanonicalPackageUri(URI baseUri, int majorVersion) { public static CanonicalPackageUri fromPackageUri(PackageUri packageUri) { var uri = packageUri.getUri(); URI baseUri; @@ -71,17 +67,18 @@ public final class CanonicalPackageUri { return new CanonicalPackageUri(baseUri, majorVersion); } - public CanonicalPackageUri(URI baseUri, int majorVersion) { - this.baseUri = baseUri; - this.majorVersion = majorVersion; - } - - @SuppressWarnings("unused") + /** + * @deprecated As of 0.28.0, replaced by {@link #majorVersion()}. + */ + @Deprecated(forRemoval = true) public int getMajorVersion() { return majorVersion; } - @SuppressWarnings("unused") + /** + * @deprecated As of 0.28.0, replaced by {@link #baseUri()}. + */ + @Deprecated(forRemoval = true) public URI getBaseUri() { return baseUri; } @@ -98,11 +95,6 @@ public final class CanonicalPackageUri { return majorVersion == that.majorVersion && baseUri.equals(that.baseUri); } - @Override - public int hashCode() { - return Objects.hash(baseUri, majorVersion); - } - @Override public String toString() { return baseUri + "@" + majorVersion; diff --git a/pkl-core/src/main/java/org/pkl/core/project/DeclaredDependencies.java b/pkl-core/src/main/java/org/pkl/core/project/DeclaredDependencies.java index 2bbb2a62..188baa1e 100644 --- a/pkl-core/src/main/java/org/pkl/core/project/DeclaredDependencies.java +++ b/pkl-core/src/main/java/org/pkl/core/project/DeclaredDependencies.java @@ -21,35 +21,39 @@ import org.pkl.core.packages.Dependency.RemoteDependency; import org.pkl.core.packages.PackageUri; import org.pkl.core.util.Nullable; -public final class DeclaredDependencies { - private final Map remoteDependencies; - private final Map localDependencies; - private final URI projectFileUri; - private final @Nullable PackageUri myPackageUri; - - public DeclaredDependencies( - Map remoteDependencies, - Map localDependencies, - URI projectFileUri, - @Nullable PackageUri myPackageUri) { - this.remoteDependencies = remoteDependencies; - this.localDependencies = localDependencies; - this.projectFileUri = projectFileUri; - this.myPackageUri = myPackageUri; - } - +public record DeclaredDependencies( + Map remoteDependencies, + Map localDependencies, + URI projectFileUri, + @Nullable PackageUri myPackageUri) { + /** + * @deprecated As of 0.28.0, replaced by {@link #localDependencies()}. + */ + @Deprecated(forRemoval = true) public Map getLocalDependencies() { return localDependencies; } + /** + * @deprecated As of 0.28.0, replaced by {@link #remoteDependencies()}. + */ + @Deprecated(forRemoval = true) public Map getRemoteDependencies() { return remoteDependencies; } + /** + * @deprecated As of 0.28.0, replaced by {@link #projectFileUri()}. + */ + @Deprecated(forRemoval = true) public URI getProjectFileUri() { return projectFileUri; } + /** + * @deprecated As of 0.28.0, replaced by {@link #myPackageUri()}. + */ + @Deprecated(forRemoval = true) public @Nullable PackageUri getMyPackageUri() { return myPackageUri; } diff --git a/pkl-core/src/main/java/org/pkl/core/project/Package.java b/pkl-core/src/main/java/org/pkl/core/project/Package.java index 9c30e866..e2a71549 100644 --- a/pkl-core/src/main/java/org/pkl/core/project/Package.java +++ b/pkl-core/src/main/java/org/pkl/core/project/Package.java @@ -18,209 +18,145 @@ package org.pkl.core.project; import java.net.URI; import java.nio.file.Path; import java.util.List; -import java.util.Objects; import org.pkl.core.Version; import org.pkl.core.packages.PackageUri; import org.pkl.core.util.Nullable; /** Java representation of class {@code pkl.Project#Package} */ @SuppressWarnings("unused") -public final class Package { - - private final String name; - private final PackageUri uri; - private final Version version; - private final URI packageZipUrl; - private final @Nullable String description; - private final List authors; - private final @Nullable URI website; - private final @Nullable URI documentation; - private final @Nullable URI sourceCode; - private final @Nullable String sourceCodeUrlScheme; - private final @Nullable String license; - private final @Nullable String licenseText; - private final @Nullable URI issueTracker; - private final List apiTests; - private final List exclude; - - public Package( - String name, - PackageUri uri, - Version version, - URI packageZipUrl, - @Nullable String description, - List authors, - @Nullable URI website, - @Nullable URI documentation, - @Nullable URI sourceCode, - @Nullable String sourceCodeUrlScheme, - @Nullable String license, - @Nullable String licenseText, - @Nullable URI issueTracker, - List apiTests, - List exclude) { - this.name = name; - this.uri = uri; - this.version = version; - this.packageZipUrl = packageZipUrl; - this.description = description; - this.authors = authors; - this.website = website; - this.documentation = documentation; - this.sourceCode = sourceCode; - this.sourceCodeUrlScheme = sourceCodeUrlScheme; - this.license = license; - this.licenseText = licenseText; - this.issueTracker = issueTracker; - this.apiTests = apiTests; - this.exclude = exclude; - } - +public record Package( + String name, + PackageUri uri, + Version version, + URI packageZipUrl, + @Nullable String description, + List authors, + @Nullable URI website, + @Nullable URI documentation, + @Nullable URI sourceCode, + @Nullable String sourceCodeUrlScheme, + @Nullable String license, + @Nullable String licenseText, + @Nullable URI issueTracker, + List apiTests, + List exclude) { + /** + * @deprecated As of 0.28.0, replaced by {@link #name()}. + */ + @Deprecated(forRemoval = true) public String getName() { return name; } + /** + * @deprecated As of 0.28.0, replaced by {@link #uri()}. + */ + @Deprecated(forRemoval = true) public PackageUri getUri() { return uri; } + /** + * @deprecated As of 0.28.0, replaced by {@link #version()}. + */ + @Deprecated(forRemoval = true) public Version getVersion() { return version; } + /** + * @deprecated As of 0.28.0, replaced by {@link #packageZipUrl()}. + */ + @Deprecated(forRemoval = true) public URI getPackageZipUrl() { return packageZipUrl; } + /** + * @deprecated As of 0.28.0, replaced by {@link #description()}. + */ + @Deprecated(forRemoval = true) public @Nullable String getDescription() { return description; } + /** + * @deprecated As of 0.28.0, replaced by {@link #authors()}. + */ + @Deprecated(forRemoval = true) public List getAuthors() { return authors; } + /** + * @deprecated As of 0.28.0, replaced by {@link #website()}. + */ + @Deprecated(forRemoval = true) public @Nullable URI getWebsite() { return website; } + /** + * @deprecated As of 0.28.0, replaced by {@link #documentation()}. + */ + @Deprecated(forRemoval = true) public @Nullable URI getDocumentation() { return documentation; } + /** + * @deprecated As of 0.28.0, replaced by {@link #sourceCode()}. + */ + @Deprecated(forRemoval = true) public @Nullable URI getSourceCode() { return sourceCode; } + /** + * @deprecated As of 0.28.0, replaced by {@link #sourceCodeUrlScheme()}. + */ + @Deprecated(forRemoval = true) public @Nullable String getSourceCodeUrlScheme() { return sourceCodeUrlScheme; } + /** + * @deprecated As of 0.28.0, replaced by {@link #licenseText()}. + */ + @Deprecated(forRemoval = true) public @Nullable String getLicenseText() { return licenseText; } + /** + * @deprecated As of 0.28.0, replaced by {@link #license()}. + */ + @Deprecated(forRemoval = true) public @Nullable String getLicense() { return license; } + /** + * @deprecated As of 0.28.0, replaced by {@link #issueTracker()}. + */ + @Deprecated(forRemoval = true) public @Nullable URI getIssueTracker() { return issueTracker; } + /** + * @deprecated As of 0.28.0, replaced by {@link #apiTests()}. + */ + @Deprecated(forRemoval = true) public List getApiTests() { return apiTests; } + /** + * @deprecated As of 0.28.0, replaced by {@link #exclude()}. + */ + @Deprecated(forRemoval = true) public List getExclude() { return exclude; } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - Package aPackage = (Package) o; - return name.equals(aPackage.name) - && uri.equals(aPackage.uri) - && version.equals(aPackage.version) - && Objects.equals(description, aPackage.description) - && authors.equals(aPackage.authors) - && Objects.equals(website, aPackage.website) - && Objects.equals(documentation, aPackage.documentation) - && Objects.equals(sourceCode, aPackage.sourceCode) - && Objects.equals(sourceCodeUrlScheme, aPackage.sourceCodeUrlScheme) - && Objects.equals(license, aPackage.license) - && Objects.equals(licenseText, aPackage.licenseText) - && Objects.equals(issueTracker, aPackage.issueTracker) - && Objects.equals(apiTests, aPackage.apiTests) - && exclude.equals(aPackage.exclude); - } - - @Override - public int hashCode() { - return Objects.hash( - name, - uri, - version, - description, - authors, - website, - documentation, - sourceCode, - sourceCodeUrlScheme, - license, - licenseText, - issueTracker, - apiTests, - exclude); - } - - @Override - public String toString() { - return "Package{" - + "name=" - + name - + ", uri=" - + uri - + ", version='" - + version - + '\'' - + ", description='" - + description - + '\'' - + ", authors=" - + authors - + ", website='" - + website - + ", documentation='" - + documentation - + '\'' - + ", sourceCode='" - + sourceCode - + '\'' - + ", sourceCodeUrlScheme='" - + sourceCodeUrlScheme - + '\'' - + ", license='" - + license - + '\'' - + ", licenseText='" - + licenseText - + '\'' - + ", issueTracker='" - + issueTracker - + '\'' - + ", apiTests='" - + apiTests - + '\'' - + ", exclude='" - + exclude - + '\'' - + '}'; - } } diff --git a/pkl-core/src/main/java/org/pkl/core/project/ProjectDependenciesResolver.java b/pkl-core/src/main/java/org/pkl/core/project/ProjectDependenciesResolver.java index 93059c1e..ba6b7b11 100644 --- a/pkl-core/src/main/java/org/pkl/core/project/ProjectDependenciesResolver.java +++ b/pkl-core/src/main/java/org/pkl/core/project/ProjectDependenciesResolver.java @@ -62,8 +62,8 @@ public final class ProjectDependenciesResolver { public ProjectDeps resolve() { buildResolvedDependencies(project.getDependencies()); - for (var localProject : project.getDependencies().getLocalDependencies().values()) { - var packageUri = localProject.getMyPackageUri(); + for (var localProject : project.getDependencies().localDependencies().values()) { + var packageUri = localProject.myPackageUri(); assert packageUri != null; var canonicalUri = CanonicalPackageUri.fromPackageUri(packageUri); var resolvedDependency = resolvedDependencies.get(canonicalUri); @@ -86,11 +86,11 @@ public final class ProjectDependenciesResolver { } private void buildResolvedDependencies(DeclaredDependencies declaredDependencies) { - for (var dependency : declaredDependencies.getRemoteDependencies().values()) { + for (var dependency : declaredDependencies.remoteDependencies().values()) { resolveDependenciesOfPackageUri( dependency.getPackageUri().toProjectPackageUri(), dependency.getChecksums()); } - for (var localDeclaredDependencies : declaredDependencies.getLocalDependencies().values()) { + for (var localDeclaredDependencies : declaredDependencies.localDependencies().values()) { resolveDependencies(localDeclaredDependencies); } } @@ -128,9 +128,9 @@ public final class ProjectDependenciesResolver { } private void resolveDependencies(DeclaredDependencies declaredDependencies) { - var packageUri = declaredDependencies.getMyPackageUri(); + var packageUri = declaredDependencies.myPackageUri(); assert packageUri != null; - var projectDir = Path.of(declaredDependencies.getProjectFileUri()).getParent(); + var projectDir = Path.of(declaredDependencies.projectFileUri()).getParent(); var relativePath = IoUtils.relativize(projectDir, this.project.getProjectDir()); var localDependency = new LocalDependency(packageUri.toProjectPackageUri(), relativePath); updateDependency(localDependency); diff --git a/pkl-core/src/main/java/org/pkl/core/project/ProjectPackager.java b/pkl-core/src/main/java/org/pkl/core/project/ProjectPackager.java index 2cf38d3b..ef7fe04e 100644 --- a/pkl-core/src/main/java/org/pkl/core/project/ProjectPackager.java +++ b/pkl-core/src/main/java/org/pkl/core/project/ProjectPackager.java @@ -134,10 +134,10 @@ public final class ProjectPackager { public void createPackages() throws IOException { for (var project : projects) { var packageResult = doPackage(project); - writeLine(IoUtils.relativize(packageResult.getMetadataFile(), workingDir).toString()); - writeLine(IoUtils.relativize(packageResult.getMetadataChecksumFile(), workingDir).toString()); - writeLine(IoUtils.relativize(packageResult.getZipFile(), workingDir).toString()); - writeLine(IoUtils.relativize(packageResult.getZipChecksumFile(), workingDir).toString()); + writeLine(IoUtils.relativize(packageResult.metadataFile(), workingDir).toString()); + writeLine(IoUtils.relativize(packageResult.metadataChecksumFile(), workingDir).toString()); + writeLine(IoUtils.relativize(packageResult.zipFile(), workingDir).toString()); + writeLine(IoUtils.relativize(packageResult.zipChecksumFile(), workingDir).toString()); outputWriter.flush(); } } @@ -145,8 +145,8 @@ public final class ProjectPackager { private Path resolveOutputDirectory(Package pkg) { var substituted = outputPathPattern - .replace("%{name}", pkg.getName()) - .replace("%{version}", pkg.getVersion().toString()); + .replace("%{name}", pkg.name()) + .replace("%{version}", pkg.version().toString()); return workingDir.resolve(substituted); } @@ -156,13 +156,13 @@ public final class ProjectPackager { throw new PklException( ErrorMessages.create("noPackageDefinedByProject", project.getProjectFileUri())); } - if (packageResults.containsKey(pkg.getUri())) { - return packageResults.get(pkg.getUri()); + if (packageResults.containsKey(pkg.uri())) { + return packageResults.get(pkg.uri()); } var files = collectPackageElements(project, pkg); validatePklImportsAndReads(project, files); var outputDir = resolveOutputDirectory(pkg); - var metadataFileName = IoUtils.takeLastSegment(pkg.getUri().getUri().getPath(), '/'); + var metadataFileName = IoUtils.takeLastSegment(pkg.uri().getUri().getPath(), '/'); var metadataFile = outputDir.resolve(metadataFileName); var metadataChecksumFile = outputDir.resolve(metadataFileName + ".sha256"); var zipFile = outputDir.resolve(metadataFileName + ".zip"); @@ -178,21 +178,20 @@ public final class ProjectPackager { var result = new PackageResult( metadataFile, metadataChecksumFile, zipFile, zipChecksumFile, metadataFileChecksum); - packageResults.put(pkg.getUri(), result); + packageResults.put(pkg.uri(), result); return result; } private void checkAlreadyPublishedPackage(Package pkg, String computedChecksum) throws IOException { try { - var metadataAndChecksum = - packageResolver.getDependencyMetadataAndComputeChecksum(pkg.getUri()); + var metadataAndChecksum = packageResolver.getDependencyMetadataAndComputeChecksum(pkg.uri()); var receivedChecksum = metadataAndChecksum.second.getSha256(); if (!receivedChecksum.equals(computedChecksum)) { throw new PklException( ErrorMessages.create( "packageAlreadyPublishedWithDifferentContents", - pkg.getUri(), + pkg.uri(), computedChecksum, receivedChecksum)); } @@ -204,8 +203,8 @@ public final class ProjectPackager { throw new PklException( ErrorMessages.create( "unableToAccessPublishedPackage", - pkg.getName(), - pkg.getPackageZipUrl(), + pkg.name(), + pkg.packageZipUrl(), e.getArguments()[0])); } } @@ -229,15 +228,15 @@ public final class ProjectPackager { try { var ret = new HashMap( - project.getDependencies().getLocalDependencies().size() - + project.getDependencies().getRemoteDependencies().size()); + project.getDependencies().localDependencies().size() + + project.getDependencies().remoteDependencies().size()); // module resolver is only used for reading PklProject.deps.json, so provide one that reads // files. var moduleResolver = new ModuleResolver(List.of(ModuleKeyFactories.file)); var projectDependenciesManager = new ProjectDependenciesManager( project.getDependencies(), moduleResolver, this.securityManager); - for (var entry : project.getDependencies().getRemoteDependencies().entrySet()) { + for (var entry : project.getDependencies().remoteDependencies().entrySet()) { var resolved = (RemoteDependency) projectDependenciesManager.getResolvedDependency(entry.getValue().getPackageUri()); @@ -249,7 +248,7 @@ public final class ProjectPackager { for (var entry : project.getLocalProjectDependencies().entrySet()) { var localProject = entry.getValue(); assert localProject.getPackage() != null; - var packageUri = localProject.getPackage().getUri(); + var packageUri = localProject.getPackage().uri(); var resolved = projectDependenciesManager.getResolvedDependency(packageUri); if (resolved instanceof LocalDependency) { var packageResult = doPackage(localProject); @@ -257,7 +256,7 @@ public final class ProjectPackager { entry.getKey(), new RemoteDependency( packageUri.toExternalPackageUri(), - new Checksums(packageResult.getMetadataChecksum()))); + new Checksums(packageResult.metadataChecksum()))); } else { var remoteDep = (RemoteDependency) resolved; ret.put( @@ -278,20 +277,20 @@ public final class ProjectPackager { private DependencyMetadata createDependencyMetadata( Project project, Package pkg, String packageZipChecksum) throws IOException { return new DependencyMetadata( - pkg.getName(), - pkg.getUri(), - pkg.getVersion(), - pkg.getPackageZipUrl(), + pkg.name(), + pkg.uri(), + pkg.version(), + pkg.packageZipUrl(), new Checksums(packageZipChecksum), buildDependencies(project), - pkg.getSourceCodeUrlScheme(), - pkg.getSourceCode(), - pkg.getDocumentation(), - pkg.getLicense(), - pkg.getLicenseText(), - pkg.getAuthors(), - pkg.getIssueTracker(), - pkg.getDescription(), + pkg.sourceCodeUrlScheme(), + pkg.sourceCode(), + pkg.documentation(), + pkg.license(), + pkg.licenseText(), + pkg.authors(), + pkg.issueTracker(), + pkg.description(), project.getAnnotations()); } @@ -343,7 +342,7 @@ public final class ProjectPackager { private List getExcludePatterns(Package pkg) { var excludePatterns = new ArrayList(); - for (String s : pkg.getExclude()) { + for (String s : pkg.exclude()) { try { excludePatterns.add(GlobResolver.toRegexPattern(s)); } catch (InvalidGlobPatternException e) { @@ -452,42 +451,48 @@ public final class ProjectPackager { } } - public static class PackageResult { - private final Path zipFile; - private final Path zipChecksumFile; - private final Path metadataFile; - private final Path metadataChecksumFile; - private final String metadataChecksum; - - public PackageResult( - Path zipFile, - Path zipChecksumFile, - Path metadataFile, - Path metadataChecksumFile, - String metadataChecksum) { - this.zipFile = zipFile; - this.zipChecksumFile = zipChecksumFile; - this.metadataFile = metadataFile; - this.metadataChecksumFile = metadataChecksumFile; - this.metadataChecksum = metadataChecksum; - } - + public record PackageResult( + Path zipFile, + Path zipChecksumFile, + Path metadataFile, + Path metadataChecksumFile, + String metadataChecksum) { + /** + * @deprecated As of 0.28.0, replaced by {@link #zipFile()}. + */ + @Deprecated(forRemoval = true) public Path getZipFile() { return zipFile; } + /** + * @deprecated As of 0.28.0, replaced by {@link #zipChecksumFile()}. + */ + @Deprecated(forRemoval = true) public Path getZipChecksumFile() { return zipChecksumFile; } + /** + * @deprecated As of 0.28.0, replaced by {@link #metadataFile()}. + */ + @Deprecated(forRemoval = true) public Path getMetadataFile() { return metadataFile; } + /** + * @deprecated As of 0.28.0, replaced by {@link #metadataChecksumFile()}. + */ + @Deprecated(forRemoval = true) public Path getMetadataChecksumFile() { return metadataChecksumFile; } + /** + * @deprecated As of 0.28.0, replaced by {@link #metadataChecksum()}. + */ + @Deprecated(forRemoval = true) public String getMetadataChecksum() { return metadataChecksum; }