From 28a47ec6dec5bcf865b905b6c9f1f9c0ce504bb2 Mon Sep 17 00:00:00 2001 From: Robert Stupp Date: Sat, 10 Aug 2024 12:06:48 +0200 Subject: [PATCH 1/2] Migrate to jakarta Follow up of #9253, migrate all annotations to jakarta --- api/client-testextension/build.gradle.kts | 1 - .../client/ext/NessieClientFactory.java | 4 +- .../client/ext/NessieClientResolver.java | 4 +- api/client/build.gradle.kts | 15 +- .../client/NessieClientBuilder.java | 3 +- .../client/api/AssignBranchBuilder.java | 8 +- .../client/api/AssignReferenceBuilder.java | 8 +- .../client/api/AssignTagBuilder.java | 8 +- .../client/api/CreateReferenceBuilder.java | 13 +- .../client/api/GetCommitLogBuilder.java | 11 +- .../client/api/GetContentBuilder.java | 7 +- .../client/api/GetNamespaceResult.java | 6 +- .../client/api/GetRefLogBuilder.java | 18 +-- .../client/api/GetReferenceBuilder.java | 11 +- .../client/api/MergeReferenceBuilder.java | 5 +- .../client/api/MergeTransplantBuilder.java | 5 +- .../client/api/OnBranchBuilder.java | 16 +- .../client/api/OnNamespaceBuilder.java | 6 +- .../client/api/OnReferenceBuilder.java | 11 +- .../client/api/OnTagBuilder.java | 15 +- .../client/api/ReferenceHistoryBuilder.java | 16 +- .../client/api/TransplantCommitsBuilder.java | 10 +- .../auth/oauth2/AuthorizationCodeFlow.java | 2 +- .../auth/oauth2/ClientCredentialsFlow.java | 2 +- .../client/auth/oauth2/DeviceCodeFlow.java | 2 +- .../client/auth/oauth2/DeviceCodeRequest.java | 2 +- .../auth/oauth2/DeviceCodeResponse.java | 2 +- .../client/auth/oauth2/ErrorResponse.java | 2 +- .../client/auth/oauth2/Flow.java | 2 +- .../client/auth/oauth2/JwtToken.java | 2 +- .../oauth2/OAuth2TokenRefreshExecutor.java | 2 +- .../client/auth/oauth2/PasswordFlow.java | 2 +- .../auth/oauth2/PublicClientRequest.java | 2 +- .../client/auth/oauth2/RefreshTokensFlow.java | 2 +- .../client/auth/oauth2/Token.java | 2 +- .../auth/oauth2/TokenExchangeRequest.java | 2 +- .../auth/oauth2/TokenExchangeResponse.java | 2 +- .../client/auth/oauth2/TokenRequestBase.java | 2 +- .../client/auth/oauth2/TokenResponseBase.java | 2 +- .../client/auth/oauth2/Tokens.java | 2 +- .../builder/BaseCreateNamespaceBuilder.java | 4 +- .../builder/BaseDeleteNamespaceBuilder.java | 4 +- .../BaseGetMultipleNamespacesBuilder.java | 5 +- .../builder/BaseGetNamespaceBuilder.java | 4 +- .../builder/BaseUpdateNamespaceBuilder.java | 4 +- .../config/NessieClientConfigSource.java | 12 +- .../config/NessieClientConfigSources.java | 22 +-- .../client/http/impl/HttpRuntimeConfig.java | 6 +- .../client/rest/v1/RestV1ContentClient.java | 9 +- .../client/rest/v1/RestV1DiffClient.java | 5 +- .../client/rest/v1/RestV1NamespaceClient.java | 18 +-- .../client/rest/v1/RestV1TreeClient.java | 47 +++--- .../builder/TestResultStreamPaginator.java | 3 +- api/model/build.gradle.kts | 17 +- .../projectnessie/api/params/FetchOption.java | 7 +- .../org/projectnessie/api/v1/ContentApi.java | 37 +---- .../org/projectnessie/api/v1/DiffApi.java | 9 +- .../projectnessie/api/v1/NamespaceApi.java | 17 +- .../org/projectnessie/api/v1/RefLogApi.java | 9 +- .../org/projectnessie/api/v1/TreeApi.java | 124 +++------------ .../api/v1/http/HttpConfigApi.java | 11 +- .../api/v1/http/HttpContentApi.java | 29 +--- .../api/v1/http/HttpDiffApi.java | 20 +-- .../api/v1/http/HttpNamespaceApi.java | 57 ++----- .../api/v1/http/HttpTreeApi.java | 83 ++-------- .../api/v1/params/AbstractParams.java | 10 +- .../api/v1/params/BaseMergeTransplant.java | 16 +- .../api/v1/params/CommitLogParams.java | 36 ++--- .../api/v1/params/DiffParams.java | 34 +--- .../api/v1/params/EntriesParams.java | 28 +--- .../api/v1/params/GetReferenceParams.java | 22 +-- .../projectnessie/api/v1/params/Merge.java | 8 +- .../v1/params/MultipleNamespacesParams.java | 25 +-- .../api/v1/params/NamespaceParams.java | 23 +-- .../api/v1/params/NamespaceUpdate.java | 4 +- .../api/v1/params/RefLogParams.java | 31 +--- .../api/v1/params/ReferencesParams.java | 18 +-- .../api/v1/params/Transplant.java | 8 +- .../org/projectnessie/api/v2/TreeApi.java | 111 +++---------- .../api/v2/http/HttpConfigApi.java | 23 +-- .../api/v2/http/HttpTreeApi.java | 146 ++++-------------- .../api/v2/params/AbstractParams.java | 10 +- .../api/v2/params/BaseMergeTransplant.java | 18 +-- .../api/v2/params/CommitLogParams.java | 28 +--- .../api/v2/params/DiffParams.java | 40 ++--- .../api/v2/params/EntriesParams.java | 26 ++-- .../api/v2/params/GetReferenceParams.java | 22 +-- .../api/v2/params/KeyRangeParams.java | 23 +-- .../projectnessie/api/v2/params/Merge.java | 15 +- .../api/v2/params/ParsedReference.java | 9 +- .../api/v2/params/ReferenceHistoryParams.java | 22 +-- .../api/v2/params/ReferenceResolver.java | 10 +- .../api/v2/params/ReferencesParams.java | 18 +-- .../api/v2/params/Transplant.java | 19 +-- .../error/ContentKeyErrorDetails.java | 6 +- .../error/GenericErrorDetails.java | 3 +- .../org/projectnessie/error/NessieError.java | 6 +- .../java/org/projectnessie/model/Branch.java | 9 +- .../org/projectnessie/model/CommitMeta.java | 18 +-- .../projectnessie/model/CommitResponse.java | 9 +- .../org/projectnessie/model/Conflict.java | 8 +- .../java/org/projectnessie/model/Content.java | 3 +- .../org/projectnessie/model/ContentKey.java | 8 +- .../projectnessie/model/ContentMetadata.java | 3 +- .../projectnessie/model/ContentResponse.java | 7 +- .../projectnessie/model/DeltaLakeTable.java | 7 +- .../org/projectnessie/model/Detached.java | 11 +- .../org/projectnessie/model/DiffResponse.java | 6 +- .../projectnessie/model/Documentation.java | 4 +- .../projectnessie/model/EntriesResponse.java | 12 +- .../org/projectnessie/model/FetchOption.java | 7 +- .../model/GarbageCollectorConfig.java | 10 +- .../model/GetMultipleContentsRequest.java | 8 +- .../model/GetMultipleContentsResponse.java | 9 +- .../model/GetNamespacesResponse.java | 6 +- .../org/projectnessie/model/IcebergTable.java | 9 +- .../org/projectnessie/model/IcebergView.java | 12 +- .../model/IdentifiedContentKey.java | 13 +- .../org/projectnessie/model/LogResponse.java | 8 +- .../projectnessie/model/MergeKeyBehavior.java | 6 +- .../projectnessie/model/MergeResponse.java | 7 +- .../org/projectnessie/model/Namespace.java | 6 +- .../model/NessieConfiguration.java | 12 +- .../org/projectnessie/model/Operation.java | 8 +- .../org/projectnessie/model/Operations.java | 9 +- .../model/PaginatedResponse.java | 8 +- .../projectnessie/model/RefLogResponse.java | 11 +- .../org/projectnessie/model/Reference.java | 14 +- .../model/ReferenceHistoryResponse.java | 6 +- .../model/ReferenceHistoryState.java | 3 +- .../model/ReferenceMetadata.java | 7 +- .../model/ReferencesResponse.java | 3 +- .../model/SingleReferenceResponse.java | 3 +- .../projectnessie/model/TableReference.java | 14 +- .../java/org/projectnessie/model/Tag.java | 4 +- .../java/org/projectnessie/model/UDF.java | 10 +- .../model/UpdateRepositoryConfigResponse.java | 3 +- .../metadata/GenericContentMetadata.java | 3 +- .../model/types/ContentTypes.java | 3 +- .../model/types/GenericRepositoryConfig.java | 3 +- .../model/types/RepositoryConfigTypes.java | 3 +- .../org.immutables.inhibit-classpath | 2 + .../iceberg/manifest/IcebergDataFile.java | 7 +- .../manifest/IcebergManifestEntry.java | 6 +- .../iceberg/manifest/IcebergManifestFile.java | 13 +- .../IcebergManifestFileWriterSpec.java | 3 +- .../IcebergManifestListWriterSpec.java | 3 +- .../iceberg/meta/IcebergNestedField.java | 3 +- .../meta/IcebergPartitionFieldSummary.java | 5 +- .../formats/iceberg/meta/IcebergSnapshot.java | 6 +- .../iceberg/meta/IcebergSnapshotRef.java | 5 +- .../iceberg/meta/IcebergTableMetadata.java | 10 +- .../metrics/IcebergCommitMetricsResult.java | 2 +- .../metrics/IcebergScanMetricsResult.java | 2 +- .../rest/IcebergCreateViewRequest.java | 2 +- .../iceberg/rest/IcebergMetadataUpdate.java | 2 +- .../iceberg/types/IcebergStructType.java | 3 +- .../catalog/model/NessieEntity.java | 4 +- .../model/manifest/NessieFieldSummary.java | 10 +- .../model/manifest/NessieFieldValue.java | 3 +- .../model/manifest/NessieFieldsSummary.java | 10 +- .../ops/CatalogOperationTypeResolver.java | 2 +- .../catalog/model/schema/NessieField.java | 3 +- .../catalog/model/schema/NessieStruct.java | 3 +- .../types/NessieTypeSpecSerialized.java | 11 +- .../model/snapshot/NessieEntitySnapshot.java | 7 +- .../model/snapshot/NessieTableSnapshot.java | 10 +- .../model/snapshot/NessieViewDependency.java | 4 +- .../model/snapshot/NessieViewSnapshot.java | 5 +- catalog/service/common/build.gradle.kts | 1 - catalog/service/impl/build.gradle.kts | 1 - catalog/service/rest/build.gradle.kts | 1 - .../catalog/service/rest/NamespaceRef.java | 5 +- .../catalog/service/rest/TableRef.java | 4 +- catalog/service/transfer/build.gradle.kts | 1 - cli/cli/build.gradle.kts | 11 +- cli/grammar/build.gradle.kts | 6 +- events/api/build.gradle.kts | 5 +- events/service/build.gradle.kts | 6 +- .../service/util/TestContentMapping.java | 2 +- events/spi/build.gradle.kts | 5 +- gc/gc-base/build.gradle.kts | 8 +- gc/gc-iceberg-files/build.gradle.kts | 4 +- gc/gc-iceberg-inttest/build.gradle.kts | 5 +- gc/gc-iceberg-mock/build.gradle.kts | 8 +- gc/gc-iceberg/build.gradle.kts | 4 +- gc/gc-repository-jdbc/build.gradle.kts | 6 +- .../gc/contents/jdbc/JdbcPersistenceSpi.java | 6 +- gc/gc-tool-inttest/build.gradle.kts | 4 +- gc/gc-tool/build.gradle.kts | 8 +- gradle/libs.versions.toml | 3 - gradle/projects.main.properties | 1 + .../build.gradle.kts | 5 +- .../spark/extensions/SparkCommitLogEntry.java | 2 +- servers/quarkus-common/build.gradle.kts | 5 +- servers/quarkus-distcache/build.gradle.kts | 4 +- servers/quarkus-server/build.gradle.kts | 9 +- servers/quarkus-tests/build.gradle.kts | 2 +- servers/services/build.gradle.kts | 6 +- .../services/spi/ContentService.java | 2 +- tasks/api/build.gradle.kts | 5 +- tasks/service/async/build.gradle.kts | 5 +- tasks/service/impl/build.gradle.kts | 10 +- testing/azurite-container/build.gradle.kts | 7 +- .../container-spec-helper/build.gradle.kts | 4 +- testing/gcs-container/build.gradle.kts | 7 +- testing/keycloak-container/build.gradle.kts | 7 +- .../keycloak/CustomKeycloakContainer.java | 2 +- testing/minio-container/build.gradle.kts | 2 +- testing/nessie-container/build.gradle.kts | 7 +- .../testing/nessie/NessieContainer.java | 2 +- testing/object-storage-mock/build.gradle.kts | 8 +- .../objectstoragemock/gcs/StorageObject.java | 3 +- testing/trino-container/build.gradle.kts | 2 +- tools/content-generator/build.gradle.kts | 5 +- .../contentgenerator/keygen/KeyGenerator.java | 2 +- tools/immutables-std/build.gradle.kts | 31 ++++ .../org.immutables.inhibit-classpath | 6 + .../org.immutables.inhibit-classpath | 6 + tools/server-admin/build.gradle.kts | 5 +- tools/storage/uri/build.gradle.kts | 1 + .../projectnessie/storage/uri/StorageUri.java | 4 +- versioned/spi/build.gradle.kts | 9 +- versioned/storage/batching/build.gradle.kts | 5 +- .../storage/batching/BatchingPersistImpl.java | 56 ++----- .../storage/bigtable-tests/build.gradle.kts | 2 +- versioned/storage/bigtable/build.gradle.kts | 5 +- versioned/storage/cache/build.gradle.kts | 10 +- .../storage/cassandra-tests/build.gradle.kts | 5 +- versioned/storage/cassandra/build.gradle.kts | 5 +- .../storage/common-serialize/build.gradle.kts | 5 +- .../storage/common-tests/build.gradle.kts | 5 +- versioned/storage/common/build.gradle.kts | 5 +- .../storage/dynamodb-tests/build.gradle.kts | 5 +- versioned/storage/dynamodb/build.gradle.kts | 5 +- .../storage/inmemory-tests/build.gradle.kts | 5 +- versioned/storage/inmemory/build.gradle.kts | 5 +- versioned/storage/jdbc-tests/build.gradle.kts | 5 +- versioned/storage/jdbc/build.gradle.kts | 5 +- .../storage/mongodb-tests/build.gradle.kts | 5 +- versioned/storage/mongodb/build.gradle.kts | 5 +- versioned/storage/rocksdb/build.gradle.kts | 5 +- versioned/storage/store/build.gradle.kts | 5 +- .../versionstore/VersionStoreImpl.java | 1 - .../storage/testextension/build.gradle.kts | 5 +- versioned/tests/build.gradle.kts | 4 +- versioned/transfer/build.gradle.kts | 5 +- 247 files changed, 756 insertions(+), 1789 deletions(-) create mode 100644 api/model/src/main/resources/META-INF/extensions/org.immutables.inhibit-classpath create mode 100644 tools/immutables-std/build.gradle.kts create mode 100644 tools/immutables-std/src/main/resources/META-INF/extensions/org.immutables.inhibit-classpath create mode 100644 tools/immutables/src/main/resources/META-INF/extensions/org.immutables.inhibit-classpath diff --git a/api/client-testextension/build.gradle.kts b/api/client-testextension/build.gradle.kts index 31e6b8c29f5..dd69f973e19 100644 --- a/api/client-testextension/build.gradle.kts +++ b/api/client-testextension/build.gradle.kts @@ -28,5 +28,4 @@ dependencies { // javax/jakarta compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.findbugs.jsr305) } diff --git a/api/client-testextension/src/main/java/org/projectnessie/client/ext/NessieClientFactory.java b/api/client-testextension/src/main/java/org/projectnessie/client/ext/NessieClientFactory.java index 5be235c61af..17b1a2de5dd 100644 --- a/api/client-testextension/src/main/java/org/projectnessie/client/ext/NessieClientFactory.java +++ b/api/client-testextension/src/main/java/org/projectnessie/client/ext/NessieClientFactory.java @@ -15,7 +15,7 @@ */ package org.projectnessie.client.ext; -import javax.annotation.Nonnull; +import jakarta.annotation.Nonnull; import org.projectnessie.client.api.NessieApiV1; /** @@ -30,12 +30,10 @@ public interface NessieClientFactory { NessieApiVersion apiVersion(); @Nonnull - @jakarta.annotation.Nonnull default NessieApiV1 make() { return make((builder, version) -> builder); } @Nonnull - @jakarta.annotation.Nonnull NessieApiV1 make(NessieClientCustomizer customizer); } diff --git a/api/client-testextension/src/main/java/org/projectnessie/client/ext/NessieClientResolver.java b/api/client-testextension/src/main/java/org/projectnessie/client/ext/NessieClientResolver.java index cdd4105566b..97c7aab56fb 100644 --- a/api/client-testextension/src/main/java/org/projectnessie/client/ext/NessieClientResolver.java +++ b/api/client-testextension/src/main/java/org/projectnessie/client/ext/NessieClientResolver.java @@ -18,12 +18,12 @@ import static org.projectnessie.client.NessieClientBuilder.createClientBuilderFromSystemSettings; import static org.projectnessie.client.ext.MultiVersionApiTest.apiVersion; +import jakarta.annotation.Nonnull; import java.io.Serializable; import java.net.URI; import java.util.Collections; import java.util.List; import java.util.stream.Collectors; -import javax.annotation.Nonnull; import org.junit.jupiter.api.extension.ExtensionContext; import org.junit.jupiter.api.extension.ParameterContext; import org.junit.jupiter.api.extension.ParameterResolutionException; @@ -132,7 +132,6 @@ private NessieClientFactory clientFactoryForContext(ExtensionContext extensionCo return new ClientFactory(uri, mainConfigSource, apiVersion, responseFactoryClass) { @Nonnull - @jakarta.annotation.Nonnull @Override // Note: this object is not serializable public NessieApiV1 make(NessieClientCustomizer customizer) { return super.make( @@ -171,7 +170,6 @@ public NessieApiVersion apiVersion() { } @Nonnull - @jakarta.annotation.Nonnull @Override public NessieApiV1 make(NessieClientCustomizer customizer) { NessieClientBuilder clientBuilder = diff --git a/api/client/build.gradle.kts b/api/client/build.gradle.kts index 27520003fc4..b494196a3b4 100644 --- a/api/client/build.gradle.kts +++ b/api/client/build.gradle.kts @@ -31,11 +31,8 @@ dependencies { // javax/jakarta compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.findbugs.jsr305) compileOnly(libs.jakarta.validation.api) - compileOnly(libs.javax.validation.api) compileOnly(libs.jakarta.ws.rs.api) - compileOnly(libs.javax.ws.rs) compileOnly(libs.httpclient5) @@ -44,9 +41,8 @@ dependencies { compileOnly(project(":nessie-doc-generator-annotations")) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testFixturesApi(libs.guava) testFixturesApi(libs.bouncycastle.bcprov) @@ -84,9 +80,8 @@ dependencies { testRuntimeOnly(libs.logback.classic) - testCompileOnly(libs.immutables.builder) - testCompileOnly(libs.immutables.value.annotations) - testAnnotationProcessor(libs.immutables.value.processor) + testCompileOnly(project(":nessie-immutables-std")) + testAnnotationProcessor(project(":nessie-immutables-std", configuration = "processor")) intTestImplementation(platform(libs.testcontainers.bom)) intTestImplementation("org.testcontainers:testcontainers") @@ -96,7 +91,7 @@ dependencies { exclude(group = "org.slf4j") // uses SLF4J 2.x, we are not ready yet } intTestImplementation(project(":nessie-container-spec-helper")) - intTestCompileOnly(libs.immutables.value.annotations) + intTestCompileOnly(project(":nessie-immutables-std")) } jandex { skipDefaultProcessing() } diff --git a/api/client/src/main/java/org/projectnessie/client/NessieClientBuilder.java b/api/client/src/main/java/org/projectnessie/client/NessieClientBuilder.java index ae6ecff551e..2f34c138ab9 100644 --- a/api/client/src/main/java/org/projectnessie/client/NessieClientBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/NessieClientBuilder.java @@ -37,6 +37,7 @@ import static org.projectnessie.client.config.NessieClientConfigSources.systemPropertiesConfigSource; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nonnull; import java.net.URI; import java.util.ArrayList; import java.util.Arrays; @@ -48,7 +49,6 @@ import java.util.concurrent.CompletionStage; import java.util.function.Function; import java.util.stream.Collectors; -import javax.annotation.Nonnull; import javax.net.ssl.SNIHostName; import javax.net.ssl.SSLContext; import javax.net.ssl.SSLParameters; @@ -266,7 +266,6 @@ static NessieClientBuilder createClientBuilderFromSystemSettings( * implementation class could be found */ @Nonnull - @jakarta.annotation.Nonnull static NessieClientBuilder createClientBuilder(String clientName, String clientBuilderImpl) { ServiceLoader implementations = ServiceLoader.load(NessieClientBuilder.class); diff --git a/api/client/src/main/java/org/projectnessie/client/api/AssignBranchBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/AssignBranchBuilder.java index b62d431141c..05f2a79041e 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/AssignBranchBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/AssignBranchBuilder.java @@ -15,8 +15,8 @@ */ package org.projectnessie.client.api; -import javax.validation.Valid; -import javax.validation.constraints.NotNull; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; import org.projectnessie.error.NessieConflictException; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.Branch; @@ -28,9 +28,7 @@ * @since {@link NessieApiV1} */ public interface AssignBranchBuilder extends OnBranchBuilder { - AssignBranchBuilder assignTo( - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - Reference assignTo); + AssignBranchBuilder assignTo(@Valid @NotNull Reference assignTo); void assign() throws NessieNotFoundException, NessieConflictException; diff --git a/api/client/src/main/java/org/projectnessie/client/api/AssignReferenceBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/AssignReferenceBuilder.java index 6b507bb7171..8c694db8f46 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/AssignReferenceBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/AssignReferenceBuilder.java @@ -15,8 +15,8 @@ */ package org.projectnessie.client.api; -import javax.validation.Valid; -import javax.validation.constraints.NotNull; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; import org.projectnessie.error.NessieConflictException; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.Branch; @@ -49,9 +49,7 @@ default AssignReferenceBuilder reference(R reference) { return (AssignReferenceBuilder) ChangeReferenceBuilder.super.reference(reference); } - AssignReferenceBuilder assignTo( - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - Reference assignTo); + AssignReferenceBuilder assignTo(@Valid @NotNull Reference assignTo); void assign() throws NessieNotFoundException, NessieConflictException; diff --git a/api/client/src/main/java/org/projectnessie/client/api/AssignTagBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/AssignTagBuilder.java index 210e5fbcd54..117b8ff6a35 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/AssignTagBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/AssignTagBuilder.java @@ -15,8 +15,8 @@ */ package org.projectnessie.client.api; -import javax.validation.Valid; -import javax.validation.constraints.NotNull; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; import org.projectnessie.error.NessieConflictException; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.Reference; @@ -28,9 +28,7 @@ * @since {@link NessieApiV1} */ public interface AssignTagBuilder extends OnTagBuilder { - AssignTagBuilder assignTo( - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - Reference assignTo); + AssignTagBuilder assignTo(@Valid @NotNull Reference assignTo); void assign() throws NessieNotFoundException, NessieConflictException; diff --git a/api/client/src/main/java/org/projectnessie/client/api/CreateReferenceBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/CreateReferenceBuilder.java index 4bc3fca28c4..7e7f7833de2 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/CreateReferenceBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/CreateReferenceBuilder.java @@ -15,9 +15,9 @@ */ package org.projectnessie.client.api; -import javax.validation.Valid; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; import org.projectnessie.error.NessieConflictException; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.Branch; @@ -88,9 +88,6 @@ public interface CreateReferenceBuilder { */ CreateReferenceBuilder sourceRefName( @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String sourceRefName); /** @@ -106,9 +103,7 @@ CreateReferenceBuilder sourceRefName( * @param reference is {@link Branch} or {@link Tag} defining the name and hash for the new * reference-to-be-created. */ - CreateReferenceBuilder reference( - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - Reference reference); + CreateReferenceBuilder reference(@Valid @NotNull Reference reference); Reference create() throws NessieNotFoundException, NessieConflictException; } diff --git a/api/client/src/main/java/org/projectnessie/client/api/GetCommitLogBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/GetCommitLogBuilder.java index cf723c7b0ba..560ed24644e 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/GetCommitLogBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/GetCommitLogBuilder.java @@ -15,8 +15,8 @@ */ package org.projectnessie.client.api; -import javax.annotation.Nullable; -import javax.validation.constraints.Pattern; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.Pattern; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.FetchOption; import org.projectnessie.model.LogResponse; @@ -47,12 +47,7 @@ default GetCommitLogBuilder fetch(org.projectnessie.api.params.FetchOption fetch } GetCommitLogBuilder untilHash( - @Nullable - @jakarta.annotation.Nullable - @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_REGEX, - message = Validation.HASH_MESSAGE) + @Nullable @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) String untilHash); @Override // kept for byte-code compatibility diff --git a/api/client/src/main/java/org/projectnessie/client/api/GetContentBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/GetContentBuilder.java index fa9438141d5..7cf54261809 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/GetContentBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/GetContentBuilder.java @@ -15,9 +15,9 @@ */ package org.projectnessie.client.api; +import jakarta.validation.Valid; import java.util.List; import java.util.Map; -import javax.validation.Valid; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.Content; import org.projectnessie.model.ContentKey; @@ -30,7 +30,7 @@ * @since {@link NessieApiV1} */ public interface GetContentBuilder extends OnReferenceBuilder { - GetContentBuilder key(@Valid @jakarta.validation.Valid ContentKey key); + GetContentBuilder key(@Valid ContentKey key); GetContentBuilder keys(List keys); @@ -46,8 +46,7 @@ default GetContentBuilder forWrite(boolean forWrite) { return this; } - ContentResponse getSingle(@Valid @jakarta.validation.Valid ContentKey key) - throws NessieNotFoundException; + ContentResponse getSingle(@Valid ContentKey key) throws NessieNotFoundException; Map get() throws NessieNotFoundException; diff --git a/api/client/src/main/java/org/projectnessie/client/api/GetNamespaceResult.java b/api/client/src/main/java/org/projectnessie/client/api/GetNamespaceResult.java index d789b804d27..c288e86b6a9 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/GetNamespaceResult.java +++ b/api/client/src/main/java/org/projectnessie/client/api/GetNamespaceResult.java @@ -15,8 +15,8 @@ */ package org.projectnessie.client.api; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; import org.immutables.value.Value; import org.projectnessie.model.Namespace; import org.projectnessie.model.Reference; @@ -24,12 +24,10 @@ @Value.Immutable public interface GetNamespaceResult { @NotNull - @jakarta.validation.constraints.NotNull @Value.Parameter(order = 1) Namespace getNamespace(); @Nullable - @jakarta.annotation.Nullable @Value.Parameter(order = 2) Reference getEffectiveReference(); diff --git a/api/client/src/main/java/org/projectnessie/client/api/GetRefLogBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/GetRefLogBuilder.java index 93cb572c5d5..cd971cbda5f 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/GetRefLogBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/GetRefLogBuilder.java @@ -15,8 +15,8 @@ */ package org.projectnessie.client.api; -import javax.annotation.Nullable; -import javax.validation.constraints.Pattern; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.Pattern; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.RefLogResponse; import org.projectnessie.model.Validation; @@ -38,12 +38,7 @@ public interface GetRefLogBuilder * reflog. */ GetRefLogBuilder untilHash( - @Nullable - @jakarta.annotation.Nullable - @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_REGEX, - message = Validation.HASH_MESSAGE) + @Nullable @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) String untilHash); /** @@ -51,12 +46,7 @@ GetRefLogBuilder untilHash( * reflog. */ GetRefLogBuilder fromHash( - @Nullable - @jakarta.annotation.Nullable - @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_REGEX, - message = Validation.HASH_MESSAGE) + @Nullable @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) String fromHash); @Override // kept for byte-code compatibility diff --git a/api/client/src/main/java/org/projectnessie/client/api/GetReferenceBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/GetReferenceBuilder.java index aa3c7363d79..d26478490d2 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/GetReferenceBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/GetReferenceBuilder.java @@ -15,8 +15,8 @@ */ package org.projectnessie.client.api; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.FetchOption; import org.projectnessie.model.Reference; @@ -29,12 +29,7 @@ */ public interface GetReferenceBuilder { GetReferenceBuilder refName( - @NotNull - @jakarta.validation.constraints.NotNull - @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) + @NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) String refName); /** diff --git a/api/client/src/main/java/org/projectnessie/client/api/MergeReferenceBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/MergeReferenceBuilder.java index f72d538b986..aa6748d7b57 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/MergeReferenceBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/MergeReferenceBuilder.java @@ -15,7 +15,7 @@ */ package org.projectnessie.client.api; -import javax.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotBlank; import org.projectnessie.error.NessieConflictException; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.CommitMeta; @@ -51,8 +51,7 @@ public interface MergeReferenceBuilder extends MergeTransplantBuilder> R fromRefName( @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String fromRefName); R keepIndividualCommits(boolean keepIndividualCommits); diff --git a/api/client/src/main/java/org/projectnessie/client/api/OnBranchBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/OnBranchBuilder.java index 005050eace3..6067ed5ff6f 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/OnBranchBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/OnBranchBuilder.java @@ -20,30 +20,20 @@ import static org.projectnessie.model.Validation.REF_NAME_MESSAGE; import static org.projectnessie.model.Validation.REF_NAME_REGEX; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; import org.projectnessie.model.Branch; /** Base interface for requests against a branch. */ public interface OnBranchBuilder> { R branchName( - @NotNull - @jakarta.validation.constraints.NotNull - @Pattern(regexp = REF_NAME_REGEX, message = REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = REF_NAME_REGEX, - message = REF_NAME_MESSAGE) - String branchName); + @NotNull @Pattern(regexp = REF_NAME_REGEX, message = REF_NAME_MESSAGE) String branchName); R hash( @NotNull - @jakarta.validation.constraints.NotNull @Pattern( regexp = HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, message = HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, - message = HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) String hash); /** diff --git a/api/client/src/main/java/org/projectnessie/client/api/OnNamespaceBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/OnNamespaceBuilder.java index 0e2d202f8b2..7517d2c2a17 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/OnNamespaceBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/OnNamespaceBuilder.java @@ -15,14 +15,14 @@ */ package org.projectnessie.client.api; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import org.projectnessie.model.Namespace; public interface OnNamespaceBuilder> extends OnReferenceBuilder { - R namespace(@NotNull @jakarta.validation.constraints.NotNull Namespace namespace); + R namespace(@NotNull Namespace namespace); - default R namespace(@NotNull @jakarta.validation.constraints.NotNull String namespace) { + default R namespace(@NotNull String namespace) { return namespace(Namespace.parse(namespace)); } } diff --git a/api/client/src/main/java/org/projectnessie/client/api/OnReferenceBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/OnReferenceBuilder.java index 7e173f7ec42..84cd18b1e79 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/OnReferenceBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/OnReferenceBuilder.java @@ -18,8 +18,8 @@ import static org.projectnessie.model.Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE; import static org.projectnessie.model.Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX; -import javax.annotation.Nullable; -import javax.validation.constraints.Pattern; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.Pattern; import org.projectnessie.model.NessieConfiguration; import org.projectnessie.model.Reference; import org.projectnessie.model.Validation; @@ -28,9 +28,6 @@ public interface OnReferenceBuilder> { R refName( @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String refName); /** @@ -69,13 +66,9 @@ R refName( */ R hashOnRef( @Nullable - @jakarta.annotation.Nullable @Pattern( regexp = HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, message = HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, - message = HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) String hashOnRef); /** diff --git a/api/client/src/main/java/org/projectnessie/client/api/OnTagBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/OnTagBuilder.java index 4085d26a5b5..f09cbe745e5 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/OnTagBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/OnTagBuilder.java @@ -15,31 +15,22 @@ */ package org.projectnessie.client.api; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; import org.projectnessie.model.Tag; import org.projectnessie.model.Validation; /** Base interface for requests against a tag. */ public interface OnTagBuilder> { R tagName( - @NotNull - @jakarta.validation.constraints.NotNull - @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) + @NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) String tagName); R hash( @NotNull - @jakarta.validation.constraints.NotNull @Pattern( regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, - message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) String hash); /** diff --git a/api/client/src/main/java/org/projectnessie/client/api/ReferenceHistoryBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/ReferenceHistoryBuilder.java index ae2fd964ac5..6a40fb5835c 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/ReferenceHistoryBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/ReferenceHistoryBuilder.java @@ -15,25 +15,19 @@ */ package org.projectnessie.client.api; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.ReferenceHistoryResponse; import org.projectnessie.model.Validation; public interface ReferenceHistoryBuilder { ReferenceHistoryBuilder refName( - @NotNull - @jakarta.validation.constraints.NotNull - @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) + @NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) String refName); - ReferenceHistoryBuilder headCommitsToScan( - @Nullable @jakarta.annotation.Nullable Integer headCommitsToScan); + ReferenceHistoryBuilder headCommitsToScan(@Nullable Integer headCommitsToScan); ReferenceHistoryResponse get() throws NessieNotFoundException; } diff --git a/api/client/src/main/java/org/projectnessie/client/api/TransplantCommitsBuilder.java b/api/client/src/main/java/org/projectnessie/client/api/TransplantCommitsBuilder.java index c9653f54de1..2c27979e081 100644 --- a/api/client/src/main/java/org/projectnessie/client/api/TransplantCommitsBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/api/TransplantCommitsBuilder.java @@ -15,9 +15,9 @@ */ package org.projectnessie.client.api; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import java.util.List; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; import org.projectnessie.error.NessieConflictException; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.MergeResponse; @@ -41,11 +41,7 @@ public interface TransplantCommitsBuilder extends MergeTransplantBuilder hashesToTransplant); + @NotNull @Size(min = 1) List hashesToTransplant); MergeResponse transplant() throws NessieNotFoundException, NessieConflictException; } diff --git a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/AuthorizationCodeFlow.java b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/AuthorizationCodeFlow.java index 4d922c4e38f..f30c2ea5764 100644 --- a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/AuthorizationCodeFlow.java +++ b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/AuthorizationCodeFlow.java @@ -21,6 +21,7 @@ import com.sun.net.httpserver.HttpExchange; import com.sun.net.httpserver.HttpHandler; import com.sun.net.httpserver.HttpServer; +import jakarta.annotation.Nullable; import java.io.IOException; import java.io.PrintStream; import java.io.UncheckedIOException; @@ -35,7 +36,6 @@ import java.util.concurrent.Phaser; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; -import javax.annotation.Nullable; import org.projectnessie.client.http.HttpClientException; import org.projectnessie.client.http.impl.HttpUtils; import org.projectnessie.client.http.impl.UriBuilder; diff --git a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/ClientCredentialsFlow.java b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/ClientCredentialsFlow.java index 9df99a5a0a5..e036c0f4fb1 100644 --- a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/ClientCredentialsFlow.java +++ b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/ClientCredentialsFlow.java @@ -15,7 +15,7 @@ */ package org.projectnessie.client.auth.oauth2; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; /** * An implementation of the Token diff --git a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/Token.java b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/Token.java index 6f754b86d88..085a55f5482 100644 --- a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/Token.java +++ b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/Token.java @@ -15,8 +15,8 @@ */ package org.projectnessie.client.auth.oauth2; +import jakarta.annotation.Nullable; import java.time.Instant; -import javax.annotation.Nullable; /** A token issued by the authorization server. */ public interface Token { diff --git a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenExchangeRequest.java b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenExchangeRequest.java index a54f51cadad..a2b9d3302a3 100644 --- a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenExchangeRequest.java +++ b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenExchangeRequest.java @@ -20,8 +20,8 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.net.URI; -import javax.annotation.Nullable; import org.immutables.value.Value; /** diff --git a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenExchangeResponse.java b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenExchangeResponse.java index 2b1ef5cf816..fbd1b6b98af 100644 --- a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenExchangeResponse.java +++ b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenExchangeResponse.java @@ -18,8 +18,8 @@ import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; import java.net.URI; -import javax.annotation.Nullable; import org.immutables.value.Value; /** diff --git a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenRequestBase.java b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenRequestBase.java index ab6b5a38673..d03ff7b7465 100644 --- a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenRequestBase.java +++ b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenRequestBase.java @@ -19,7 +19,7 @@ import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.google.errorprone.annotations.CanIgnoreReturnValue; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; /** * Common base for all requests to the token endpoint. diff --git a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenResponseBase.java b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenResponseBase.java index 9e4ec4cd62c..323ddc8e8bb 100644 --- a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenResponseBase.java +++ b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/TokenResponseBase.java @@ -18,10 +18,10 @@ import com.fasterxml.jackson.annotation.JsonAnyGetter; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonUnwrapped; +import jakarta.annotation.Nullable; import java.time.Instant; import java.util.Map; import java.util.function.Supplier; -import javax.annotation.Nullable; /** * Common base for {@link ClientCredentialsTokenResponse}, {@link RefreshTokenResponse} and {@link diff --git a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/Tokens.java b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/Tokens.java index f9f4d8a5c03..ab9867f6891 100644 --- a/api/client/src/main/java/org/projectnessie/client/auth/oauth2/Tokens.java +++ b/api/client/src/main/java/org/projectnessie/client/auth/oauth2/Tokens.java @@ -15,7 +15,7 @@ */ package org.projectnessie.client.auth.oauth2; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.immutables.value.Value; /** Represents a pair of access and refresh tokens, issued by an authorization server. */ diff --git a/api/client/src/main/java/org/projectnessie/client/builder/BaseCreateNamespaceBuilder.java b/api/client/src/main/java/org/projectnessie/client/builder/BaseCreateNamespaceBuilder.java index 8332e3ed06e..74b825d9984 100644 --- a/api/client/src/main/java/org/projectnessie/client/builder/BaseCreateNamespaceBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/builder/BaseCreateNamespaceBuilder.java @@ -15,9 +15,9 @@ */ package org.projectnessie.client.builder; +import jakarta.annotation.Nullable; import java.util.HashMap; import java.util.Map; -import javax.annotation.Nullable; import org.projectnessie.client.api.CreateNamespaceBuilder; import org.projectnessie.model.CommitMeta; import org.projectnessie.model.Namespace; @@ -49,7 +49,7 @@ public CreateNamespaceBuilder refName(String refName) { } @Override - public CreateNamespaceBuilder hashOnRef(@Nullable @jakarta.annotation.Nullable String hashOnRef) { + public CreateNamespaceBuilder hashOnRef(@Nullable String hashOnRef) { this.hashOnRef = hashOnRef; return this; } diff --git a/api/client/src/main/java/org/projectnessie/client/builder/BaseDeleteNamespaceBuilder.java b/api/client/src/main/java/org/projectnessie/client/builder/BaseDeleteNamespaceBuilder.java index 5ed2fe9a90d..48e4c12a83d 100644 --- a/api/client/src/main/java/org/projectnessie/client/builder/BaseDeleteNamespaceBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/builder/BaseDeleteNamespaceBuilder.java @@ -15,7 +15,7 @@ */ package org.projectnessie.client.builder; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.projectnessie.client.api.DeleteNamespaceBuilder; import org.projectnessie.model.CommitMeta; import org.projectnessie.model.Namespace; @@ -46,7 +46,7 @@ public DeleteNamespaceBuilder refName(String refName) { } @Override - public DeleteNamespaceBuilder hashOnRef(@Nullable @jakarta.annotation.Nullable String hashOnRef) { + public DeleteNamespaceBuilder hashOnRef(@Nullable String hashOnRef) { this.hashOnRef = hashOnRef; return this; } diff --git a/api/client/src/main/java/org/projectnessie/client/builder/BaseGetMultipleNamespacesBuilder.java b/api/client/src/main/java/org/projectnessie/client/builder/BaseGetMultipleNamespacesBuilder.java index 834dfee0dd9..92e6d787cc6 100644 --- a/api/client/src/main/java/org/projectnessie/client/builder/BaseGetMultipleNamespacesBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/builder/BaseGetMultipleNamespacesBuilder.java @@ -15,7 +15,7 @@ */ package org.projectnessie.client.builder; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.projectnessie.client.api.GetMultipleNamespacesBuilder; import org.projectnessie.model.Namespace; @@ -38,8 +38,7 @@ public GetMultipleNamespacesBuilder refName(String refName) { } @Override - public GetMultipleNamespacesBuilder hashOnRef( - @Nullable @jakarta.annotation.Nullable String hashOnRef) { + public GetMultipleNamespacesBuilder hashOnRef(@Nullable String hashOnRef) { this.hashOnRef = hashOnRef; return this; } diff --git a/api/client/src/main/java/org/projectnessie/client/builder/BaseGetNamespaceBuilder.java b/api/client/src/main/java/org/projectnessie/client/builder/BaseGetNamespaceBuilder.java index f7b7da798ac..b37a2b7b405 100644 --- a/api/client/src/main/java/org/projectnessie/client/builder/BaseGetNamespaceBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/builder/BaseGetNamespaceBuilder.java @@ -15,7 +15,7 @@ */ package org.projectnessie.client.builder; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.projectnessie.client.api.GetNamespaceBuilder; import org.projectnessie.model.Namespace; @@ -38,7 +38,7 @@ public BaseGetNamespaceBuilder refName(String refName) { } @Override - public GetNamespaceBuilder hashOnRef(@Nullable @jakarta.annotation.Nullable String hashOnRef) { + public GetNamespaceBuilder hashOnRef(@Nullable String hashOnRef) { this.hashOnRef = hashOnRef; return this; } diff --git a/api/client/src/main/java/org/projectnessie/client/builder/BaseUpdateNamespaceBuilder.java b/api/client/src/main/java/org/projectnessie/client/builder/BaseUpdateNamespaceBuilder.java index 97adb150a09..17884102657 100644 --- a/api/client/src/main/java/org/projectnessie/client/builder/BaseUpdateNamespaceBuilder.java +++ b/api/client/src/main/java/org/projectnessie/client/builder/BaseUpdateNamespaceBuilder.java @@ -15,11 +15,11 @@ */ package org.projectnessie.client.builder; +import jakarta.annotation.Nullable; import java.util.HashMap; import java.util.HashSet; import java.util.Map; import java.util.Set; -import javax.annotation.Nullable; import org.projectnessie.client.api.UpdateNamespaceBuilder; import org.projectnessie.model.CommitMeta; import org.projectnessie.model.Namespace; @@ -52,7 +52,7 @@ public UpdateNamespaceBuilder refName(String refName) { } @Override - public UpdateNamespaceBuilder hashOnRef(@Nullable @jakarta.annotation.Nullable String hashOnRef) { + public UpdateNamespaceBuilder hashOnRef(@Nullable String hashOnRef) { this.hashOnRef = hashOnRef; return this; } diff --git a/api/client/src/main/java/org/projectnessie/client/config/NessieClientConfigSource.java b/api/client/src/main/java/org/projectnessie/client/config/NessieClientConfigSource.java index d6409b44441..d91e3bc89c5 100644 --- a/api/client/src/main/java/org/projectnessie/client/config/NessieClientConfigSource.java +++ b/api/client/src/main/java/org/projectnessie/client/config/NessieClientConfigSource.java @@ -15,21 +15,18 @@ */ package org.projectnessie.client.config; +import jakarta.annotation.Nonnull; +import jakarta.annotation.Nullable; import java.util.function.Function; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; /** Helper functional interface adding a fallback-mechanism to chain multiple config-sources. */ @FunctionalInterface public interface NessieClientConfigSource { @Nullable - @jakarta.annotation.Nullable - String getValue(@Nonnull @jakarta.annotation.Nonnull String key); + String getValue(@Nonnull String key); @Nonnull - @jakarta.annotation.Nonnull - default NessieClientConfigSource fallbackTo( - @Nonnull @jakarta.annotation.Nonnull NessieClientConfigSource fallback) { + default NessieClientConfigSource fallbackTo(@Nonnull NessieClientConfigSource fallback) { return k -> { String v = getValue(k); return v != null ? v : fallback.getValue(k); @@ -37,7 +34,6 @@ default NessieClientConfigSource fallbackTo( } @Nonnull - @jakarta.annotation.Nonnull default Function asFunction() { return this::getValue; } diff --git a/api/client/src/main/java/org/projectnessie/client/config/NessieClientConfigSources.java b/api/client/src/main/java/org/projectnessie/client/config/NessieClientConfigSources.java index c69492874e8..ae1964ba975 100644 --- a/api/client/src/main/java/org/projectnessie/client/config/NessieClientConfigSources.java +++ b/api/client/src/main/java/org/projectnessie/client/config/NessieClientConfigSources.java @@ -24,6 +24,8 @@ import static org.projectnessie.client.NessieConfigConstants.CONF_NESSIE_OAUTH2_DEFAULT_ACCESS_TOKEN_LIFESPAN; import static org.projectnessie.client.NessieConfigConstants.CONF_NESSIE_URI; +import jakarta.annotation.Nonnull; +import jakarta.annotation.Nullable; import java.io.BufferedReader; import java.io.IOException; import java.nio.file.Files; @@ -36,8 +38,6 @@ import java.util.Objects; import java.util.Properties; import java.util.stream.Collectors; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; import org.projectnessie.client.NessieConfigConstants; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -58,9 +58,8 @@ public final class NessieClientConfigSources { private static final NessieClientConfigSource EMPTY_CONFIG_SOURCE = new NessieClientConfigSource() { @Nullable - @jakarta.annotation.Nullable @Override - public String getValue(@Nonnull @jakarta.annotation.Nonnull String key) { + public String getValue(@Nonnull String key) { return null; } }; @@ -131,9 +130,8 @@ public static NessieClientConfigSource environmentFileConfigSource(Path envFile) return new NessieClientConfigSource() { @Nullable - @jakarta.annotation.Nullable @Override - public String getValue(@Nonnull @jakarta.annotation.Nonnull String key) { + public String getValue(@Nonnull String key) { String envName = propertyNameToEnvironmentName(key); String v = props.getProperty(envName); LOGGER.debug("Config value for key {} as {} retrieved from {}", key, envName, envFile); @@ -153,9 +151,8 @@ public String getValue(@Nonnull @jakarta.annotation.Nonnull String key) { public static NessieClientConfigSource environmentConfigSource(Map environment) { return new NessieClientConfigSource() { @Nullable - @jakarta.annotation.Nullable @Override - public String getValue(@Nonnull @jakarta.annotation.Nonnull String key) { + public String getValue(@Nonnull String key) { String envName = propertyNameToEnvironmentName(key); String v = environment.get(envName); LOGGER.debug("Config value for key {} as {} retrieved from environment", key, envName); @@ -178,9 +175,8 @@ public static NessieClientConfigSource propertiesFileConfigSource(Path propertie return new NessieClientConfigSource() { @Nullable - @jakarta.annotation.Nullable @Override - public String getValue(@Nonnull @jakarta.annotation.Nonnull String key) { + public String getValue(@Nonnull String key) { String v = props.getProperty(key); LOGGER.debug("Config value for key {} retrieved from {}", key, propertiesFile); return v; @@ -197,9 +193,8 @@ public String getValue(@Nonnull @jakarta.annotation.Nonnull String key) { public static NessieClientConfigSource propertiesConfigSource(Properties properties) { return new NessieClientConfigSource() { @Nullable - @jakarta.annotation.Nullable @Override - public String getValue(@Nonnull @jakarta.annotation.Nonnull String key) { + public String getValue(@Nonnull String key) { String v = properties.getProperty(key); LOGGER.debug("Config value for key {} retrieved from properties", key); return v; @@ -215,9 +210,8 @@ public String getValue(@Nonnull @jakarta.annotation.Nonnull String key) { public static NessieClientConfigSource mapConfigSource(Map properties) { return new NessieClientConfigSource() { @Nullable - @jakarta.annotation.Nullable @Override - public String getValue(@Nonnull @jakarta.annotation.Nonnull String key) { + public String getValue(@Nonnull String key) { String v = properties.get(key); LOGGER.debug("Config value for key {} retrieved from map", key); return v; diff --git a/api/client/src/main/java/org/projectnessie/client/http/impl/HttpRuntimeConfig.java b/api/client/src/main/java/org/projectnessie/client/http/impl/HttpRuntimeConfig.java index d2194773d2b..efe3448e039 100644 --- a/api/client/src/main/java/org/projectnessie/client/http/impl/HttpRuntimeConfig.java +++ b/api/client/src/main/java/org/projectnessie/client/http/impl/HttpRuntimeConfig.java @@ -16,9 +16,9 @@ package org.projectnessie.client.http.impl; import com.fasterxml.jackson.databind.ObjectMapper; +import jakarta.annotation.Nullable; import java.net.URI; import java.util.List; -import javax.annotation.Nullable; import javax.net.ssl.SSLContext; import javax.net.ssl.SSLParameters; import org.immutables.value.Value; @@ -46,13 +46,11 @@ default void check() { } @Nullable - @jakarta.annotation.Nullable URI getBaseUri(); ObjectMapper getMapper(); @Nullable - @jakarta.annotation.Nullable Class getJsonView(); HttpResponseFactory responseFactory(); @@ -73,11 +71,9 @@ default void check() { List getResponseFilters(); @Nullable - @jakarta.annotation.Nullable String getFollowRedirects(); @Nullable - @jakarta.annotation.Nullable SSLParameters getSslParameters(); @Value.Default diff --git a/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1ContentClient.java b/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1ContentClient.java index 0ed1d806bb8..6561b787380 100644 --- a/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1ContentClient.java +++ b/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1ContentClient.java @@ -15,7 +15,7 @@ */ package org.projectnessie.client.rest.v1; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import org.projectnessie.api.v1.http.HttpContentApi; import org.projectnessie.client.http.HttpClient; import org.projectnessie.error.NessieNotFoundException; @@ -33,8 +33,7 @@ class RestV1ContentClient implements HttpContentApi { } @Override - public Content getContent( - @NotNull @jakarta.validation.constraints.NotNull ContentKey key, String ref, String hashOnRef) + public Content getContent(@NotNull ContentKey key, String ref, String hashOnRef) throws NessieNotFoundException { return client .newRequest() @@ -48,9 +47,7 @@ public Content getContent( @Override public GetMultipleContentsResponse getMultipleContents( - @NotNull @jakarta.validation.constraints.NotNull String ref, - String hashOnRef, - @NotNull @jakarta.validation.constraints.NotNull GetMultipleContentsRequest request) + @NotNull String ref, String hashOnRef, @NotNull GetMultipleContentsRequest request) throws NessieNotFoundException { return client .newRequest() diff --git a/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1DiffClient.java b/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1DiffClient.java index 14cd1468e5f..a8af53f003f 100644 --- a/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1DiffClient.java +++ b/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1DiffClient.java @@ -15,7 +15,7 @@ */ package org.projectnessie.client.rest.v1; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import org.projectnessie.api.v1.http.HttpDiffApi; import org.projectnessie.api.v1.params.DiffParams; import org.projectnessie.client.http.HttpClient; @@ -31,8 +31,7 @@ class RestV1DiffClient implements HttpDiffApi { } @Override - public DiffResponse getDiff(@NotNull @jakarta.validation.constraints.NotNull DiffParams params) - throws NessieNotFoundException { + public DiffResponse getDiff(@NotNull DiffParams params) throws NessieNotFoundException { return client .newRequest() .path("diffs/{fromRef}{fromHashOnRef}...{toRef}{toHashOnRef}") diff --git a/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1NamespaceClient.java b/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1NamespaceClient.java index 72808c02949..b941f612e4a 100644 --- a/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1NamespaceClient.java +++ b/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1NamespaceClient.java @@ -15,7 +15,7 @@ */ package org.projectnessie.client.rest.v1; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import org.projectnessie.api.v1.http.HttpNamespaceApi; import org.projectnessie.api.v1.params.MultipleNamespacesParams; import org.projectnessie.api.v1.params.NamespaceParams; @@ -37,9 +37,7 @@ class RestV1NamespaceClient implements HttpNamespaceApi { } @Override - public Namespace createNamespace( - @NotNull @jakarta.validation.constraints.NotNull NamespaceParams params, - @NotNull @jakarta.validation.constraints.NotNull Namespace namespace) + public Namespace createNamespace(@NotNull NamespaceParams params, @NotNull Namespace namespace) throws NessieNamespaceAlreadyExistsException, NessieReferenceNotFoundException { return client .newRequest() @@ -52,8 +50,7 @@ public Namespace createNamespace( } @Override - public void deleteNamespace( - @NotNull @jakarta.validation.constraints.NotNull NamespaceParams params) + public void deleteNamespace(@NotNull NamespaceParams params) throws NessieNamespaceNotFoundException, NessieNamespaceNotEmptyException, NessieReferenceNotFoundException { @@ -66,8 +63,7 @@ public void deleteNamespace( } @Override - public Namespace getNamespace( - @NotNull @jakarta.validation.constraints.NotNull NamespaceParams params) + public Namespace getNamespace(@NotNull NamespaceParams params) throws NessieNamespaceNotFoundException, NessieReferenceNotFoundException { return client .newRequest() @@ -80,8 +76,7 @@ public Namespace getNamespace( } @Override - public GetNamespacesResponse getNamespaces( - @NotNull @jakarta.validation.constraints.NotNull MultipleNamespacesParams params) + public GetNamespacesResponse getNamespaces(@NotNull MultipleNamespacesParams params) throws NessieReferenceNotFoundException { return client .newRequest() @@ -96,8 +91,7 @@ public GetNamespacesResponse getNamespaces( @Override public void updateProperties( - @NotNull @jakarta.validation.constraints.NotNull NamespaceParams params, - @NotNull @jakarta.validation.constraints.NotNull NamespaceUpdate namespaceUpdate) + @NotNull NamespaceParams params, @NotNull NamespaceUpdate namespaceUpdate) throws NessieNamespaceNotFoundException, NessieReferenceNotFoundException { client .newRequest() diff --git a/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1TreeClient.java b/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1TreeClient.java index 62832cbb826..6012a103789 100644 --- a/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1TreeClient.java +++ b/api/client/src/main/java/org/projectnessie/client/rest/v1/RestV1TreeClient.java @@ -15,9 +15,9 @@ */ package org.projectnessie.client.rest.v1; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; import java.util.Locale; -import javax.validation.Valid; -import javax.validation.constraints.NotNull; import org.projectnessie.api.v1.http.HttpTreeApi; import org.projectnessie.api.v1.params.CommitLogParams; import org.projectnessie.api.v1.params.EntriesParams; @@ -60,8 +60,7 @@ public ReferencesResponse getAllReferences(ReferencesParams params) { } @Override - public Reference createReference( - String sourceRefName, @NotNull @jakarta.validation.constraints.NotNull Reference reference) + public Reference createReference(String sourceRefName, @NotNull Reference reference) throws NessieNotFoundException, NessieConflictException { return client .newRequest() @@ -72,8 +71,7 @@ public Reference createReference( } @Override - public Reference getReferenceByName( - @NotNull @jakarta.validation.constraints.NotNull GetReferenceParams params) + public Reference getReferenceByName(@NotNull GetReferenceParams params) throws NessieNotFoundException { return client .newRequest() @@ -86,11 +84,10 @@ public Reference getReferenceByName( @Override public void assignReference( - @NotNull @jakarta.validation.constraints.NotNull Reference.ReferenceType referenceType, - @NotNull @jakarta.validation.constraints.NotNull String referenceName, - @NotNull @jakarta.validation.constraints.NotNull String expectedHash, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - Reference assignTo) + @NotNull Reference.ReferenceType referenceType, + @NotNull String referenceName, + @NotNull String expectedHash, + @Valid @NotNull Reference assignTo) throws NessieNotFoundException, NessieConflictException { client .newRequest() @@ -103,9 +100,9 @@ public void assignReference( @Override public void deleteReference( - @NotNull @jakarta.validation.constraints.NotNull Reference.ReferenceType referenceType, - @NotNull @jakarta.validation.constraints.NotNull String referenceName, - @NotNull @jakarta.validation.constraints.NotNull String expectedHash) + @NotNull Reference.ReferenceType referenceType, + @NotNull String referenceName, + @NotNull String expectedHash) throws NessieConflictException, NessieNotFoundException { client .newRequest() @@ -122,9 +119,7 @@ public Branch getDefaultBranch() { } @Override - public LogResponse getCommitLog( - @NotNull @jakarta.validation.constraints.NotNull String ref, - @NotNull @jakarta.validation.constraints.NotNull CommitLogParams params) + public LogResponse getCommitLog(@NotNull String ref, @NotNull CommitLogParams params) throws NessieNotFoundException { HttpRequest builder = client.newRequest().path("trees/tree/{ref}/log").resolveTemplate("ref", ref); @@ -141,10 +136,10 @@ public LogResponse getCommitLog( @Override public MergeResponse transplantCommitsIntoBranch( - @NotNull @jakarta.validation.constraints.NotNull String branchName, - @NotNull @jakarta.validation.constraints.NotNull String expectedHash, + @NotNull String branchName, + @NotNull String expectedHash, String message, - @Valid @jakarta.validation.Valid Transplant transplant) + @Valid Transplant transplant) throws NessieNotFoundException, NessieConflictException { return client .newRequest() @@ -158,9 +153,7 @@ public MergeResponse transplantCommitsIntoBranch( @Override public MergeResponse mergeRefIntoBranch( - @NotNull @jakarta.validation.constraints.NotNull String branchName, - @NotNull @jakarta.validation.constraints.NotNull String expectedHash, - @NotNull @jakarta.validation.constraints.NotNull @Valid @jakarta.validation.Valid Merge merge) + @NotNull String branchName, @NotNull String expectedHash, @NotNull @Valid Merge merge) throws NessieNotFoundException, NessieConflictException { return client .newRequest() @@ -172,9 +165,7 @@ public MergeResponse mergeRefIntoBranch( } @Override - public EntriesResponse getEntries( - @NotNull @jakarta.validation.constraints.NotNull String refName, - @NotNull @jakarta.validation.constraints.NotNull EntriesParams params) + public EntriesResponse getEntries(@NotNull String refName, @NotNull EntriesParams params) throws NessieNotFoundException { HttpRequest builder = client.newRequest().path("trees/tree/{ref}/entries").resolveTemplate("ref", refName); @@ -192,9 +183,7 @@ public EntriesResponse getEntries( @Override public Branch commitMultipleOperations( - String branch, - @NotNull @jakarta.validation.constraints.NotNull String expectedHash, - @NotNull @jakarta.validation.constraints.NotNull Operations operations) + String branch, @NotNull String expectedHash, @NotNull Operations operations) throws NessieNotFoundException, NessieConflictException { return client .newRequest() diff --git a/api/client/src/test/java/org/projectnessie/client/builder/TestResultStreamPaginator.java b/api/client/src/test/java/org/projectnessie/client/builder/TestResultStreamPaginator.java index 75ce8cc8bf6..00e8c93684d 100644 --- a/api/client/src/test/java/org/projectnessie/client/builder/TestResultStreamPaginator.java +++ b/api/client/src/test/java/org/projectnessie/client/builder/TestResultStreamPaginator.java @@ -20,12 +20,12 @@ import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNull; +import jakarta.annotation.Nullable; import java.util.Arrays; import java.util.Collections; import java.util.Iterator; import java.util.List; import java.util.stream.Collectors; -import javax.annotation.Nullable; import org.junit.jupiter.api.Test; import org.projectnessie.client.builder.StreamingUtil.ResultStreamPaginator; import org.projectnessie.error.NessieReferenceNotFoundException; @@ -178,7 +178,6 @@ public boolean isHasMore() { } @Nullable - @jakarta.annotation.Nullable @Override public String getToken() { return token; diff --git a/api/model/build.gradle.kts b/api/model/build.gradle.kts index 7ab034e41ad..0d3d27c5c29 100644 --- a/api/model/build.gradle.kts +++ b/api/model/build.gradle.kts @@ -33,27 +33,20 @@ dependencies { // javax/jakarta compileOnly(libs.jakarta.ws.rs.api) - compileOnly(libs.javax.ws.rs) compileOnly(libs.jakarta.validation.api) - compileOnly(libs.javax.validation.api) compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.findbugs.jsr305) compileOnly(libs.microprofile.openapi) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testCompileOnly(libs.microprofile.openapi) - testCompileOnly(libs.immutables.value.annotations) - testAnnotationProcessor(libs.immutables.value.processor) + testCompileOnly(project(":nessie-immutables-std")) + testAnnotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testCompileOnly(libs.jakarta.ws.rs.api) - testCompileOnly(libs.javax.ws.rs) testCompileOnly(libs.jakarta.validation.api) - testCompileOnly(libs.javax.validation.api) testCompileOnly(libs.jakarta.annotation.api) - testCompileOnly(libs.findbugs.jsr305) testFixturesApi(platform(libs.junit.bom)) testFixturesApi(libs.bundles.junit.testing) @@ -62,7 +55,7 @@ dependencies { intTestImplementation("org.testcontainers:testcontainers") intTestImplementation(libs.awaitility) intTestImplementation(project(":nessie-container-spec-helper")) - intTestCompileOnly(libs.immutables.value.annotations) + intTestCompileOnly(project(":nessie-immutables-std")) } extensions.configure { diff --git a/api/model/src/main/java/org/projectnessie/api/params/FetchOption.java b/api/model/src/main/java/org/projectnessie/api/params/FetchOption.java index e47f91c1a0c..8595124dde7 100644 --- a/api/model/src/main/java/org/projectnessie/api/params/FetchOption.java +++ b/api/model/src/main/java/org/projectnessie/api/params/FetchOption.java @@ -15,7 +15,7 @@ */ package org.projectnessie.api.params; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; /** Legacy {@code FetchOption} enum. Use {@link org.projectnessie.model.FetchOption} instead. */ @Deprecated @@ -31,7 +31,7 @@ public enum FetchOption { * @return true if the given fetchOption is {@link FetchOption#ALL}, * false otherwise. */ - public static boolean isFetchAll(@Nullable @jakarta.annotation.Nullable FetchOption fetchOption) { + public static boolean isFetchAll(@Nullable FetchOption fetchOption) { return ALL == fetchOption; } @@ -43,8 +43,7 @@ public static boolean isFetchAll(@Nullable @jakarta.annotation.Nullable FetchOpt * @return The name of the given fetchOption or {@link FetchOption#MINIMAL} if the * given fetchOption is null */ - public static String getFetchOptionName( - @Nullable @jakarta.annotation.Nullable FetchOption fetchOption) { + public static String getFetchOptionName(@Nullable FetchOption fetchOption) { return null == fetchOption ? FetchOption.MINIMAL.name() : fetchOption.name(); } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/ContentApi.java b/api/model/src/main/java/org/projectnessie/api/v1/ContentApi.java index f658ef67891..717a36a3dda 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/ContentApi.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/ContentApi.java @@ -15,10 +15,10 @@ */ package org.projectnessie.api.v1; -import javax.annotation.Nullable; -import javax.validation.Valid; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; +import jakarta.annotation.Nullable; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.Content; import org.projectnessie.model.ContentKey; @@ -50,24 +50,14 @@ public interface ContentApi { * @throws NessieNotFoundException if {@code ref} or {@code hashOnRef} does not exist */ Content getContent( - @Valid @jakarta.validation.Valid ContentKey key, - @Valid - @jakarta.validation.Valid - @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) + @Valid ContentKey key, + @Valid @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) String ref, @Valid - @jakarta.validation.Valid @Nullable - @jakarta.annotation.Nullable @Pattern( regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, - message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) String hashOnRef) throws NessieNotFoundException; @@ -90,25 +80,14 @@ Content getContent( * @throws NessieNotFoundException if {@code ref} or {@code hashOnRef} does not exist */ GetMultipleContentsResponse getMultipleContents( - @Valid - @jakarta.validation.Valid - @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) + @Valid @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) String ref, @Valid - @jakarta.validation.Valid @Nullable - @jakarta.annotation.Nullable @Pattern( regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, - message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) String hashOnRef, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - GetMultipleContentsRequest request) + @Valid @NotNull GetMultipleContentsRequest request) throws NessieNotFoundException; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/DiffApi.java b/api/model/src/main/java/org/projectnessie/api/v1/DiffApi.java index 794a5a6bbcf..806fa4c2748 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/DiffApi.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/DiffApi.java @@ -15,8 +15,8 @@ */ package org.projectnessie.api.v1; -import javax.validation.Valid; -import javax.validation.constraints.NotNull; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; import org.projectnessie.api.v1.params.DiffParams; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.DiffResponse; @@ -29,8 +29,5 @@ public interface DiffApi { * @param params The {@link DiffParams} that includes the parameters for this API call. * @return A list of diff values that show the difference between two given references. */ - DiffResponse getDiff( - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - DiffParams params) - throws NessieNotFoundException; + DiffResponse getDiff(@Valid @NotNull DiffParams params) throws NessieNotFoundException; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/NamespaceApi.java b/api/model/src/main/java/org/projectnessie/api/v1/NamespaceApi.java index 8d2146e43ec..6efe818f19c 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/NamespaceApi.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/NamespaceApi.java @@ -15,7 +15,7 @@ */ package org.projectnessie.api.v1; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import org.projectnessie.api.v1.params.MultipleNamespacesParams; import org.projectnessie.api.v1.params.NamespaceParams; import org.projectnessie.api.v1.params.NamespaceUpdate; @@ -37,9 +37,7 @@ public interface NamespaceApi { * @throws NessieReferenceNotFoundException If the reference could not be found. * @throws NessieNamespaceAlreadyExistsException If the namespace already exists. */ - Namespace createNamespace( - @NotNull @jakarta.validation.constraints.NotNull NamespaceParams params, - @NotNull @jakarta.validation.constraints.NotNull Namespace namespace) + Namespace createNamespace(@NotNull NamespaceParams params, @NotNull Namespace namespace) throws NessieNamespaceAlreadyExistsException, NessieReferenceNotFoundException; /** @@ -50,7 +48,7 @@ Namespace createNamespace( * @throws NessieNamespaceNotEmptyException If the namespace is not empty and contains tables. * @throws NessieNamespaceNotFoundException If the namespace to be deleted could not be found. */ - void deleteNamespace(@NotNull @jakarta.validation.constraints.NotNull NamespaceParams params) + void deleteNamespace(@NotNull NamespaceParams params) throws NessieReferenceNotFoundException, NessieNamespaceNotEmptyException, NessieNamespaceNotFoundException; @@ -63,7 +61,7 @@ void deleteNamespace(@NotNull @jakarta.validation.constraints.NotNull NamespaceP * @throws NessieReferenceNotFoundException If the reference could not be found. * @throws NessieNamespaceNotFoundException If the namespace does not exist. */ - Namespace getNamespace(@NotNull @jakarta.validation.constraints.NotNull NamespaceParams params) + Namespace getNamespace(@NotNull NamespaceParams params) throws NessieNamespaceNotFoundException, NessieReferenceNotFoundException; /** @@ -75,8 +73,7 @@ Namespace getNamespace(@NotNull @jakarta.validation.constraints.NotNull Namespac * given namespace prefix. * @throws NessieReferenceNotFoundException If the reference could not be found. */ - GetNamespacesResponse getNamespaces( - @NotNull @jakarta.validation.constraints.NotNull MultipleNamespacesParams params) + GetNamespacesResponse getNamespaces(@NotNull MultipleNamespacesParams params) throws NessieReferenceNotFoundException; /** @@ -87,8 +84,6 @@ GetNamespacesResponse getNamespaces( * @throws NessieNamespaceNotFoundException If the namespace does not exist. * @throws NessieReferenceNotFoundException If the reference could not be found. */ - void updateProperties( - @NotNull @jakarta.validation.constraints.NotNull NamespaceParams params, - @NotNull @jakarta.validation.constraints.NotNull NamespaceUpdate namespaceUpdate) + void updateProperties(@NotNull NamespaceParams params, @NotNull NamespaceUpdate namespaceUpdate) throws NessieNamespaceNotFoundException, NessieReferenceNotFoundException; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/RefLogApi.java b/api/model/src/main/java/org/projectnessie/api/v1/RefLogApi.java index 7be1f362b9b..564a2b1cdc3 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/RefLogApi.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/RefLogApi.java @@ -15,8 +15,8 @@ */ package org.projectnessie.api.v1; -import javax.validation.Valid; -import javax.validation.constraints.NotNull; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; import org.projectnessie.api.v1.params.RefLogParams; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.RefLogResponse; @@ -51,8 +51,5 @@ public interface RefLogApi { * @return {@link RefLogResponse} */ @Deprecated - RefLogResponse getRefLog( - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - RefLogParams params) - throws NessieNotFoundException; + RefLogResponse getRefLog(@Valid @NotNull RefLogParams params) throws NessieNotFoundException; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/TreeApi.java b/api/model/src/main/java/org/projectnessie/api/v1/TreeApi.java index 576b87897bc..3456e2262b5 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/TreeApi.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/TreeApi.java @@ -15,10 +15,10 @@ */ package org.projectnessie.api.v1; -import javax.annotation.Nullable; -import javax.validation.Valid; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; +import jakarta.annotation.Nullable; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; import org.projectnessie.api.v1.params.CommitLogParams; import org.projectnessie.api.v1.params.EntriesParams; import org.projectnessie.api.v1.params.GetReferenceParams; @@ -68,22 +68,14 @@ public interface TreeApi { */ Reference createReference( @Valid - @jakarta.validation.Valid @Nullable - @jakarta.annotation.Nullable @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String sourceRefName, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - Reference reference) + @Valid @NotNull Reference reference) throws NessieNotFoundException, NessieConflictException; /** Get details of a particular ref, if it exists. */ - Reference getReferenceByName( - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - GetReferenceParams params) + Reference getReferenceByName(@Valid @NotNull GetReferenceParams params) throws NessieNotFoundException; /** @@ -106,16 +98,10 @@ Reference getReferenceByName( */ EntriesResponse getEntries( @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String refName, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - EntriesParams params) + @Valid @NotNull EntriesParams params) throws NessieNotFoundException; /** @@ -137,113 +123,56 @@ EntriesResponse getEntries( */ LogResponse getCommitLog( @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String ref, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - CommitLogParams params) + @Valid @NotNull CommitLogParams params) throws NessieNotFoundException; /** Update a reference's HEAD to point to a different commit. */ void assignReference( - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - Reference.ReferenceType referenceType, + @Valid @NotNull Reference.ReferenceType referenceType, @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String referenceName, - @Valid - @jakarta.validation.Valid - @NotNull - @jakarta.validation.constraints.NotNull - @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_REGEX, - message = Validation.HASH_MESSAGE) + @Valid @NotNull @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) String expectedHash, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - Reference assignTo) + @Valid @NotNull Reference assignTo) throws NessieNotFoundException, NessieConflictException; /** Delete a named reference. */ void deleteReference( - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - Reference.ReferenceType referenceType, + @Valid @NotNull Reference.ReferenceType referenceType, @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String referenceName, - @Valid - @jakarta.validation.Valid - @NotNull - @jakarta.validation.constraints.NotNull - @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_REGEX, - message = Validation.HASH_MESSAGE) + @Valid @NotNull @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) String expectedHash) throws NessieConflictException, NessieNotFoundException; /** cherry pick a set of commits into a branch. */ MergeResponse transplantCommitsIntoBranch( @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String branchName, - @Valid - @jakarta.validation.Valid - @NotNull - @jakarta.validation.constraints.NotNull - @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_REGEX, - message = Validation.HASH_MESSAGE) + @Valid @NotNull @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) String expectedHash, - @Valid @jakarta.validation.Valid String message, - @Valid @jakarta.validation.Valid Transplant transplant) + @Valid String message, + @Valid Transplant transplant) throws NessieNotFoundException, NessieConflictException; /** merge mergeRef onto ref. */ MergeResponse mergeRefIntoBranch( @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String branchName, - @Valid - @jakarta.validation.Valid - @NotNull - @jakarta.validation.constraints.NotNull - @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_REGEX, - message = Validation.HASH_MESSAGE) + @Valid @NotNull @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) String expectedHash, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull Merge merge) + @Valid @NotNull Merge merge) throws NessieNotFoundException, NessieConflictException; /** @@ -261,24 +190,11 @@ MergeResponse mergeRefIntoBranch( */ Branch commitMultipleOperations( @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String branchName, - @Valid - @jakarta.validation.Valid - @NotNull - @jakarta.validation.constraints.NotNull - @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_REGEX, - message = Validation.HASH_MESSAGE) + @Valid @NotNull @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) String expectedHash, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - Operations operations) + @Valid @NotNull Operations operations) throws NessieNotFoundException, NessieConflictException; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/http/HttpConfigApi.java b/api/model/src/main/java/org/projectnessie/api/v1/http/HttpConfigApi.java index d55ae8802ac..8341a6319ef 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/http/HttpConfigApi.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/http/HttpConfigApi.java @@ -16,10 +16,10 @@ package org.projectnessie.api.v1.http; import com.fasterxml.jackson.annotation.JsonView; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; import org.eclipse.microprofile.openapi.annotations.Operation; import org.eclipse.microprofile.openapi.annotations.media.Content; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; @@ -33,14 +33,11 @@ @Tag(name = "v1") @Path("v1/config") -@jakarta.ws.rs.Path("v1/config") public interface HttpConfigApi extends ConfigApi { @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Operation(summary = "List all configuration settings") @APIResponses({ @APIResponse( diff --git a/api/model/src/main/java/org/projectnessie/api/v1/http/HttpContentApi.java b/api/model/src/main/java/org/projectnessie/api/v1/http/HttpContentApi.java index 7d8aa5bb2fc..9bbcc57f69d 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/http/HttpContentApi.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/http/HttpContentApi.java @@ -16,14 +16,14 @@ package org.projectnessie.api.v1.http; import com.fasterxml.jackson.annotation.JsonView; -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.MediaType; import org.eclipse.microprofile.openapi.annotations.Operation; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; @@ -43,17 +43,12 @@ @Tag(name = "v1") @Consumes(MediaType.APPLICATION_JSON) -@jakarta.ws.rs.Consumes(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("v1/contents") -@jakarta.ws.rs.Path("v1/contents") public interface HttpContentApi extends ContentApi { @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("{key}") - @jakarta.ws.rs.Path("{key}") @Operation( summary = "Get object content associated with a key.", description = @@ -88,29 +83,23 @@ Content getContent( examples = {@ExampleObject(ref = "ContentKeyGet")}, schema = @Schema(type = SchemaType.STRING)) @PathParam("key") - @jakarta.ws.rs.PathParam("key") ContentKey key, @Parameter( description = "Reference to use. Defaults to default branch if not provided.", examples = {@ExampleObject(ref = "ref")}) @QueryParam("ref") - @jakarta.ws.rs.QueryParam("ref") String ref, @Parameter( description = "a particular hash on the given ref", examples = {@ExampleObject(ref = "nullHash"), @ExampleObject(ref = "hash")}) @QueryParam("hashOnRef") - @jakarta.ws.rs.QueryParam("hashOnRef") String hashOnRef) throws NessieNotFoundException; @Override @POST - @jakarta.ws.rs.POST @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Consumes(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Operation( summary = "Get multiple objects' content.", description = @@ -145,13 +134,11 @@ GetMultipleContentsResponse getMultipleContents( description = "Reference to use. Defaults to default branch if not provided.", examples = {@ExampleObject(ref = "ref")}) @QueryParam("ref") - @jakarta.ws.rs.QueryParam("ref") String ref, @Parameter( description = "a particular hash on the given ref", examples = {@ExampleObject(ref = "nullHash"), @ExampleObject(ref = "hash")}) @QueryParam("hashOnRef") - @jakarta.ws.rs.QueryParam("hashOnRef") String hashOnRef, @RequestBody( description = "Keys to retrieve.", diff --git a/api/model/src/main/java/org/projectnessie/api/v1/http/HttpDiffApi.java b/api/model/src/main/java/org/projectnessie/api/v1/http/HttpDiffApi.java index 68bcf648524..7b4feaf93e3 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/http/HttpDiffApi.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/http/HttpDiffApi.java @@ -16,12 +16,12 @@ package org.projectnessie.api.v1.http; import com.fasterxml.jackson.annotation.JsonView; -import javax.ws.rs.BeanParam; -import javax.ws.rs.Consumes; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; +import jakarta.ws.rs.BeanParam; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; import org.eclipse.microprofile.openapi.annotations.Operation; import org.eclipse.microprofile.openapi.annotations.media.Content; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; @@ -37,17 +37,12 @@ @Tag(name = "v1") @Consumes(MediaType.APPLICATION_JSON) -@jakarta.ws.rs.Consumes(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("v1/diffs") -@jakarta.ws.rs.Path("v1/diffs") public interface HttpDiffApi extends DiffApi { @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("{fromRefWithHash}...{toRefWithHash}") - @jakarta.ws.rs.Path("{fromRefWithHash}...{toRefWithHash}") @Operation( summary = "Get a diff for two given references", description = @@ -78,6 +73,5 @@ public interface HttpDiffApi extends DiffApi { }) @JsonView(Views.V1.class) @Override - DiffResponse getDiff(@BeanParam @jakarta.ws.rs.BeanParam DiffParams params) - throws NessieNotFoundException; + DiffResponse getDiff(@BeanParam DiffParams params) throws NessieNotFoundException; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/http/HttpNamespaceApi.java b/api/model/src/main/java/org/projectnessie/api/v1/http/HttpNamespaceApi.java index d619c5b0782..3fd2071d1e9 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/http/HttpNamespaceApi.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/http/HttpNamespaceApi.java @@ -16,16 +16,16 @@ package org.projectnessie.api.v1.http; import com.fasterxml.jackson.annotation.JsonView; -import javax.validation.constraints.NotNull; -import javax.ws.rs.BeanParam; -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; +import jakarta.validation.constraints.NotNull; +import jakarta.ws.rs.BeanParam; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.DELETE; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.PUT; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; import org.eclipse.microprofile.openapi.annotations.Operation; import org.eclipse.microprofile.openapi.annotations.media.Content; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; @@ -48,18 +48,13 @@ @Tag(name = "v1") @Path("v1/namespaces") -@jakarta.ws.rs.Path("v1/namespaces") @Consumes(MediaType.APPLICATION_JSON) -@jakarta.ws.rs.Consumes(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) public interface HttpNamespaceApi extends NamespaceApi { @Override @PUT - @jakarta.ws.rs.PUT @Path("/namespace/{ref}/{name}") - @jakarta.ws.rs.Path("/namespace/{ref}/{name}") @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Operation(summary = "Creates a Namespace") @APIResponses({ @APIResponse( @@ -79,18 +74,13 @@ public interface HttpNamespaceApi extends NamespaceApi { }) @JsonView(Views.V1.class) Namespace createNamespace( - @BeanParam @jakarta.ws.rs.BeanParam @NotNull @jakarta.validation.constraints.NotNull - NamespaceParams params, - @NotNull @jakarta.validation.constraints.NotNull @RequestBody Namespace namespace) + @BeanParam @NotNull NamespaceParams params, @NotNull @RequestBody Namespace namespace) throws NessieNamespaceAlreadyExistsException, NessieReferenceNotFoundException; @Override @DELETE - @jakarta.ws.rs.DELETE @Path("/namespace/{ref}/{name}") - @jakarta.ws.rs.Path("/namespace/{ref}/{name}") @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Operation(summary = "Deletes a Namespace") @APIResponses({ @APIResponse(responseCode = "200", description = "Namespace successfully deleted."), @@ -100,20 +90,15 @@ Namespace createNamespace( @APIResponse(responseCode = "409", description = "Namespace not empty"), }) @JsonView(Views.V1.class) - void deleteNamespace( - @BeanParam @jakarta.ws.rs.BeanParam @NotNull @jakarta.validation.constraints.NotNull - NamespaceParams params) + void deleteNamespace(@BeanParam @NotNull NamespaceParams params) throws NessieReferenceNotFoundException, NessieNamespaceNotEmptyException, NessieNamespaceNotFoundException; @Override @GET - @jakarta.ws.rs.GET @Path("/namespace/{ref}/{name}") - @jakarta.ws.rs.Path("/namespace/{ref}/{name}") @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Operation(summary = "Retrieves a Namespace") @APIResponses({ @APIResponse( @@ -131,18 +116,13 @@ void deleteNamespace( @APIResponse(responseCode = "404", description = "Reference or Namespace not found"), }) @JsonView(Views.V1.class) - Namespace getNamespace( - @BeanParam @jakarta.ws.rs.BeanParam @NotNull @jakarta.validation.constraints.NotNull - NamespaceParams params) + Namespace getNamespace(@BeanParam @NotNull NamespaceParams params) throws NessieNamespaceNotFoundException, NessieReferenceNotFoundException; @Override @GET - @jakarta.ws.rs.GET @Path("/{ref}") - @jakarta.ws.rs.Path("/{ref}") @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @APIResponses({ @APIResponse( responseCode = "200", @@ -159,18 +139,13 @@ Namespace getNamespace( @APIResponse(responseCode = "404", description = "Reference not found"), }) @JsonView(Views.V1.class) - GetNamespacesResponse getNamespaces( - @BeanParam @jakarta.ws.rs.BeanParam @NotNull @jakarta.validation.constraints.NotNull - MultipleNamespacesParams params) + GetNamespacesResponse getNamespaces(@BeanParam @NotNull MultipleNamespacesParams params) throws NessieReferenceNotFoundException; @Override @POST - @jakarta.ws.rs.POST @Path("/namespace/{ref}/{name}") - @jakarta.ws.rs.Path("/namespace/{ref}/{name}") @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @APIResponses({ @APIResponse( responseCode = "200", @@ -181,8 +156,7 @@ GetNamespacesResponse getNamespaces( }) @JsonView(Views.V1.class) void updateProperties( - @BeanParam @jakarta.ws.rs.BeanParam @NotNull @jakarta.validation.constraints.NotNull - NamespaceParams params, + @BeanParam @NotNull NamespaceParams params, @RequestBody( description = "Namespace properties to update/delete.", content = { @@ -191,7 +165,6 @@ void updateProperties( examples = {@ExampleObject(ref = "namespaceUpdate")}) }) @NotNull - @jakarta.validation.constraints.NotNull NamespaceUpdate namespaceUpdate) throws NessieNamespaceNotFoundException, NessieReferenceNotFoundException; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/http/HttpTreeApi.java b/api/model/src/main/java/org/projectnessie/api/v1/http/HttpTreeApi.java index 27a60c63919..e18e4b99790 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/http/HttpTreeApi.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/http/HttpTreeApi.java @@ -16,17 +16,17 @@ package org.projectnessie.api.v1.http; import com.fasterxml.jackson.annotation.JsonView; -import javax.ws.rs.BeanParam; -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; +import jakarta.ws.rs.BeanParam; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.DELETE; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.PUT; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.MediaType; import org.eclipse.microprofile.openapi.annotations.Operation; import org.eclipse.microprofile.openapi.annotations.media.Content; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; @@ -56,16 +56,12 @@ @Tag(name = "v1") @Consumes(MediaType.APPLICATION_JSON) -@jakarta.ws.rs.Consumes(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("v1/trees") -@jakarta.ws.rs.Path("v1/trees") public interface HttpTreeApi extends TreeApi { @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Operation(summary = "Get all references") @APIResponses({ @APIResponse( @@ -82,15 +78,12 @@ public interface HttpTreeApi extends TreeApi { @APIResponse(responseCode = "401", description = "Invalid credentials provided"), }) @JsonView(Views.V1.class) - ReferencesResponse getAllReferences(@BeanParam @jakarta.ws.rs.BeanParam ReferencesParams params); + ReferencesResponse getAllReferences(@BeanParam ReferencesParams params); @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("tree") - @jakarta.ws.rs.Path("tree") @Operation(summary = "Get default branch for commits and reads") @APIResponses({ @APIResponse( @@ -109,11 +102,8 @@ public interface HttpTreeApi extends TreeApi { @Override @POST - @jakarta.ws.rs.POST @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("tree") - @jakarta.ws.rs.Path("tree") @Operation( summary = "Create a new reference", description = @@ -143,9 +133,7 @@ public interface HttpTreeApi extends TreeApi { }) @JsonView(Views.V1.class) Reference createReference( - @Parameter(description = "Source named reference") - @QueryParam("sourceRefName") - @jakarta.ws.rs.QueryParam("sourceRefName") + @Parameter(description = "Source named reference") @QueryParam("sourceRefName") String sourceRefName, @RequestBody( description = "Reference to create.", @@ -159,11 +147,8 @@ Reference createReference( @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("tree/{ref}") - @jakarta.ws.rs.Path("tree/{ref}") @Operation(summary = "Fetch details of a reference") @APIResponses({ @APIResponse( @@ -181,16 +166,12 @@ Reference createReference( @APIResponse(responseCode = "404", description = "Ref not found") }) @JsonView(Views.V1.class) - Reference getReferenceByName(@BeanParam @jakarta.ws.rs.BeanParam GetReferenceParams params) - throws NessieNotFoundException; + Reference getReferenceByName(@BeanParam GetReferenceParams params) throws NessieNotFoundException; @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("tree/{ref}/entries") - @jakarta.ws.rs.Path("tree/{ref}/entries") @Operation( summary = "Fetch all entries for a given reference", description = @@ -240,18 +221,14 @@ EntriesResponse getEntries( description = "name of ref to fetch from", examples = {@ExampleObject(ref = "ref")}) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") String refName, - @BeanParam @jakarta.ws.rs.BeanParam EntriesParams params) + @BeanParam EntriesParams params) throws NessieNotFoundException; @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("tree/{ref}/log") - @jakarta.ws.rs.Path("tree/{ref}/log") @Operation( summary = "Get commit log for a reference", description = @@ -300,16 +277,13 @@ LogResponse getCommitLog( description = "ref to show log from", examples = {@ExampleObject(ref = "ref")}) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") String ref, - @BeanParam @jakarta.ws.rs.BeanParam CommitLogParams params) + @BeanParam CommitLogParams params) throws NessieNotFoundException; @Override @PUT - @jakarta.ws.rs.PUT @Path("{referenceType}/{referenceName}") - @jakarta.ws.rs.Path("{referenceType}/{referenceName}") @Operation( summary = "Set a named reference to a specific hash via a named-reference.", description = @@ -329,20 +303,17 @@ void assignReference( description = "Reference type to reassign", examples = {@ExampleObject(ref = "referenceType")}) @PathParam("referenceType") - @jakarta.ws.rs.PathParam("referenceType") Reference.ReferenceType referenceType, @Parameter( description = "Reference name to reassign", examples = {@ExampleObject(ref = "ref")}) @PathParam("referenceName") - @jakarta.ws.rs.PathParam("referenceName") String referenceName, @Parameter( description = "Expected previous hash of reference", required = true, examples = {@ExampleObject(ref = "hash")}) @QueryParam("expectedHash") - @jakarta.ws.rs.QueryParam("expectedHash") String expectedHash, @RequestBody( description = @@ -357,9 +328,7 @@ void assignReference( @Override @DELETE - @jakarta.ws.rs.DELETE @Path("{referenceType}/{referenceName}") - @jakarta.ws.rs.Path("{referenceType}/{referenceName}") @Operation(summary = "Delete a reference endpoint") @APIResponses({ @APIResponse(responseCode = "204", description = "Deleted successfully."), @@ -375,30 +344,24 @@ void deleteReference( description = "Reference type to delete", examples = {@ExampleObject(ref = "referenceType")}) @PathParam("referenceType") - @jakarta.ws.rs.PathParam("referenceType") Reference.ReferenceType referenceType, @Parameter( description = "Reference name to delete", examples = {@ExampleObject(ref = "ref")}) @PathParam("referenceName") - @jakarta.ws.rs.PathParam("referenceName") String referenceName, @Parameter( description = "Expected hash of tag", required = true, examples = {@ExampleObject(ref = "hash")}) @QueryParam("expectedHash") - @jakarta.ws.rs.QueryParam("expectedHash") String expectedHash) throws NessieConflictException, NessieNotFoundException; @Override @POST - @jakarta.ws.rs.POST @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("branch/{branchName}/transplant") - @jakarta.ws.rs.Path("branch/{branchName}/transplant") @Operation( summary = "Transplant commits from 'transplant' onto 'branchName'", description = @@ -435,20 +398,17 @@ MergeResponse transplantCommitsIntoBranch( description = "Branch to transplant into", examples = {@ExampleObject(ref = "ref")}) @PathParam("branchName") - @jakarta.ws.rs.PathParam("branchName") String branchName, @Parameter( description = "Expected hash of tag.", required = true, examples = {@ExampleObject(ref = "hash")}) @QueryParam("expectedHash") - @jakarta.ws.rs.QueryParam("expectedHash") String expectedHash, @Parameter( description = "commit message", examples = {@ExampleObject(ref = "commitMessage")}) @QueryParam("message") - @jakarta.ws.rs.QueryParam("message") String message, @RequestBody( description = "Hashes to transplant", @@ -461,11 +421,8 @@ MergeResponse transplantCommitsIntoBranch( @Override @POST - @jakarta.ws.rs.POST @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("branch/{branchName}/merge") - @jakarta.ws.rs.Path("branch/{branchName}/merge") @Operation( summary = "Merge commits from 'mergeRef' onto 'branchName'.", description = @@ -503,14 +460,12 @@ MergeResponse mergeRefIntoBranch( description = "Branch to merge into", examples = {@ExampleObject(ref = "ref")}) @PathParam("branchName") - @jakarta.ws.rs.PathParam("branchName") String branchName, @Parameter( description = "Expected current HEAD of 'branchName'", required = true, examples = {@ExampleObject(ref = "hash")}) @QueryParam("expectedHash") - @jakarta.ws.rs.QueryParam("expectedHash") String expectedHash, @RequestBody( description = @@ -525,13 +480,9 @@ MergeResponse mergeRefIntoBranch( @Override @POST - @jakarta.ws.rs.POST @Path("branch/{branchName}/commit") - @jakarta.ws.rs.Path("branch/{branchName}/commit") @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Consumes(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Operation( summary = "Commit multiple operations against the given branch expecting that branch to have " @@ -561,13 +512,11 @@ Branch commitMultipleOperations( description = "Branch to change, defaults to default branch.", examples = {@ExampleObject(ref = "ref")}) @PathParam("branchName") - @jakarta.ws.rs.PathParam("branchName") String branchName, @Parameter( description = "Expected hash of branch.", examples = {@ExampleObject(ref = "hash")}) @QueryParam("expectedHash") - @jakarta.ws.rs.QueryParam("expectedHash") String expectedHash, @RequestBody( description = "Operations", diff --git a/api/model/src/main/java/org/projectnessie/api/v1/params/AbstractParams.java b/api/model/src/main/java/org/projectnessie/api/v1/params/AbstractParams.java index a5cbaf93f70..93eb02e7824 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/params/AbstractParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/params/AbstractParams.java @@ -15,17 +15,15 @@ */ package org.projectnessie.api.v1.params; -import javax.annotation.Nullable; -import javax.ws.rs.QueryParam; +import jakarta.annotation.Nullable; +import jakarta.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; public abstract class AbstractParams> { @Parameter(description = "maximum number of entries to return, just a hint for the server") @QueryParam("maxRecords") - @jakarta.ws.rs.QueryParam("maxRecords") @Nullable - @jakarta.annotation.Nullable private Integer maxRecords; @Parameter( @@ -33,9 +31,7 @@ public abstract class AbstractParams> { "paging continuation token, as returned in the previous value of the field 'token' in " + "the corresponding 'EntriesResponse' or 'LogResponse' or 'ReferencesResponse' or 'RefLogResponse'.") @QueryParam("pageToken") - @jakarta.ws.rs.QueryParam("pageToken") @Nullable - @jakarta.annotation.Nullable private String pageToken; protected AbstractParams() {} @@ -46,13 +42,11 @@ protected AbstractParams(Integer maxRecords, String pageToken) { } @Nullable - @jakarta.annotation.Nullable public Integer maxRecords() { return maxRecords; } @Nullable - @jakarta.annotation.Nullable public String pageToken() { return pageToken; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/params/BaseMergeTransplant.java b/api/model/src/main/java/org/projectnessie/api/v1/params/BaseMergeTransplant.java index bdb93c5dbcc..2d1fee75206 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/params/BaseMergeTransplant.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/params/BaseMergeTransplant.java @@ -17,10 +17,10 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude.Include; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.Pattern; import java.util.List; -import javax.annotation.Nullable; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.Pattern; import org.projectnessie.model.MergeBehavior; import org.projectnessie.model.MergeKeyBehavior; import org.projectnessie.model.MergeResponse; @@ -29,37 +29,28 @@ public interface BaseMergeTransplant { @NotBlank - @jakarta.validation.constraints.NotBlank @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String getFromRefName(); @SuppressWarnings("DeprecatedIsStillUsed") @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) @Deprecated Boolean keepIndividualCommits(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) List getKeyMergeModes(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) MergeBehavior getDefaultKeyMergeMode(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) Boolean isDryRun(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) Boolean isFetchAdditionalInfo(); @@ -69,7 +60,6 @@ public interface BaseMergeTransplant { * throwing a {@link org.projectnessie.error.NessieReferenceConflictException}. */ @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) Boolean isReturnConflictAsResult(); } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/params/CommitLogParams.java b/api/model/src/main/java/org/projectnessie/api/v1/params/CommitLogParams.java index 82a2ecfdaaa..640805a7155 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/params/CommitLogParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/params/CommitLogParams.java @@ -15,11 +15,11 @@ */ package org.projectnessie.api.v1.params; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.Pattern; +import jakarta.ws.rs.QueryParam; import java.util.Objects; import java.util.StringJoiner; -import javax.annotation.Nullable; -import javax.validation.constraints.Pattern; -import javax.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.projectnessie.model.FetchOption; @@ -35,37 +35,26 @@ public class CommitLogParams extends AbstractParams { @Nullable - @jakarta.annotation.Nullable @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_REGEX, - message = Validation.HASH_MESSAGE) @Parameter( description = "Hash on the given ref to start from (in chronological sense), the 'far' end of the commit log, returned 'late' in the result.", examples = {@ExampleObject(ref = "nullHash"), @ExampleObject(ref = "hash")}) @QueryParam("startHash") - @jakarta.ws.rs.QueryParam("startHash") private String startHash; @Nullable - @jakarta.annotation.Nullable @Pattern( regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, - message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) @Parameter( description = "Hash on the given ref to end at (in chronological sense), the 'near' end of the commit log, returned 'early' in the result.", examples = {@ExampleObject(ref = "nullHash"), @ExampleObject(ref = "hash")}) @QueryParam("endHash") - @jakarta.ws.rs.QueryParam("endHash") private String endHash; @Nullable - @jakarta.annotation.Nullable @Parameter( description = "A Common Expression Language (CEL) expression. An intro to CEL can be found at https://github.com/google/cel-spec/blob/master/doc/intro.md.\n\n" @@ -82,28 +71,25 @@ public class CommitLogParams extends AbstractParams { @ExampleObject(ref = "expr_by_commit_operations_type") }) @QueryParam("filter") - @jakarta.ws.rs.QueryParam("filter") private String filter; @Parameter( description = "Specify how much information to be returned. Will fetch additional metadata such as parent commit hash and operations in a commit, for each commit if set to 'ALL'.") @QueryParam("fetch") - @jakarta.ws.rs.QueryParam("fetch") @Nullable - @jakarta.annotation.Nullable private FetchOption fetchOption; public CommitLogParams() {} @org.immutables.builder.Builder.Constructor CommitLogParams( - @Nullable @jakarta.annotation.Nullable String startHash, - @Nullable @jakarta.annotation.Nullable String endHash, - @Nullable @jakarta.annotation.Nullable Integer maxRecords, - @Nullable @jakarta.annotation.Nullable String pageToken, - @Nullable @jakarta.annotation.Nullable String filter, - @Nullable @jakarta.annotation.Nullable FetchOption fetchOption) { + @Nullable String startHash, + @Nullable String endHash, + @Nullable Integer maxRecords, + @Nullable String pageToken, + @Nullable String filter, + @Nullable FetchOption fetchOption) { super(maxRecords, pageToken); this.startHash = startHash; this.endHash = endHash; @@ -112,25 +98,21 @@ public CommitLogParams() {} } @Nullable - @jakarta.annotation.Nullable public String startHash() { return startHash; } @Nullable - @jakarta.annotation.Nullable public String endHash() { return endHash; } @Nullable - @jakarta.annotation.Nullable public String filter() { return filter; } @Nullable - @jakarta.annotation.Nullable public FetchOption fetchOption() { return fetchOption; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/params/DiffParams.java b/api/model/src/main/java/org/projectnessie/api/v1/params/DiffParams.java index 578be7cbfc7..0da673b48cb 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/params/DiffParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/params/DiffParams.java @@ -15,11 +15,11 @@ */ package org.projectnessie.api.v1.params; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; +import jakarta.ws.rs.PathParam; import java.util.Objects; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; -import javax.ws.rs.PathParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.projectnessie.model.Validation; @@ -31,45 +31,29 @@ public class DiffParams { private static final char HASH_SEPARATOR = '*'; @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) private String fromRef; @Nullable - @jakarta.annotation.Nullable @Pattern(regexp = HASH_OPTIONAL_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = HASH_OPTIONAL_REGEX, - message = Validation.HASH_MESSAGE) private String fromHashOnRef; @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) private String toRef; @Nullable - @jakarta.annotation.Nullable @Pattern(regexp = HASH_OPTIONAL_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = HASH_OPTIONAL_REGEX, - message = Validation.HASH_MESSAGE) private String toHashOnRef; @Parameter( description = "The 'from' reference (and optional hash) to start the diff from", examples = {@ExampleObject(ref = "ref"), @ExampleObject(ref = "refForDiffWithHash")}) @PathParam("fromRefWithHash") - @jakarta.ws.rs.PathParam("fromRefWithHash") private String fromRefWithHash; @Parameter( description = "The 'to' reference (and optional hash) to end the diff at.", examples = {@ExampleObject(ref = "ref"), @ExampleObject(ref = "refForDiffWithHash")}) @PathParam("toRefWithHash") - @jakarta.ws.rs.PathParam("toRefWithHash") private String toRefWithHash; public DiffParams() {} @@ -82,10 +66,10 @@ public DiffParams() {} @org.immutables.builder.Builder.Constructor DiffParams( - @NotNull @jakarta.validation.constraints.NotNull String fromRef, - @Nullable @jakarta.annotation.Nullable String fromHashOnRef, - @NotNull @jakarta.validation.constraints.NotNull String toRef, - @Nullable @jakarta.annotation.Nullable String toHashOnRef) { + @NotNull String fromRef, + @Nullable String fromHashOnRef, + @NotNull String toRef, + @Nullable String toHashOnRef) { this.fromRef = fromRef; this.fromHashOnRef = fromHashOnRef; this.toRef = toRef; @@ -112,7 +96,6 @@ public String getFromRef() { } @Nullable - @jakarta.annotation.Nullable public String getFromHashOnRef() { if (fromRefWithHash != null) { this.fromRef = parseRefName(fromRefWithHash); @@ -132,7 +115,6 @@ public String getToRef() { } @Nullable - @jakarta.annotation.Nullable public String getToHashOnRef() { if (toRefWithHash != null) { this.toRef = parseRefName(toRefWithHash); diff --git a/api/model/src/main/java/org/projectnessie/api/v1/params/EntriesParams.java b/api/model/src/main/java/org/projectnessie/api/v1/params/EntriesParams.java index 9394fec440e..3f197771884 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/params/EntriesParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/params/EntriesParams.java @@ -15,11 +15,11 @@ */ package org.projectnessie.api.v1.params; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.Pattern; +import jakarta.ws.rs.QueryParam; import java.util.Objects; import java.util.StringJoiner; -import javax.annotation.Nullable; -import javax.validation.constraints.Pattern; -import javax.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.projectnessie.model.Validation; @@ -34,32 +34,24 @@ public class EntriesParams extends AbstractParams { @Nullable - @jakarta.annotation.Nullable @Pattern( regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, - message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) @Parameter( description = "a particular hash on the given ref", examples = {@ExampleObject(ref = "nullHash"), @ExampleObject(ref = "hash")}) @QueryParam("hashOnRef") - @jakarta.ws.rs.QueryParam("hashOnRef") private String hashOnRef; @Nullable - @jakarta.annotation.Nullable @Parameter( description = "If set > 0 will filter the results to only return namespaces/tables to the depth of namespaceDepth. If not set or <=0 has no effect\n" + "Setting this parameter > 0 will turn off paging.") @QueryParam("namespaceDepth") - @jakarta.ws.rs.QueryParam("namespaceDepth") private Integer namespaceDepth; @Nullable - @jakarta.annotation.Nullable @Parameter( description = "A Common Expression Language (CEL) expression. An intro to CEL can be found at https://github.com/google/cel-spec/blob/master/doc/intro.md.\n" @@ -70,18 +62,17 @@ public class EntriesParams extends AbstractParams { @ExampleObject(ref = "expr_by_namespace_and_contentType") }) @QueryParam("filter") - @jakarta.ws.rs.QueryParam("filter") private String filter; public EntriesParams() {} @org.immutables.builder.Builder.Constructor EntriesParams( - @Nullable @jakarta.annotation.Nullable String hashOnRef, - @Nullable @jakarta.annotation.Nullable Integer maxRecords, - @Nullable @jakarta.annotation.Nullable String pageToken, - @Nullable @jakarta.annotation.Nullable Integer namespaceDepth, - @Nullable @jakarta.annotation.Nullable String filter) { + @Nullable String hashOnRef, + @Nullable Integer maxRecords, + @Nullable String pageToken, + @Nullable Integer namespaceDepth, + @Nullable String filter) { super(maxRecords, pageToken); this.hashOnRef = hashOnRef; this.namespaceDepth = namespaceDepth; @@ -97,19 +88,16 @@ public static EntriesParams empty() { } @Nullable - @jakarta.annotation.Nullable public String hashOnRef() { return hashOnRef; } @Nullable - @jakarta.annotation.Nullable public String filter() { return filter; } @Nullable - @jakarta.annotation.Nullable public Integer namespaceDepth() { return namespaceDepth; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/params/GetReferenceParams.java b/api/model/src/main/java/org/projectnessie/api/v1/params/GetReferenceParams.java index a5992330c46..8039e5ae9fb 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/params/GetReferenceParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/params/GetReferenceParams.java @@ -15,13 +15,13 @@ */ package org.projectnessie.api.v1.params; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.QueryParam; import java.util.Objects; import java.util.StringJoiner; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; -import javax.ws.rs.PathParam; -import javax.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.immutables.builder.Builder; @@ -34,13 +34,8 @@ public class GetReferenceParams { description = "name of ref to fetch", examples = {@ExampleObject(ref = "ref")}) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) private String refName; @Parameter( @@ -55,23 +50,18 @@ public class GetReferenceParams { + "A returned Tag instance will only contain the 'commitMetaOfHEAD' and 'numTotalCommits' fields.\n\n" + "Note that computing & fetching additional metadata might be computationally expensive on the server-side, so this flag should be used with care.") @QueryParam("fetch") - @jakarta.ws.rs.QueryParam("fetch") @Nullable - @jakarta.annotation.Nullable private FetchOption fetchOption; public GetReferenceParams() {} @Builder.Constructor - GetReferenceParams( - @NotNull @jakarta.validation.constraints.NotNull String refName, - @Nullable @jakarta.annotation.Nullable FetchOption fetchOption) { + GetReferenceParams(@NotNull String refName, @Nullable FetchOption fetchOption) { this.refName = refName; this.fetchOption = fetchOption; } @Nullable - @jakarta.annotation.Nullable public FetchOption fetchOption() { return fetchOption; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/params/Merge.java b/api/model/src/main/java/org/projectnessie/api/v1/params/Merge.java index 51cf07bfcea..fc62269b571 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/params/Merge.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/params/Merge.java @@ -19,8 +19,8 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.Pattern; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.Pattern; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.eclipse.microprofile.openapi.annotations.media.SchemaProperty; @@ -41,11 +41,7 @@ public interface Merge extends BaseMergeTransplant { @NotBlank - @jakarta.validation.constraints.NotBlank @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_REGEX, - message = Validation.HASH_MESSAGE) String getFromHash(); /** diff --git a/api/model/src/main/java/org/projectnessie/api/v1/params/MultipleNamespacesParams.java b/api/model/src/main/java/org/projectnessie/api/v1/params/MultipleNamespacesParams.java index 2b0c5e18fca..06e156d378f 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/params/MultipleNamespacesParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/params/MultipleNamespacesParams.java @@ -15,13 +15,13 @@ */ package org.projectnessie.api.v1.params; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.QueryParam; import java.util.Objects; import java.util.StringJoiner; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; -import javax.ws.rs.PathParam; -import javax.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.immutables.builder.Builder; @@ -34,13 +34,8 @@ public class MultipleNamespacesParams { description = "name of ref to fetch", examples = {@ExampleObject(ref = "ref")}) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) private String refName; @Parameter( @@ -50,27 +45,21 @@ public class MultipleNamespacesParams { @ExampleObject(ref = "emptyNamespaceName") }) @QueryParam("name") - @jakarta.ws.rs.QueryParam("name") @Nullable - @jakarta.annotation.Nullable private Namespace namespace; @Parameter( description = "a particular hash on the given ref", examples = {@ExampleObject(ref = "nullHash"), @ExampleObject(ref = "hash")}) @QueryParam("hashOnRef") - @jakarta.ws.rs.QueryParam("hashOnRef") @Nullable - @jakarta.annotation.Nullable private String hashOnRef; public MultipleNamespacesParams() {} @Builder.Constructor MultipleNamespacesParams( - @NotNull @jakarta.validation.constraints.NotNull String refName, - @Nullable @jakarta.annotation.Nullable Namespace namespace, - @Nullable @jakarta.annotation.Nullable String hashOnRef) { + @NotNull String refName, @Nullable Namespace namespace, @Nullable String hashOnRef) { this.refName = refName; this.namespace = namespace; this.hashOnRef = hashOnRef; @@ -81,13 +70,11 @@ public String getRefName() { } @Nullable - @jakarta.annotation.Nullable public Namespace getNamespace() { return namespace; } @Nullable - @jakarta.annotation.Nullable public String getHashOnRef() { return hashOnRef; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/params/NamespaceParams.java b/api/model/src/main/java/org/projectnessie/api/v1/params/NamespaceParams.java index b74c6d79ace..9b656b069b9 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/params/NamespaceParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/params/NamespaceParams.java @@ -15,13 +15,13 @@ */ package org.projectnessie.api.v1.params; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.QueryParam; import java.util.Objects; import java.util.StringJoiner; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; -import javax.ws.rs.PathParam; -import javax.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.immutables.builder.Builder; @@ -34,38 +34,28 @@ public class NamespaceParams { description = "name of ref to fetch", examples = {@ExampleObject(ref = "ref")}) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) private String refName; @Parameter( description = "the name of the namespace", examples = {@ExampleObject(ref = "namespaceName")}) @PathParam("name") - @jakarta.ws.rs.PathParam("name") private Namespace namespace; @Parameter( description = "a particular hash on the given ref", examples = {@ExampleObject(ref = "nullHash"), @ExampleObject(ref = "hash")}) @QueryParam("hashOnRef") - @jakarta.ws.rs.QueryParam("hashOnRef") @Nullable - @jakarta.annotation.Nullable private String hashOnRef; public NamespaceParams() {} @Builder.Constructor NamespaceParams( - @NotNull @jakarta.validation.constraints.NotNull String refName, - @NotNull @jakarta.validation.constraints.NotNull Namespace namespace, - @Nullable @jakarta.annotation.Nullable String hashOnRef) { + @NotNull String refName, @NotNull Namespace namespace, @Nullable String hashOnRef) { this.refName = refName; this.namespace = namespace; this.hashOnRef = hashOnRef; @@ -80,7 +70,6 @@ public Namespace getNamespace() { } @Nullable - @jakarta.annotation.Nullable public String getHashOnRef() { return hashOnRef; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/params/NamespaceUpdate.java b/api/model/src/main/java/org/projectnessie/api/v1/params/NamespaceUpdate.java index 04175b75bbf..13af42310c4 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/params/NamespaceUpdate.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/params/NamespaceUpdate.java @@ -17,9 +17,9 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; import java.util.Map; import java.util.Set; -import javax.annotation.Nullable; import org.immutables.value.Value; @Value.Immutable @@ -28,10 +28,8 @@ public abstract class NamespaceUpdate { @Nullable - @jakarta.annotation.Nullable public abstract Map getPropertyUpdates(); @Nullable - @jakarta.annotation.Nullable public abstract Set getPropertyRemovals(); } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/params/RefLogParams.java b/api/model/src/main/java/org/projectnessie/api/v1/params/RefLogParams.java index 63a0952daf9..90f49bc8644 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/params/RefLogParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/params/RefLogParams.java @@ -15,11 +15,11 @@ */ package org.projectnessie.api.v1.params; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.Pattern; +import jakarta.ws.rs.QueryParam; import java.util.Objects; import java.util.StringJoiner; -import javax.annotation.Nullable; -import javax.validation.constraints.Pattern; -import javax.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.projectnessie.model.Validation; @@ -35,37 +35,26 @@ public class RefLogParams extends AbstractParams { @Nullable - @jakarta.annotation.Nullable @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_REGEX, - message = Validation.HASH_MESSAGE) @Parameter( description = "Hash of the reflog (inclusive) to start from (in chronological sense), the 'far' end of the reflog, " + "returned " + "'late' in the result.") @QueryParam("startHash") - @jakarta.ws.rs.QueryParam("startHash") private String startHash; @Nullable - @jakarta.annotation.Nullable @Pattern(regexp = Validation.HASH_REGEX, message = Validation.HASH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_REGEX, - message = Validation.HASH_MESSAGE) @Parameter( description = "Hash of the reflog (inclusive) to end at (in chronological sense), the 'near' end of the reflog, returned " + "'early' " + "in the result.") @QueryParam("endHash") - @jakarta.ws.rs.QueryParam("endHash") private String endHash; @Nullable - @jakarta.annotation.Nullable @Parameter( description = "A Common Expression Language (CEL) expression. An intro to CEL can be found at https://github.com/google/cel-spec/blob/master/doc/intro.md.\n\n" @@ -76,7 +65,6 @@ public class RefLogParams extends AbstractParams { + "checking whether 'ReflogResponseEntry.parentRefLogId' is different from the hash of the previous " + "reflog in the log response.") @QueryParam("filter") - @jakarta.ws.rs.QueryParam("filter") private String filter; @SuppressWarnings("unused") @@ -84,11 +72,11 @@ public RefLogParams() {} @org.immutables.builder.Builder.Constructor RefLogParams( - @Nullable @jakarta.annotation.Nullable String startHash, - @Nullable @jakarta.annotation.Nullable String endHash, - @Nullable @jakarta.annotation.Nullable Integer maxRecords, - @Nullable @jakarta.annotation.Nullable String pageToken, - @Nullable @jakarta.annotation.Nullable String filter) { + @Nullable String startHash, + @Nullable String endHash, + @Nullable Integer maxRecords, + @Nullable String pageToken, + @Nullable String filter) { super(maxRecords, pageToken); this.startHash = startHash; this.endHash = endHash; @@ -96,19 +84,16 @@ public RefLogParams() {} } @Nullable - @jakarta.annotation.Nullable public String startHash() { return startHash; } @Nullable - @jakarta.annotation.Nullable public String endHash() { return endHash; } @Nullable - @jakarta.annotation.Nullable public String filter() { return filter; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/params/ReferencesParams.java b/api/model/src/main/java/org/projectnessie/api/v1/params/ReferencesParams.java index 20c475219dd..50f59e8a502 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/params/ReferencesParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/params/ReferencesParams.java @@ -15,10 +15,10 @@ */ package org.projectnessie.api.v1.params; +import jakarta.annotation.Nullable; +import jakarta.ws.rs.QueryParam; import java.util.Objects; import java.util.StringJoiner; -import javax.annotation.Nullable; -import javax.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.projectnessie.api.v1.http.HttpTreeApi; @@ -45,9 +45,7 @@ public class ReferencesParams extends AbstractParams { + "A returned Tag instance will only contain the 'commitMetaOfHEAD' and 'numTotalCommits' fields.\n\n" + "Note that computing & fetching additional metadata might be computationally expensive on the server-side, so this flag should be used with care.") @QueryParam("fetch") - @jakarta.ws.rs.QueryParam("fetch") @Nullable - @jakarta.annotation.Nullable private FetchOption fetchOption; @Parameter( @@ -65,32 +63,28 @@ public class ReferencesParams extends AbstractParams { @ExampleObject(ref = "expr_by_ref_commit") }) @QueryParam("filter") - @jakarta.ws.rs.QueryParam("filter") @Nullable - @jakarta.annotation.Nullable private String filter; public ReferencesParams() {} @org.immutables.builder.Builder.Constructor ReferencesParams( - @Nullable @jakarta.annotation.Nullable Integer maxRecords, - @Nullable @jakarta.annotation.Nullable String pageToken, - @Nullable @jakarta.annotation.Nullable FetchOption fetchOption, - @Nullable @jakarta.annotation.Nullable String filter) { + @Nullable Integer maxRecords, + @Nullable String pageToken, + @Nullable FetchOption fetchOption, + @Nullable String filter) { super(maxRecords, pageToken); this.fetchOption = fetchOption; this.filter = filter; } @Nullable - @jakarta.annotation.Nullable public FetchOption fetchOption() { return fetchOption; } @Nullable - @jakarta.annotation.Nullable public String filter() { return filter; } diff --git a/api/model/src/main/java/org/projectnessie/api/v1/params/Transplant.java b/api/model/src/main/java/org/projectnessie/api/v1/params/Transplant.java index 06fbe703b35..3f691f684f3 100644 --- a/api/model/src/main/java/org/projectnessie/api/v1/params/Transplant.java +++ b/api/model/src/main/java/org/projectnessie/api/v1/params/Transplant.java @@ -19,9 +19,9 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import java.util.List; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.eclipse.microprofile.openapi.annotations.media.SchemaProperty; @@ -42,9 +42,7 @@ public interface Transplant extends BaseMergeTransplant { @NotNull - @jakarta.validation.constraints.NotNull - @Size - @jakarta.validation.constraints.Size(min = 1) + @Size(min = 1) List getHashesToTransplant(); /** diff --git a/api/model/src/main/java/org/projectnessie/api/v2/TreeApi.java b/api/model/src/main/java/org/projectnessie/api/v2/TreeApi.java index 174724f4802..818deadf235 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/TreeApi.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/TreeApi.java @@ -15,10 +15,10 @@ */ package org.projectnessie.api.v2; -import javax.annotation.Nullable; -import javax.validation.Valid; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; +import jakarta.annotation.Nullable; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; import org.projectnessie.api.v2.params.CommitLogParams; import org.projectnessie.api.v2.params.DiffParams; import org.projectnessie.api.v2.params.EntriesParams; @@ -87,30 +87,18 @@ public interface TreeApi { */ SingleReferenceResponse createReference( @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String name, @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_TYPE_REGEX, message = Validation.REF_TYPE_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_TYPE_REGEX, - message = Validation.REF_TYPE_MESSAGE) String type, - @Valid @jakarta.validation.Valid @Nullable @jakarta.annotation.Nullable Reference sourceRef) + @Valid @Nullable Reference sourceRef) throws NessieNotFoundException, NessieConflictException; /** Get details of a particular ref, if it exists. */ - SingleReferenceResponse getReferenceByName( - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - GetReferenceParams params) + SingleReferenceResponse getReferenceByName(@Valid @NotNull GetReferenceParams params) throws NessieNotFoundException; /** @@ -120,9 +108,7 @@ SingleReferenceResponse getReferenceByName( * current pointer, aka HEAD. The size and time limits are configured in the Nessie server * configuration. */ - ReferenceHistoryResponse getReferenceHistory( - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - ReferenceHistoryParams params) + ReferenceHistoryResponse getReferenceHistory(@Valid @NotNull ReferenceHistoryParams params) throws NessieNotFoundException; /** @@ -145,18 +131,12 @@ ReferenceHistoryResponse getReferenceHistory( */ EntriesResponse getEntries( @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern( regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_PATH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_PATH_MESSAGE) String refName, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - EntriesParams params) + @Valid @NotNull EntriesParams params) throws NessieNotFoundException; /** @@ -178,18 +158,12 @@ EntriesResponse getEntries( */ LogResponse getCommitLog( @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern( regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_PATH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_PATH_MESSAGE) String ref, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - CommitLogParams params) + @Valid @NotNull CommitLogParams params) throws NessieNotFoundException; /** @@ -198,10 +172,7 @@ LogResponse getCommitLog( * @param params The {@link DiffParams} that includes the parameters for this API call. * @return A set of diff values that show the difference between two given references. */ - DiffResponse getDiff( - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - DiffParams params) - throws NessieNotFoundException; + DiffResponse getDiff(@Valid @NotNull DiffParams params) throws NessieNotFoundException; /** * Update a reference's HEAD to point to a different commit. @@ -209,26 +180,15 @@ DiffResponse getDiff( * @param type Optional expected type of reference being assigned. Will be validated if present. */ SingleReferenceResponse assignReference( - @Valid - @jakarta.validation.Valid - @Pattern(regexp = Validation.REF_TYPE_REGEX, message = Validation.REF_TYPE_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_TYPE_REGEX, - message = Validation.REF_TYPE_MESSAGE) + @Valid @Pattern(regexp = Validation.REF_TYPE_REGEX, message = Validation.REF_TYPE_MESSAGE) String type, @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern( regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_PATH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_PATH_MESSAGE) String reference, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - Reference assignTo) + @Valid @NotNull Reference assignTo) throws NessieNotFoundException, NessieConflictException; /** @@ -237,56 +197,36 @@ SingleReferenceResponse assignReference( * @param type Optional expected type of reference being deleted. Will be validated if present. */ SingleReferenceResponse deleteReference( - @Valid - @jakarta.validation.Valid - @Pattern(regexp = Validation.REF_TYPE_REGEX, message = Validation.REF_TYPE_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_TYPE_REGEX, - message = Validation.REF_TYPE_MESSAGE) + @Valid @Pattern(regexp = Validation.REF_TYPE_REGEX, message = Validation.REF_TYPE_MESSAGE) String type, @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern( regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_PATH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_PATH_MESSAGE) String reference) throws NessieConflictException, NessieNotFoundException; /** Cherry-pick a set of commits into a branch. */ MergeResponse transplantCommitsIntoBranch( @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern( regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_PATH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_PATH_MESSAGE) String branch, - @Valid @jakarta.validation.Valid Transplant transplant) + @Valid Transplant transplant) throws NessieNotFoundException, NessieConflictException; /** Merge commits from any reference onto a branch. */ MergeResponse mergeRefIntoBranch( @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern( regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_PATH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_PATH_MESSAGE) String branch, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull Merge merge) + @Valid @NotNull Merge merge) throws NessieNotFoundException, NessieConflictException; /** @@ -303,18 +243,12 @@ MergeResponse mergeRefIntoBranch( */ CommitResponse commitMultipleOperations( @Valid - @jakarta.validation.Valid @NotNull - @jakarta.validation.constraints.NotNull @Pattern( regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_PATH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_PATH_MESSAGE) String branch, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - Operations operations) + @Valid @NotNull Operations operations) throws NessieNotFoundException, NessieConflictException; /** @@ -341,15 +275,11 @@ CommitResponse commitMultipleOperations( * thrown. */ ContentResponse getContent( - @Valid @jakarta.validation.Valid ContentKey key, + @Valid ContentKey key, @Valid - @jakarta.validation.Valid @Pattern( regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_PATH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_PATH_MESSAGE) String ref, boolean withDocumentation, boolean forWrite) @@ -379,16 +309,11 @@ ContentResponse getContent( */ GetMultipleContentsResponse getMultipleContents( @Valid - @jakarta.validation.Valid @Pattern( regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_PATH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_PATH_MESSAGE) String ref, - @Valid @jakarta.validation.Valid @NotNull @jakarta.validation.constraints.NotNull - GetMultipleContentsRequest request, + @Valid @NotNull GetMultipleContentsRequest request, boolean withDocumentation, boolean forWrite) throws NessieNotFoundException; diff --git a/api/model/src/main/java/org/projectnessie/api/v2/http/HttpConfigApi.java b/api/model/src/main/java/org/projectnessie/api/v2/http/HttpConfigApi.java index ce7ca71e029..09b0f9a9d9f 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/http/HttpConfigApi.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/http/HttpConfigApi.java @@ -16,13 +16,13 @@ package org.projectnessie.api.v2.http; import com.fasterxml.jackson.annotation.JsonView; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.MediaType; import java.util.List; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; import org.eclipse.microprofile.openapi.annotations.Operation; import org.eclipse.microprofile.openapi.annotations.media.Content; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; @@ -39,15 +39,12 @@ import org.projectnessie.model.ser.Views; @Path("v2/config") -@jakarta.ws.rs.Path("v2/config") @Tag(name = "v2") public interface HttpConfigApi extends ConfigApi { @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Operation( summary = "Returns repository and server settings relevant to clients.", operationId = "getConfigV2") @@ -67,11 +64,8 @@ public interface HttpConfigApi extends ConfigApi { @Override @GET - @jakarta.ws.rs.GET @Path("repository") - @jakarta.ws.rs.Path("repository") @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Operation( summary = "Returns repository configurations of the requested types.", operationId = "getRepositoryConfig") @@ -92,15 +86,12 @@ public interface HttpConfigApi extends ConfigApi { }) @JsonView(Views.V2.class) RepositoryConfigResponse getRepositoryConfig( - @QueryParam("type") @jakarta.ws.rs.QueryParam("type") List repositoryConfigTypes); + @QueryParam("type") List repositoryConfigTypes); @Override @POST - @jakarta.ws.rs.POST @Path("repository") - @jakarta.ws.rs.Path("repository") @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Operation( summary = "Create or update a repository configuration.", operationId = "updateRepositoryConfig") diff --git a/api/model/src/main/java/org/projectnessie/api/v2/http/HttpTreeApi.java b/api/model/src/main/java/org/projectnessie/api/v2/http/HttpTreeApi.java index 4c2877adf2c..aec0893eb42 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/http/HttpTreeApi.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/http/HttpTreeApi.java @@ -28,19 +28,19 @@ import static org.projectnessie.model.Validation.REF_NAME_PATH_ELEMENT_REGEX; import com.fasterxml.jackson.annotation.JsonView; +import jakarta.validation.constraints.Pattern; +import jakarta.ws.rs.BeanParam; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.DELETE; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.PUT; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.MediaType; import java.util.List; -import javax.validation.constraints.Pattern; -import javax.ws.rs.BeanParam; -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.MediaType; import org.eclipse.microprofile.openapi.annotations.Operation; import org.eclipse.microprofile.openapi.annotations.media.Content; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; @@ -79,17 +79,13 @@ import org.projectnessie.model.ser.Views; @Consumes(MediaType.APPLICATION_JSON) -@jakarta.ws.rs.Consumes(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("v2/trees") -@jakarta.ws.rs.Path("v2/trees") @Tag(name = "v2") public interface HttpTreeApi extends TreeApi { @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Operation( summary = "Get information about all branches and tags", operationId = "getAllReferencesV2") @@ -108,13 +104,11 @@ public interface HttpTreeApi extends TreeApi { @APIResponse(responseCode = "401", description = "Invalid credentials provided"), }) @JsonView(Views.V2.class) - ReferencesResponse getAllReferences(@BeanParam @jakarta.ws.rs.BeanParam ReferencesParams params); + ReferencesResponse getAllReferences(@BeanParam ReferencesParams params); @Override @POST - @jakarta.ws.rs.POST @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Operation( summary = "Create a new branch or tag", description = @@ -145,16 +139,13 @@ public interface HttpTreeApi extends TreeApi { }) @JsonView(Views.V2.class) SingleReferenceResponse createReference( - @Parameter(required = true, description = REF_NAME_DESCRIPTION) - @QueryParam("name") - @jakarta.ws.rs.QueryParam("name") + @Parameter(required = true, description = REF_NAME_DESCRIPTION) @QueryParam("name") String name, @Parameter( required = true, description = "Type of the reference to be created", examples = {@ExampleObject(ref = "referenceType")}) @QueryParam("type") - @jakarta.ws.rs.QueryParam("type") String type, @RequestBody( required = true, @@ -169,11 +160,8 @@ SingleReferenceResponse createReference( @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}") - @jakarta.ws.rs.Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}") @Operation(summary = "Fetch details of a reference", operationId = "getReferenceByNameV2") @APIResponses({ @APIResponse( @@ -194,15 +182,12 @@ SingleReferenceResponse createReference( @APIResponse(responseCode = "404", description = "Ref not found") }) @JsonView(Views.V2.class) - SingleReferenceResponse getReferenceByName( - @BeanParam @jakarta.ws.rs.BeanParam GetReferenceParams params) throws NessieNotFoundException; + SingleReferenceResponse getReferenceByName(@BeanParam GetReferenceParams params) + throws NessieNotFoundException; @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}/recent-changes") - @jakarta.ws.rs.Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}/recent-changes") @Operation( summary = "Fetch recent pointer changes of a reference", operationId = "getReferenceHistory", @@ -235,17 +220,13 @@ SingleReferenceResponse getReferenceByName( }) @JsonView(Views.V2.class) @Override - ReferenceHistoryResponse getReferenceHistory( - @BeanParam @jakarta.ws.rs.BeanParam ReferenceHistoryParams params) + ReferenceHistoryResponse getReferenceHistory(@BeanParam ReferenceHistoryParams params) throws NessieNotFoundException; @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}/entries") - @jakarta.ws.rs.Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}/entries") @Operation( summary = "Fetch all entries for a given reference", description = @@ -305,18 +286,14 @@ EntriesResponse getEntries( @ExampleObject(ref = "refDetached"), }) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") String ref, - @BeanParam @jakarta.ws.rs.BeanParam EntriesParams params) + @BeanParam EntriesParams params) throws NessieNotFoundException; @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}/history") - @jakarta.ws.rs.Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}/history") @Operation( summary = "Get commit log for a particular reference", description = @@ -380,28 +357,19 @@ LogResponse getCommitLog( @ExampleObject(ref = "refDetached"), }) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") String ref, - @BeanParam @jakarta.ws.rs.BeanParam CommitLogParams params) + @BeanParam CommitLogParams params) throws NessieNotFoundException; @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path( "{from-ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}/diff/{to-ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}") - @jakarta.ws.rs.Path( - "{from-ref:" - + REF_NAME_PATH_ELEMENT_REGEX - + "}/diff/{to-ref:" - + REF_NAME_PATH_ELEMENT_REGEX - + "}") @Operation( summary = "Get contents that differ in the trees specified by the two given references", description = @@ -433,16 +401,12 @@ LogResponse getCommitLog( @APIResponse(responseCode = "404", description = "fromRef/toRef not found"), }) @JsonView(Views.V2.class) - DiffResponse getDiff(@BeanParam @jakarta.ws.rs.BeanParam DiffParams params) - throws NessieNotFoundException; + DiffResponse getDiff(@BeanParam DiffParams params) throws NessieNotFoundException; @Override @PUT - @jakarta.ws.rs.PUT @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}") - @jakarta.ws.rs.Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}") @Operation( summary = "Set a named reference to a specific hash via another reference.", description = @@ -478,14 +442,12 @@ SingleReferenceResponse assignReference( description = "Optional expected type of the reference being reassigned", examples = {@ExampleObject(ref = "referenceType")}) @QueryParam("type") - @jakarta.ws.rs.QueryParam("type") String type, @Parameter( schema = @Schema(pattern = REF_NAME_PATH_ELEMENT_REGEX), description = CHECKED_REF_DESCRIPTION, examples = @ExampleObject(ref = "refWithHash")) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") String ref, @RequestBody( required = true, @@ -501,11 +463,8 @@ SingleReferenceResponse assignReference( @Override @DELETE - @jakarta.ws.rs.DELETE @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}") - @jakarta.ws.rs.Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}") @Operation( summary = "Delete a reference", description = @@ -536,24 +495,19 @@ SingleReferenceResponse deleteReference( description = "Optional expected type of the reference being deleted", examples = {@ExampleObject(ref = "referenceType")}) @QueryParam("type") - @jakarta.ws.rs.QueryParam("type") String type, @Parameter( schema = @Schema(pattern = REF_NAME_PATH_ELEMENT_REGEX), description = CHECKED_REF_DESCRIPTION, examples = @ExampleObject(ref = "refWithHash")) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") String ref) throws NessieConflictException, NessieNotFoundException; @Override @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}/contents/{key}") - @jakarta.ws.rs.Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}/contents/{key}") @Operation( summary = "Get the content object associated with a key.", description = @@ -580,10 +534,7 @@ SingleReferenceResponse deleteReference( }) @JsonView(Views.V2.class) ContentResponse getContent( - @Parameter(description = KEY_PARAMETER_DESCRIPTION) - @PathParam("key") - @jakarta.ws.rs.PathParam("key") - ContentKey key, + @Parameter(description = KEY_PARAMETER_DESCRIPTION) @PathParam("key") ContentKey key, @Parameter( schema = @Schema(pattern = REF_NAME_PATH_ELEMENT_REGEX), description = REF_PARAMETER_DESCRIPTION, @@ -608,24 +559,16 @@ ContentResponse getContent( @ExampleObject(ref = "refDetached"), }) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") String ref, - @Parameter(description = WITH_DOC_PARAMETER_DESCRIPTION) - @QueryParam("with-doc") - @jakarta.ws.rs.QueryParam("with-doc") + @Parameter(description = WITH_DOC_PARAMETER_DESCRIPTION) @QueryParam("with-doc") boolean withDocumentation, - @Parameter(description = FOR_WRITE_PARAMETER_DESCRIPTION) - @QueryParam("for-write") - @jakarta.ws.rs.QueryParam("for-write") + @Parameter(description = FOR_WRITE_PARAMETER_DESCRIPTION) @QueryParam("for-write") boolean forWrite) throws NessieNotFoundException; @GET - @jakarta.ws.rs.GET @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}/contents") - @jakarta.ws.rs.Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}/contents") @Operation( summary = "Get multiple content objects.", description = @@ -679,35 +622,20 @@ GetMultipleContentsResponse getSeveralContents( @Pattern( regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_PATH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_PATH_MESSAGE) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") String ref, - @Parameter(description = KEY_PARAMETER_DESCRIPTION) - @QueryParam("key") - @jakarta.ws.rs.QueryParam("key") - List keys, - @Parameter(description = WITH_DOC_PARAMETER_DESCRIPTION) - @QueryParam("with-doc") - @jakarta.ws.rs.QueryParam("with-doc") + @Parameter(description = KEY_PARAMETER_DESCRIPTION) @QueryParam("key") List keys, + @Parameter(description = WITH_DOC_PARAMETER_DESCRIPTION) @QueryParam("with-doc") boolean withDocumentation, - @Parameter(description = FOR_WRITE_PARAMETER_DESCRIPTION) - @QueryParam("for-write") - @jakarta.ws.rs.QueryParam("for-write") + @Parameter(description = FOR_WRITE_PARAMETER_DESCRIPTION) @QueryParam("for-write") boolean forWrite) throws NessieNotFoundException; @Override @POST - @jakarta.ws.rs.POST @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Consumes(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}/contents") - @jakarta.ws.rs.Path("{ref:" + REF_NAME_PATH_ELEMENT_REGEX + "}/contents") @Operation( summary = "Get multiple content objects.", description = @@ -760,29 +688,21 @@ GetMultipleContentsResponse getMultipleContents( @ExampleObject(ref = "refDetached"), }) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") String ref, @RequestBody( description = "Keys to retrieve.", content = @Content(examples = @ExampleObject(ref = "multiGetRequest"))) GetMultipleContentsRequest request, - @Parameter(description = WITH_DOC_PARAMETER_DESCRIPTION) - @QueryParam("with-doc") - @jakarta.ws.rs.QueryParam("with-doc") + @Parameter(description = WITH_DOC_PARAMETER_DESCRIPTION) @QueryParam("with-doc") boolean withDocumentation, - @Parameter(description = FOR_WRITE_PARAMETER_DESCRIPTION) - @QueryParam("for-write") - @jakarta.ws.rs.QueryParam("for-write") + @Parameter(description = FOR_WRITE_PARAMETER_DESCRIPTION) @QueryParam("for-write") boolean forWrite) throws NessieNotFoundException; @Override @POST - @jakarta.ws.rs.POST @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("{branch:" + REF_NAME_PATH_ELEMENT_REGEX + "}/history/transplant") - @jakarta.ws.rs.Path("{branch:" + REF_NAME_PATH_ELEMENT_REGEX + "}/history/transplant") @Operation( summary = "Transplant commits specified by the 'Transplant' payload object onto the given 'branch'", @@ -829,7 +749,6 @@ MergeResponse transplantCommitsIntoBranch( description = MERGE_TRANSPLANT_BRANCH_DESCRIPTION, examples = @ExampleObject(ref = "refWithHash")) @PathParam("branch") - @jakarta.ws.rs.PathParam("branch") String branch, @RequestBody( required = true, @@ -843,11 +762,8 @@ MergeResponse transplantCommitsIntoBranch( @Override @POST - @jakarta.ws.rs.POST @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Path("{branch:" + REF_NAME_PATH_ELEMENT_REGEX + "}/history/merge") - @jakarta.ws.rs.Path("{branch:" + REF_NAME_PATH_ELEMENT_REGEX + "}/history/merge") @Operation( summary = "Merge commits from another reference onto 'branch'.", description = @@ -896,7 +812,6 @@ MergeResponse mergeRefIntoBranch( description = MERGE_TRANSPLANT_BRANCH_DESCRIPTION, examples = @ExampleObject(ref = "refWithHash")) @PathParam("branch") - @jakarta.ws.rs.PathParam("branch") String branch, @RequestBody( required = true, @@ -912,13 +827,9 @@ MergeResponse mergeRefIntoBranch( @Override @POST - @jakarta.ws.rs.POST @Path("{branch:" + REF_NAME_PATH_ELEMENT_REGEX + "}/history/commit") - @jakarta.ws.rs.Path("{branch:" + REF_NAME_PATH_ELEMENT_REGEX + "}/history/commit") @Produces(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Produces(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) - @jakarta.ws.rs.Consumes(jakarta.ws.rs.core.MediaType.APPLICATION_JSON) @Operation( summary = "Commit one or more operations against the given 'branch'.", description = @@ -953,7 +864,6 @@ CommitResponse commitMultipleOperations( description = COMMIT_BRANCH_DESCRIPTION, examples = @ExampleObject(ref = "refWithHash")) @PathParam("branch") - @jakarta.ws.rs.PathParam("branch") String branch, @RequestBody( required = true, diff --git a/api/model/src/main/java/org/projectnessie/api/v2/params/AbstractParams.java b/api/model/src/main/java/org/projectnessie/api/v2/params/AbstractParams.java index d649ae7ea9c..2b2f2453f9b 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/params/AbstractParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/params/AbstractParams.java @@ -15,17 +15,15 @@ */ package org.projectnessie.api.v2.params; -import javax.annotation.Nullable; -import javax.ws.rs.QueryParam; +import jakarta.annotation.Nullable; +import jakarta.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; public abstract class AbstractParams> { @Parameter(description = "maximum number of entries to return, just a hint for the server") @QueryParam("max-records") - @jakarta.ws.rs.QueryParam("max-records") @Nullable - @jakarta.annotation.Nullable private Integer maxRecords; @Parameter( @@ -33,9 +31,7 @@ public abstract class AbstractParams> { "paging continuation token, as returned in the previous value of the field 'token' in " + "the corresponding 'EntriesResponse' or 'LogResponse' or 'ReferencesResponse' or 'RefLogResponse'.") @QueryParam("page-token") - @jakarta.ws.rs.QueryParam("page-token") @Nullable - @jakarta.annotation.Nullable private String pageToken; protected AbstractParams() {} @@ -46,13 +42,11 @@ protected AbstractParams(@Nullable Integer maxRecords, @Nullable String pageToke } @Nullable - @jakarta.annotation.Nullable public Integer maxRecords() { return maxRecords; } @Nullable - @jakarta.annotation.Nullable public String pageToken() { return pageToken; } diff --git a/api/model/src/main/java/org/projectnessie/api/v2/params/BaseMergeTransplant.java b/api/model/src/main/java/org/projectnessie/api/v2/params/BaseMergeTransplant.java index 95cc5455823..29e4bc0fa8a 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/params/BaseMergeTransplant.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/params/BaseMergeTransplant.java @@ -19,11 +19,11 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude.Include; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.Pattern; +import jakarta.validation.constraints.Size; import java.util.List; -import javax.annotation.Nullable; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.Pattern; -import javax.validation.constraints.Size; import org.projectnessie.model.MergeBehavior; import org.projectnessie.model.MergeKeyBehavior; import org.projectnessie.model.MergeResponse; @@ -32,35 +32,26 @@ public interface BaseMergeTransplant { @Size - @jakarta.validation.constraints.Size(min = 1) @JsonInclude(NON_NULL) String getMessage(); @NotBlank - @jakarta.validation.constraints.NotBlank @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String getFromRefName(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) List getKeyMergeModes(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) MergeBehavior getDefaultKeyMergeMode(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) Boolean isDryRun(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) Boolean isFetchAdditionalInfo(); @@ -70,7 +61,6 @@ public interface BaseMergeTransplant { * throwing a {@link org.projectnessie.error.NessieReferenceConflictException}. */ @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) Boolean isReturnConflictAsResult(); } diff --git a/api/model/src/main/java/org/projectnessie/api/v2/params/CommitLogParams.java b/api/model/src/main/java/org/projectnessie/api/v2/params/CommitLogParams.java index 31344a51e0c..d19deb92df0 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/params/CommitLogParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/params/CommitLogParams.java @@ -18,9 +18,9 @@ import static org.projectnessie.model.Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE; import static org.projectnessie.model.Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX; -import javax.annotation.Nullable; -import javax.validation.constraints.Pattern; -import javax.ws.rs.QueryParam; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.Pattern; +import jakarta.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.immutables.builder.Builder.Constructor; @@ -36,24 +36,18 @@ public class CommitLogParams extends AbstractParams { @Nullable - @jakarta.annotation.Nullable @Pattern( regexp = HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, message = HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, - message = HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) @Parameter( description = "Hash on the given ref to identify the commit where the operation of fetching the log " + "should stop, i.e. the 'far' end of the commit log, returned late in the result.", examples = {@ExampleObject(ref = "nullHash"), @ExampleObject(ref = "hash")}) @QueryParam("limit-hash") - @jakarta.ws.rs.QueryParam("limit-hash") private String startHash; @Nullable - @jakarta.annotation.Nullable @Parameter( description = "A Common Expression Language (CEL) expression. An intro to CEL can be found at https://github.com/google/cel-spec/blob/master/doc/intro.md.\n\n" @@ -70,27 +64,24 @@ public class CommitLogParams extends AbstractParams { @ExampleObject(ref = "expr_by_commit_operations_type") }) @QueryParam("filter") - @jakarta.ws.rs.QueryParam("filter") private String filter; @Parameter( description = "Specify how much information to be returned. Will fetch additional metadata such as parent commit hash and operations in a commit, for each commit if set to 'ALL'.") @QueryParam("fetch") - @jakarta.ws.rs.QueryParam("fetch") @Nullable - @jakarta.annotation.Nullable private FetchOption fetchOption; public CommitLogParams() {} @Constructor CommitLogParams( - @Nullable @jakarta.annotation.Nullable String startHash, - @Nullable @jakarta.annotation.Nullable Integer maxRecords, - @Nullable @jakarta.annotation.Nullable String pageToken, - @Nullable @jakarta.annotation.Nullable String filter, - @Nullable @jakarta.annotation.Nullable FetchOption fetchOption) { + @Nullable String startHash, + @Nullable Integer maxRecords, + @Nullable String pageToken, + @Nullable String filter, + @Nullable FetchOption fetchOption) { super(maxRecords, pageToken); this.startHash = startHash; this.filter = filter; @@ -98,19 +89,16 @@ public CommitLogParams() {} } @Nullable - @jakarta.annotation.Nullable public String startHash() { return startHash; } @Nullable - @jakarta.annotation.Nullable public String filter() { return filter; } @Nullable - @jakarta.annotation.Nullable public FetchOption fetchOption() { return fetchOption; } diff --git a/api/model/src/main/java/org/projectnessie/api/v2/params/DiffParams.java b/api/model/src/main/java/org/projectnessie/api/v2/params/DiffParams.java index 036a96c4836..d5e22275f4f 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/params/DiffParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/params/DiffParams.java @@ -18,12 +18,12 @@ import static org.projectnessie.api.v2.doc.ApiDoc.REF_PARAMETER_DESCRIPTION; import static org.projectnessie.api.v2.doc.ApiDoc.REQUESTED_KEY_PARAMETER_DESCRIPTION; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.QueryParam; import java.util.List; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; -import javax.ws.rs.PathParam; -import javax.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.immutables.builder.Builder.Constructor; @@ -40,11 +40,7 @@ public class DiffParams extends KeyRangeParams { @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_PATH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_PATH_MESSAGE) @Parameter( description = REF_PARAMETER_DESCRIPTION, examples = { @@ -68,25 +64,18 @@ public class DiffParams extends KeyRangeParams { @ExampleObject(ref = "refDetached"), }) @PathParam("from-ref") - @jakarta.ws.rs.PathParam("from-ref") private String fromRef; @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_PATH_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_PATH_MESSAGE) @Parameter( description = "Same reference spec as in the 'from-ref' parameter but identifying the other tree for comparison.") @PathParam("to-ref") - @jakarta.ws.rs.PathParam("to-ref") private String toRef; @Parameter(description = REQUESTED_KEY_PARAMETER_DESCRIPTION) @QueryParam("key") - @jakarta.ws.rs.QueryParam("key") private List requestedKeys; @Parameter( @@ -95,22 +84,21 @@ public class DiffParams extends KeyRangeParams { + "Usable variables within the expression are:\n\n" + "- 'key' (string, namespace + table name), 'keyElements' (list of strings), 'namespace' (string), 'namespaceElements' (list of strings) and 'name' (string, the \"simple\" table name)") @QueryParam("filter") - @jakarta.ws.rs.QueryParam("filter") private String filter; public DiffParams() {} @Constructor DiffParams( - @NotNull @jakarta.validation.constraints.NotNull String fromRef, - @NotNull @jakarta.validation.constraints.NotNull String toRef, - @Nullable @jakarta.annotation.Nullable Integer maxRecords, - @Nullable @jakarta.annotation.Nullable String pageToken, - @Nullable @jakarta.annotation.Nullable ContentKey minKey, - @Nullable @jakarta.annotation.Nullable ContentKey maxKey, - @Nullable @jakarta.annotation.Nullable ContentKey prefixKey, - @Nullable @jakarta.annotation.Nullable List requestedKeys, - @Nullable @jakarta.annotation.Nullable String filter) { + @NotNull String fromRef, + @NotNull String toRef, + @Nullable Integer maxRecords, + @Nullable String pageToken, + @Nullable ContentKey minKey, + @Nullable ContentKey maxKey, + @Nullable ContentKey prefixKey, + @Nullable List requestedKeys, + @Nullable String filter) { super(maxRecords, pageToken, minKey, maxKey, prefixKey); this.fromRef = fromRef; this.toRef = toRef; diff --git a/api/model/src/main/java/org/projectnessie/api/v2/params/EntriesParams.java b/api/model/src/main/java/org/projectnessie/api/v2/params/EntriesParams.java index 3c8729a5220..6f700506cfb 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/params/EntriesParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/params/EntriesParams.java @@ -17,9 +17,9 @@ import static org.projectnessie.api.v2.doc.ApiDoc.REQUESTED_KEY_PARAMETER_DESCRIPTION; +import jakarta.annotation.Nullable; +import jakarta.ws.rs.QueryParam; import java.util.List; -import javax.annotation.Nullable; -import javax.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.immutables.builder.Builder.Constructor; @@ -36,11 +36,9 @@ public class EntriesParams extends KeyRangeParams { @Parameter(description = REQUESTED_KEY_PARAMETER_DESCRIPTION) @QueryParam("key") - @jakarta.ws.rs.QueryParam("key") private List requestedKeys; @Nullable - @jakarta.annotation.Nullable @Parameter( description = "A Common Expression Language (CEL) expression. An intro to CEL can be found at https://github.com/google/cel-spec/blob/master/doc/intro.md.\n" @@ -51,28 +49,25 @@ public class EntriesParams extends KeyRangeParams { @ExampleObject(ref = "expr_by_namespace_and_contentType") }) @QueryParam("filter") - @jakarta.ws.rs.QueryParam("filter") private String filter; @Nullable - @jakarta.annotation.Nullable @Parameter(description = "Optionally request to return 'Content' objects for the returned keys.") @QueryParam("content") - @jakarta.ws.rs.QueryParam("content") private Boolean withContent; public EntriesParams() {} @Constructor EntriesParams( - @Nullable @jakarta.annotation.Nullable Integer maxRecords, - @Nullable @jakarta.annotation.Nullable String pageToken, - @Nullable @jakarta.annotation.Nullable ContentKey minKey, - @Nullable @jakarta.annotation.Nullable ContentKey maxKey, - @Nullable @jakarta.annotation.Nullable ContentKey prefixKey, - @Nullable @jakarta.annotation.Nullable List requestedKeys, - @Nullable @jakarta.annotation.Nullable String filter, - @Nullable @jakarta.annotation.Nullable Boolean withContent) { + @Nullable Integer maxRecords, + @Nullable String pageToken, + @Nullable ContentKey minKey, + @Nullable ContentKey maxKey, + @Nullable ContentKey prefixKey, + @Nullable List requestedKeys, + @Nullable String filter, + @Nullable Boolean withContent) { super(maxRecords, pageToken, minKey, maxKey, prefixKey); this.filter = filter; this.withContent = withContent; @@ -92,7 +87,6 @@ public List getRequestedKeys() { } @Nullable - @jakarta.annotation.Nullable public String filter() { return filter; } diff --git a/api/model/src/main/java/org/projectnessie/api/v2/params/GetReferenceParams.java b/api/model/src/main/java/org/projectnessie/api/v2/params/GetReferenceParams.java index b70c41a66a8..e7814b29392 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/params/GetReferenceParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/params/GetReferenceParams.java @@ -17,11 +17,11 @@ import static org.projectnessie.api.v2.doc.ApiDoc.REF_GET_PARAMETER_DESCRIPTION; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; -import javax.ws.rs.PathParam; -import javax.ws.rs.QueryParam; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.immutables.builder.Builder.Constructor; @@ -34,13 +34,8 @@ public class GetReferenceParams { description = REF_GET_PARAMETER_DESCRIPTION, examples = {@ExampleObject(ref = "ref"), @ExampleObject(ref = "refDefault")}) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_MESSAGE) private String ref; @Parameter( @@ -55,23 +50,18 @@ public class GetReferenceParams { + "A returned Tag instance will only contain the 'commitMetaOfHEAD' and 'numTotalCommits' fields.\n\n" + "Note that computing & fetching additional metadata might be computationally expensive on the server-side, so this flag should be used with care.") @QueryParam("fetch") - @jakarta.ws.rs.QueryParam("fetch") @Nullable - @jakarta.annotation.Nullable private FetchOption fetchOption; public GetReferenceParams() {} @Constructor - GetReferenceParams( - @NotNull @jakarta.validation.constraints.NotNull String ref, - @Nullable @jakarta.annotation.Nullable FetchOption fetchOption) { + GetReferenceParams(@NotNull String ref, @Nullable FetchOption fetchOption) { this.ref = ref; this.fetchOption = fetchOption; } @Nullable - @jakarta.annotation.Nullable public FetchOption fetchOption() { return fetchOption; } diff --git a/api/model/src/main/java/org/projectnessie/api/v2/params/KeyRangeParams.java b/api/model/src/main/java/org/projectnessie/api/v2/params/KeyRangeParams.java index 199838acba1..e1f561e3a8f 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/params/KeyRangeParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/params/KeyRangeParams.java @@ -19,8 +19,8 @@ import static org.projectnessie.api.v2.doc.ApiDoc.KEY_MIN_PARAMETER_DESCRIPTION; import static org.projectnessie.api.v2.doc.ApiDoc.KEY_PREFIX_PARAMETER_DESCRIPTION; -import javax.annotation.Nullable; -import javax.ws.rs.QueryParam; +import jakarta.annotation.Nullable; +import jakarta.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.projectnessie.model.ContentKey; @@ -32,37 +32,31 @@ public abstract class KeyRangeParams> description = KEY_MIN_PARAMETER_DESCRIPTION, examples = @ExampleObject(ref = "ContentKeyGet")) @QueryParam("min-key") - @jakarta.ws.rs.QueryParam("min-key") @Nullable - @jakarta.annotation.Nullable private ContentKey minKey; @Parameter( description = KEY_MAX_PARAMETER_DESCRIPTION, examples = @ExampleObject(ref = "ContentKeyGet")) @QueryParam("max-key") - @jakarta.ws.rs.QueryParam("max-key") @Nullable - @jakarta.annotation.Nullable private ContentKey maxKey; @Parameter( description = KEY_PREFIX_PARAMETER_DESCRIPTION, examples = @ExampleObject(ref = "ContentKeyGet")) @QueryParam("prefix-key") - @jakarta.ws.rs.QueryParam("prefix-key") @Nullable - @jakarta.annotation.Nullable private ContentKey prefixKey; protected KeyRangeParams() {} public KeyRangeParams( - @Nullable @jakarta.annotation.Nullable Integer maxRecords, - @Nullable @jakarta.annotation.Nullable String pageToken, - @Nullable @jakarta.annotation.Nullable ContentKey minKey, - @Nullable @jakarta.annotation.Nullable ContentKey maxKey, - @Nullable @jakarta.annotation.Nullable ContentKey prefixKey) { + @Nullable Integer maxRecords, + @Nullable String pageToken, + @Nullable ContentKey minKey, + @Nullable ContentKey maxKey, + @Nullable ContentKey prefixKey) { super(maxRecords, pageToken); this.minKey = minKey; this.maxKey = maxKey; @@ -70,19 +64,16 @@ public KeyRangeParams( } @Nullable - @jakarta.annotation.Nullable public ContentKey minKey() { return minKey; } @Nullable - @jakarta.annotation.Nullable public ContentKey maxKey() { return maxKey; } @Nullable - @jakarta.annotation.Nullable public ContentKey prefixKey() { return prefixKey; } diff --git a/api/model/src/main/java/org/projectnessie/api/v2/params/Merge.java b/api/model/src/main/java/org/projectnessie/api/v2/params/Merge.java index c4d7370e48d..7021d4362c9 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/params/Merge.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/params/Merge.java @@ -27,9 +27,9 @@ import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.annotation.Nullable; -import javax.validation.constraints.Pattern; -import javax.validation.constraints.Size; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.Pattern; +import jakarta.validation.constraints.Size; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.eclipse.microprofile.openapi.annotations.media.SchemaProperty; import org.immutables.value.Value; @@ -72,9 +72,7 @@ public interface Merge extends BaseMergeTransplant { @Override @Nullable - @jakarta.annotation.Nullable - @Size - @jakarta.validation.constraints.Size(min = 1) + @Size(min = 1) @Deprecated String getMessage(); @@ -83,7 +81,6 @@ public interface Merge extends BaseMergeTransplant { * attribute, {@link #getMessage()} will be ignored. */ @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) CommitMeta getCommitMeta(); @@ -95,11 +92,7 @@ public interface Merge extends BaseMergeTransplant { @Pattern( regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, - message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) @Nullable - @jakarta.annotation.Nullable String getFromHash(); /** diff --git a/api/model/src/main/java/org/projectnessie/api/v2/params/ParsedReference.java b/api/model/src/main/java/org/projectnessie/api/v2/params/ParsedReference.java index 6120a3803ea..adcde3c4265 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/params/ParsedReference.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/params/ParsedReference.java @@ -15,7 +15,7 @@ */ package org.projectnessie.api.v2.params; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.immutables.value.Value; import org.projectnessie.model.Detached; import org.projectnessie.model.Reference.ReferenceType; @@ -28,17 +28,14 @@ public interface ParsedReference { @Value.Parameter(order = 1) @Nullable - @jakarta.annotation.Nullable String name(); @Value.Parameter(order = 2) @Nullable - @jakarta.annotation.Nullable String hashWithRelativeSpec(); @Value.Parameter(order = 3) @Nullable - @jakarta.annotation.Nullable ReferenceType type(); @Value.Check @@ -50,9 +47,7 @@ default void check() { } static ParsedReference parsedReference( - @Nullable @jakarta.annotation.Nullable String name, - @Nullable @jakarta.annotation.Nullable String hashWithRelativeSpec, - @Nullable @jakarta.annotation.Nullable ReferenceType type) { + @Nullable String name, @Nullable String hashWithRelativeSpec, @Nullable ReferenceType type) { if (hashWithRelativeSpec != null && name == null) { name = Detached.REF_NAME; } diff --git a/api/model/src/main/java/org/projectnessie/api/v2/params/ReferenceHistoryParams.java b/api/model/src/main/java/org/projectnessie/api/v2/params/ReferenceHistoryParams.java index b48e20da947..83176e261eb 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/params/ReferenceHistoryParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/params/ReferenceHistoryParams.java @@ -17,11 +17,11 @@ import static org.projectnessie.api.v2.doc.ApiDoc.REF_GET_PARAMETER_DESCRIPTION; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; -import javax.ws.rs.PathParam; -import javax.ws.rs.QueryParam; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.immutables.builder.Builder.Constructor; @@ -33,13 +33,8 @@ public class ReferenceHistoryParams { description = REF_GET_PARAMETER_DESCRIPTION, examples = {@ExampleObject(ref = "ref"), @ExampleObject(ref = "refDefault")}) @PathParam("ref") - @jakarta.ws.rs.PathParam("ref") @NotNull - @jakarta.validation.constraints.NotNull @Pattern(regexp = Validation.REF_NAME_PATH_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_PATH_REGEX, - message = Validation.REF_NAME_MESSAGE) private String ref; @Parameter( @@ -48,23 +43,18 @@ public class ReferenceHistoryParams { + "limited to the given amount of commits. Default is to not scan the commit log. The server " + "may impose a hard limit on the amount of commits from the commit log.") @QueryParam("scan-commits") - @jakarta.ws.rs.QueryParam("scan-commits") @Nullable - @jakarta.annotation.Nullable private Integer headCommitsToScan; public ReferenceHistoryParams() {} @Constructor - ReferenceHistoryParams( - @NotNull @jakarta.validation.constraints.NotNull String ref, - @Nullable @jakarta.annotation.Nullable Integer headCommitsToScan) { + ReferenceHistoryParams(@NotNull String ref, @Nullable Integer headCommitsToScan) { this.ref = ref; this.headCommitsToScan = headCommitsToScan; } @Nullable - @jakarta.annotation.Nullable public Integer headCommitsToScan() { return headCommitsToScan; } diff --git a/api/model/src/main/java/org/projectnessie/api/v2/params/ReferenceResolver.java b/api/model/src/main/java/org/projectnessie/api/v2/params/ReferenceResolver.java index 5bd37d36347..7b6b34793f0 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/params/ReferenceResolver.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/params/ReferenceResolver.java @@ -18,10 +18,10 @@ import static org.projectnessie.api.v2.params.ParsedReference.parsedReference; import static org.projectnessie.model.Validation.REF_NAME_PATH_PATTERN; +import jakarta.annotation.Nonnull; +import jakarta.annotation.Nullable; import java.util.function.Supplier; import java.util.regex.Matcher; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; import org.projectnessie.model.Reference; import org.projectnessie.model.Validation; @@ -32,9 +32,9 @@ public final class ReferenceResolver { private ReferenceResolver() {} public static ParsedReference resolveReferencePathElement( - @Nonnull @jakarta.annotation.Nonnull String refPathString, - @Nullable @jakarta.annotation.Nullable Reference.ReferenceType namedRefType, - @Nonnull @jakarta.annotation.Nonnull Supplier defaultBranchSupplier) { + @Nonnull String refPathString, + @Nullable Reference.ReferenceType namedRefType, + @Nonnull Supplier defaultBranchSupplier) { Matcher refNameMatcher = REF_NAME_PATH_PATTERN.matcher(refPathString); if (!refNameMatcher.find()) { throw new IllegalArgumentException(Validation.REF_NAME_MESSAGE); diff --git a/api/model/src/main/java/org/projectnessie/api/v2/params/ReferencesParams.java b/api/model/src/main/java/org/projectnessie/api/v2/params/ReferencesParams.java index 259732538c3..ad172e79c7d 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/params/ReferencesParams.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/params/ReferencesParams.java @@ -15,8 +15,8 @@ */ package org.projectnessie.api.v2.params; -import javax.annotation.Nullable; -import javax.ws.rs.QueryParam; +import jakarta.annotation.Nullable; +import jakarta.ws.rs.QueryParam; import org.eclipse.microprofile.openapi.annotations.media.ExampleObject; import org.eclipse.microprofile.openapi.annotations.parameters.Parameter; import org.immutables.builder.Builder.Constructor; @@ -45,9 +45,7 @@ public class ReferencesParams extends AbstractParams { + "Note that computing & fetching additional metadata might be computationally expensive on the " + "server-side, so this flag should be used with care.") @QueryParam("fetch") - @jakarta.ws.rs.QueryParam("fetch") @Nullable - @jakarta.annotation.Nullable private FetchOption fetchOption; @Parameter( @@ -65,32 +63,28 @@ public class ReferencesParams extends AbstractParams { @ExampleObject(ref = "expr_by_ref_commit") }) @QueryParam("filter") - @jakarta.ws.rs.QueryParam("filter") @Nullable - @jakarta.annotation.Nullable private String filter; public ReferencesParams() {} @Constructor ReferencesParams( - @Nullable @jakarta.annotation.Nullable Integer maxRecords, - @Nullable @jakarta.annotation.Nullable String pageToken, - @Nullable @jakarta.annotation.Nullable FetchOption fetchOption, - @Nullable @jakarta.annotation.Nullable String filter) { + @Nullable Integer maxRecords, + @Nullable String pageToken, + @Nullable FetchOption fetchOption, + @Nullable String filter) { super(maxRecords, pageToken); this.fetchOption = fetchOption; this.filter = filter; } @Nullable - @jakarta.annotation.Nullable public FetchOption fetchOption() { return fetchOption; } @Nullable - @jakarta.annotation.Nullable public String filter() { return filter; } diff --git a/api/model/src/main/java/org/projectnessie/api/v2/params/Transplant.java b/api/model/src/main/java/org/projectnessie/api/v2/params/Transplant.java index 6e47a0556b5..7fe5ff16410 100644 --- a/api/model/src/main/java/org/projectnessie/api/v2/params/Transplant.java +++ b/api/model/src/main/java/org/projectnessie/api/v2/params/Transplant.java @@ -25,11 +25,11 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; +import jakarta.validation.constraints.Size; import java.util.List; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Pattern; -import javax.validation.constraints.Size; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.eclipse.microprofile.openapi.annotations.media.SchemaProperty; @@ -67,9 +67,7 @@ public interface Transplant extends BaseMergeTransplant { @Override @Nullable - @jakarta.annotation.Nullable - @Size - @jakarta.validation.constraints.Size(min = 1) + @Size(min = 1) String getMessage(); /** @@ -78,16 +76,11 @@ public interface Transplant extends BaseMergeTransplant { *

Since Nessie spec 2.1.1, hashes can be absolute or relative. */ @NotNull - @jakarta.validation.constraints.NotNull - @Size - @jakarta.validation.constraints.Size(min = 1) + @Size(min = 1) List< @Pattern( regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, - message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) String> getHashesToTransplant(); diff --git a/api/model/src/main/java/org/projectnessie/error/ContentKeyErrorDetails.java b/api/model/src/main/java/org/projectnessie/error/ContentKeyErrorDetails.java index 62fad6e264f..143fd183920 100644 --- a/api/model/src/main/java/org/projectnessie/error/ContentKeyErrorDetails.java +++ b/api/model/src/main/java/org/projectnessie/error/ContentKeyErrorDetails.java @@ -20,7 +20,7 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.immutables.value.Value; import org.projectnessie.model.ContentKey; @@ -39,12 +39,10 @@ default String getType() { @JsonInclude(Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable @Value.Parameter(order = 1) ContentKey contentKey(); - static ContentKeyErrorDetails contentKeyErrorDetails( - @Nullable @jakarta.annotation.Nullable ContentKey contentKey) { + static ContentKeyErrorDetails contentKeyErrorDetails(@Nullable ContentKey contentKey) { return ImmutableContentKeyErrorDetails.of(contentKey); } } diff --git a/api/model/src/main/java/org/projectnessie/error/GenericErrorDetails.java b/api/model/src/main/java/org/projectnessie/error/GenericErrorDetails.java index b6a365af456..108a1392d67 100644 --- a/api/model/src/main/java/org/projectnessie/error/GenericErrorDetails.java +++ b/api/model/src/main/java/org/projectnessie/error/GenericErrorDetails.java @@ -26,9 +26,9 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.jsontype.TypeSerializer; +import jakarta.annotation.Nullable; import java.io.IOException; import java.util.Map; -import javax.annotation.Nullable; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -42,7 +42,6 @@ public abstract class GenericErrorDetails implements NessieErrorDetails { public abstract String getType(); @Nullable - @jakarta.annotation.Nullable @Schema(type = SchemaType.OBJECT) @Value.Parameter(order = 2) @JsonInclude(JsonInclude.Include.NON_NULL) diff --git a/api/model/src/main/java/org/projectnessie/error/NessieError.java b/api/model/src/main/java/org/projectnessie/error/NessieError.java index ba1ce624a2a..66023570bcc 100644 --- a/api/model/src/main/java/org/projectnessie/error/NessieError.java +++ b/api/model/src/main/java/org/projectnessie/error/NessieError.java @@ -21,7 +21,7 @@ import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.immutables.value.Value; /** @@ -64,7 +64,6 @@ default ErrorCode getErrorCode() { * Nessie-Client-Spec} with an integer value that is at least 2. */ @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) NessieErrorDetails getErrorDetails(); @@ -75,7 +74,6 @@ default T getErrorDetailsAsOrNull(Class type) /** Server-side exception stack trace related to this error (if available). */ @Nullable - @jakarta.annotation.Nullable String getServerStackTrace(); /** @@ -90,7 +88,6 @@ default T getErrorDetailsAsOrNull(Class type) @JsonIgnore @Value.Auxiliary @Nullable - @jakarta.annotation.Nullable @Deprecated Exception getClientProcessingException(); @@ -103,7 +100,6 @@ default T getErrorDetailsAsOrNull(Class type) @JsonIgnore @Value.Auxiliary @Nullable - @jakarta.annotation.Nullable String getClientProcessingError(); /** diff --git a/api/model/src/main/java/org/projectnessie/model/Branch.java b/api/model/src/main/java/org/projectnessie/model/Branch.java index 4676f7f7b9a..b698b25e14f 100644 --- a/api/model/src/main/java/org/projectnessie/model/Branch.java +++ b/api/model/src/main/java/org/projectnessie/model/Branch.java @@ -20,7 +20,7 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -38,14 +38,12 @@ public interface Branch extends Reference { String getName(); @Nullable - @jakarta.annotation.Nullable @Override @Value.Parameter(order = 3) ReferenceMetadata getMetadata(); @Override @Nullable - @jakarta.annotation.Nullable @Value.Parameter(order = 2) String getHash(); @@ -66,12 +64,11 @@ static ImmutableBranch.Builder builder() { return ImmutableBranch.builder(); } - static Branch of(String name, @Nullable @jakarta.annotation.Nullable String hash) { + static Branch of(String name, @Nullable String hash) { return ImmutableBranch.of(name, hash, null); } - static Branch of( - String name, @Nullable @jakarta.annotation.Nullable String hash, ReferenceMetadata metadata) { + static Branch of(String name, @Nullable String hash, ReferenceMetadata metadata) { return ImmutableBranch.of(name, hash, metadata); } } diff --git a/api/model/src/main/java/org/projectnessie/model/CommitMeta.java b/api/model/src/main/java/org/projectnessie/model/CommitMeta.java index a836dbd9bf4..cd16e65b01a 100644 --- a/api/model/src/main/java/org/projectnessie/model/CommitMeta.java +++ b/api/model/src/main/java/org/projectnessie/model/CommitMeta.java @@ -26,6 +26,9 @@ import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.deser.std.StdDeserializer; import com.fasterxml.jackson.databind.ser.std.StdSerializer; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import java.io.IOException; import java.time.Instant; import java.time.format.DateTimeFormatter; @@ -33,9 +36,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.eclipse.microprofile.openapi.annotations.media.SchemaProperty; @@ -59,7 +59,6 @@ public abstract class CommitMeta { *

This is not known at creation time and is only valid when reading the log. */ @Nullable - @jakarta.annotation.Nullable public abstract String getHash(); /** @@ -74,12 +73,10 @@ public abstract class CommitMeta { * docs. */ @Nullable - @jakarta.annotation.Nullable public abstract String getCommitter(); /** The author of a commit. This is the original committer. */ @Nullable - @jakarta.annotation.Nullable @Value.Derived @JsonView(Views.V1.class) public String getAuthor() { @@ -87,7 +84,6 @@ public String getAuthor() { } @NotNull - @jakarta.validation.constraints.NotNull @JsonView(Views.V2.class) @JsonProperty("authors") public abstract List getAllAuthors(); @@ -99,7 +95,6 @@ public String getAuthor() { * by the person who started the job. */ @Nullable - @jakarta.annotation.Nullable @Value.Derived @JsonView(Views.V1.class) public String getSignedOffBy() { @@ -107,7 +102,6 @@ public String getSignedOffBy() { } @NotNull - @jakarta.validation.constraints.NotNull @JsonView(Views.V2.class) public abstract List getAllSignedOffBy(); @@ -117,19 +111,16 @@ public String getSignedOffBy() { *

Like github if this message is in markdown it may be displayed cleanly in the UI. */ @NotBlank - @jakarta.validation.constraints.NotBlank public abstract String getMessage(); /** Commit time in UTC. Set by the server. */ @Nullable - @jakarta.annotation.Nullable @JsonSerialize(using = InstantSerializer.class) @JsonDeserialize(using = InstantDeserializer.class) public abstract Instant getCommitTime(); /** Original commit time in UTC. Set by the server. */ @Nullable - @jakarta.annotation.Nullable @JsonSerialize(using = InstantSerializer.class) @JsonDeserialize(using = InstantDeserializer.class) public abstract Instant getAuthorTime(); @@ -141,7 +132,6 @@ public String getSignedOffBy() { * hostnames etc. */ @NotNull - @jakarta.validation.constraints.NotNull @Value.NonAttribute @JsonView(Views.V1.class) public Map getProperties() { @@ -156,13 +146,11 @@ public Map getProperties() { } @NotNull - @jakarta.validation.constraints.NotNull @JsonView(Views.V2.class) @JsonInclude(JsonInclude.Include.NON_EMPTY) public abstract Map> getAllProperties(); @NotNull - @jakarta.validation.constraints.NotNull @JsonView(Views.V2.class) @JsonInclude(JsonInclude.Include.NON_EMPTY) public abstract List getParentCommitHashes(); diff --git a/api/model/src/main/java/org/projectnessie/model/CommitResponse.java b/api/model/src/main/java/org/projectnessie/model/CommitResponse.java index a60e79b7a54..6463697e42e 100644 --- a/api/model/src/main/java/org/projectnessie/model/CommitResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/CommitResponse.java @@ -18,11 +18,11 @@ import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; import java.util.List; import java.util.Map; import java.util.stream.Collectors; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -44,12 +44,11 @@ static ImmutableCommitResponse.Builder builder() { *

Specifically, the hash of the {@link Branch} will be the hash of the applied commit. */ @NotNull - @jakarta.validation.constraints.NotNull Branch getTargetBranch(); @JsonView(Views.V2.class) @Nullable - @jakarta.annotation.Nullable // for V1 backwards compatibility + // for V1 backwards compatibility List getAddedContents(); @Value.NonAttribute @@ -90,12 +89,10 @@ default T contentWithAssignedId(ContentKey key, T content) { @JsonDeserialize(as = ImmutableAddedContent.class) interface AddedContent { @NotNull - @jakarta.validation.constraints.NotNull @Value.Parameter(order = 1) ContentKey getKey(); @NotNull - @jakarta.validation.constraints.NotNull @Value.Parameter(order = 2) String contentId(); diff --git a/api/model/src/main/java/org/projectnessie/model/Conflict.java b/api/model/src/main/java/org/projectnessie/model/Conflict.java index 18aa88fd948..be701e0daab 100644 --- a/api/model/src/main/java/org/projectnessie/model/Conflict.java +++ b/api/model/src/main/java/org/projectnessie/model/Conflict.java @@ -21,9 +21,9 @@ import com.fasterxml.jackson.databind.JsonDeserializer; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; import java.io.IOException; import java.util.Locale; -import javax.annotation.Nullable; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.eclipse.microprofile.openapi.annotations.media.SchemaProperty; @@ -50,16 +50,12 @@ public interface Conflict { @Value.Parameter(order = 2) @Nullable - @jakarta.annotation.Nullable ContentKey key(); @Value.Parameter(order = 3) String message(); - static Conflict conflict( - ConflictType conflictType, - @Nullable @jakarta.annotation.Nullable ContentKey key, - String message) { + static Conflict conflict(ConflictType conflictType, @Nullable ContentKey key, String message) { return ImmutableConflict.of(conflictType, key, message); } diff --git a/api/model/src/main/java/org/projectnessie/model/Content.java b/api/model/src/main/java/org/projectnessie/model/Content.java index a207eccba10..67a22495958 100644 --- a/api/model/src/main/java/org/projectnessie/model/Content.java +++ b/api/model/src/main/java/org/projectnessie/model/Content.java @@ -20,10 +20,10 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.annotation.JsonTypeIdResolver; +import jakarta.annotation.Nullable; import java.util.Map; import java.util.Objects; import java.util.Optional; -import javax.annotation.Nullable; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.DiscriminatorMapping; import org.eclipse.microprofile.openapi.annotations.media.Schema; @@ -84,7 +84,6 @@ public interface Type { * renames. Two content objects with the same key will have different id. */ @Nullable - @jakarta.annotation.Nullable public abstract String getId(); /** diff --git a/api/model/src/main/java/org/projectnessie/model/ContentKey.java b/api/model/src/main/java/org/projectnessie/model/ContentKey.java index 14fe474f6ce..bc2c0fdc4a9 100644 --- a/api/model/src/main/java/org/projectnessie/model/ContentKey.java +++ b/api/model/src/main/java/org/projectnessie/model/ContentKey.java @@ -22,11 +22,11 @@ import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import java.util.Arrays; import java.util.List; import java.util.Objects; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; import org.immutables.value.Value; /** @@ -47,9 +47,7 @@ public abstract class ContentKey implements Comparable, Elements { public static final int MAX_ELEMENTS = 20; @NotNull - @jakarta.validation.constraints.NotNull - @Size - @jakarta.validation.constraints.Size(min = 1) + @Size(min = 1) @Value.Parameter(order = 1) @Override public abstract List getElements(); diff --git a/api/model/src/main/java/org/projectnessie/model/ContentMetadata.java b/api/model/src/main/java/org/projectnessie/model/ContentMetadata.java index c447ed3fd7e..5a0dda882d3 100644 --- a/api/model/src/main/java/org/projectnessie/model/ContentMetadata.java +++ b/api/model/src/main/java/org/projectnessie/model/ContentMetadata.java @@ -17,7 +17,7 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.databind.annotation.JsonTypeIdResolver; -import javax.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotEmpty; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.projectnessie.model.metadata.ContentMetadataVariantResolver; @@ -28,6 +28,5 @@ public interface ContentMetadata { @NotEmpty - @jakarta.validation.constraints.NotEmpty String getVariant(); } diff --git a/api/model/src/main/java/org/projectnessie/model/ContentResponse.java b/api/model/src/main/java/org/projectnessie/model/ContentResponse.java index 724f4e0c305..9d50eb5aed4 100644 --- a/api/model/src/main/java/org/projectnessie/model/ContentResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/ContentResponse.java @@ -19,8 +19,8 @@ import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; import org.immutables.value.Value; import org.projectnessie.model.ser.Views; @@ -34,7 +34,6 @@ static ImmutableContentResponse.Builder builder() { } @NotNull - @jakarta.validation.constraints.NotNull @Value.Parameter(order = 1) Content getContent(); @@ -43,12 +42,10 @@ static ImmutableContentResponse.Builder builder() { * entries were fetched. Never null. */ @NotNull - @jakarta.validation.constraints.NotNull @Value.Parameter(order = 2) Reference getEffectiveReference(); @Nullable - @jakarta.annotation.Nullable @JsonView(Views.V2.class) @JsonInclude(JsonInclude.Include.NON_NULL) @Value.Parameter(order = 3) diff --git a/api/model/src/main/java/org/projectnessie/model/DeltaLakeTable.java b/api/model/src/main/java/org/projectnessie/model/DeltaLakeTable.java index aa465e62927..62369884a30 100644 --- a/api/model/src/main/java/org/projectnessie/model/DeltaLakeTable.java +++ b/api/model/src/main/java/org/projectnessie/model/DeltaLakeTable.java @@ -18,9 +18,9 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; import java.util.List; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; import org.immutables.value.Value; @Value.Immutable @@ -30,15 +30,12 @@ public abstract class DeltaLakeTable extends Content { @NotNull - @jakarta.validation.constraints.NotNull public abstract List getMetadataLocationHistory(); @NotNull - @jakarta.validation.constraints.NotNull public abstract List getCheckpointLocationHistory(); @Nullable - @jakarta.annotation.Nullable public abstract String getLastCheckpoint(); @Override diff --git a/api/model/src/main/java/org/projectnessie/model/Detached.java b/api/model/src/main/java/org/projectnessie/model/Detached.java index 459fa8c7bdc..03deb7051a8 100644 --- a/api/model/src/main/java/org/projectnessie/model/Detached.java +++ b/api/model/src/main/java/org/projectnessie/model/Detached.java @@ -21,9 +21,9 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.annotation.Nullable; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.Pattern; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.Pattern; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -51,18 +51,13 @@ default String getName() { @Override @NotEmpty - @jakarta.validation.constraints.NotEmpty @Value.Parameter(order = 1) @Pattern( regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, - message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) String getHash(); @Nullable - @jakarta.annotation.Nullable @Override @Value.Parameter(order = 2) ReferenceMetadata getMetadata(); diff --git a/api/model/src/main/java/org/projectnessie/model/DiffResponse.java b/api/model/src/main/java/org/projectnessie/model/DiffResponse.java index a2a25af21e3..7027565a843 100644 --- a/api/model/src/main/java/org/projectnessie/model/DiffResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/DiffResponse.java @@ -18,8 +18,8 @@ import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; import java.util.List; -import javax.annotation.Nullable; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -42,7 +42,6 @@ static ImmutableDiffResponse.Builder builder() { * the diffs were fetched. Never null when using REST API v2. */ @Nullable // Only nullable in V1 - @jakarta.annotation.Nullable @JsonView(Views.V2.class) Reference getEffectiveFromReference(); @@ -51,7 +50,6 @@ static ImmutableDiffResponse.Builder builder() { * the diffs were fetched. Never null when using REST API v2. */ @Nullable // Only nullable in V1 - @jakarta.annotation.Nullable @JsonView(Views.V2.class) Reference getEffectiveToReference(); @@ -63,13 +61,11 @@ interface DiffEntry { ContentKey getKey(); @Nullable - @jakarta.annotation.Nullable @Value.Parameter(order = 2) @SuppressWarnings("immutables:from") Content getFrom(); @Nullable - @jakarta.annotation.Nullable @Value.Parameter(order = 3) Content getTo(); diff --git a/api/model/src/main/java/org/projectnessie/model/Documentation.java b/api/model/src/main/java/org/projectnessie/model/Documentation.java index d62fbab90be..e3aa6523230 100644 --- a/api/model/src/main/java/org/projectnessie/model/Documentation.java +++ b/api/model/src/main/java/org/projectnessie/model/Documentation.java @@ -18,7 +18,7 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import org.immutables.value.Value; /** Represents documentation for a content object in Nessie. */ @@ -37,13 +37,11 @@ static ImmutableDocumentation.Builder builder() { * type. */ @NotNull - @jakarta.validation.constraints.NotNull @Value.Parameter(order = 1) String getMimeType(); /** Documentation text, format according to {@link #getMimeType()}. */ @NotNull - @jakarta.validation.constraints.NotNull @Value.Parameter(order = 2) @JsonInclude(JsonInclude.Include.NON_NULL) String getText(); diff --git a/api/model/src/main/java/org/projectnessie/model/EntriesResponse.java b/api/model/src/main/java/org/projectnessie/model/EntriesResponse.java index 2b753685dd5..9d3a973f5cf 100644 --- a/api/model/src/main/java/org/projectnessie/model/EntriesResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/EntriesResponse.java @@ -18,9 +18,9 @@ import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; import java.util.List; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; import org.projectnessie.model.ser.Views; @@ -35,7 +35,6 @@ static ImmutableEntriesResponse.Builder builder() { } @NotNull - @jakarta.validation.constraints.NotNull List getEntries(); /** @@ -43,7 +42,6 @@ static ImmutableEntriesResponse.Builder builder() { * entries were fetched. Never null when using REST API v2. */ @Nullable // Only nullable in V1 - @jakarta.annotation.Nullable @JsonView(Views.V2.class) Reference getEffectiveReference(); @@ -57,26 +55,24 @@ static ImmutableEntry.Builder builder() { } @NotNull - @jakarta.validation.constraints.NotNull @Value.Parameter(order = 2) @Schema(ref = "#/components/schemas/Type") // workaround self-referencing 'ref' Content.Type getType(); @NotNull - @jakarta.validation.constraints.NotNull @Value.Parameter(order = 1) ContentKey getName(); @JsonView(Views.V2.class) @Value.Parameter(order = 3) @Nullable - @jakarta.annotation.Nullable // for V1 backwards compatibility + // for V1 backwards compatibility String getContentId(); @JsonView(Views.V2.class) @Value.Parameter(order = 4) @Nullable - @jakarta.annotation.Nullable // for V1 backwards compatibility + // for V1 backwards compatibility Content getContent(); @Value.Check diff --git a/api/model/src/main/java/org/projectnessie/model/FetchOption.java b/api/model/src/main/java/org/projectnessie/model/FetchOption.java index 6661b89dc29..d3edcd70f2a 100644 --- a/api/model/src/main/java/org/projectnessie/model/FetchOption.java +++ b/api/model/src/main/java/org/projectnessie/model/FetchOption.java @@ -15,8 +15,8 @@ */ package org.projectnessie.model; +import jakarta.annotation.Nullable; import java.util.Locale; -import javax.annotation.Nullable; /** * This enum defines the levels of details that may be represented by model objects. For example, @@ -35,7 +35,7 @@ public enum FetchOption { * @return true if the given fetchOption is {@link FetchOption#ALL}, * false otherwise. */ - public static boolean isFetchAll(@Nullable @jakarta.annotation.Nullable FetchOption fetchOption) { + public static boolean isFetchAll(@Nullable FetchOption fetchOption) { return ALL == fetchOption; } @@ -47,8 +47,7 @@ public static boolean isFetchAll(@Nullable @jakarta.annotation.Nullable FetchOpt * @return The name of the given fetchOption or {@link FetchOption#MINIMAL} if the * given fetchOption is null */ - public static String getFetchOptionName( - @Nullable @jakarta.annotation.Nullable FetchOption fetchOption) { + public static String getFetchOptionName(@Nullable FetchOption fetchOption) { return null == fetchOption ? FetchOption.MINIMAL.name() : fetchOption.name(); } diff --git a/api/model/src/main/java/org/projectnessie/model/GarbageCollectorConfig.java b/api/model/src/main/java/org/projectnessie/model/GarbageCollectorConfig.java index 67279ec8593..2a078f2119d 100644 --- a/api/model/src/main/java/org/projectnessie/model/GarbageCollectorConfig.java +++ b/api/model/src/main/java/org/projectnessie/model/GarbageCollectorConfig.java @@ -21,10 +21,10 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.Pattern; import java.time.Duration; import java.util.List; -import javax.annotation.Nullable; -import javax.validation.constraints.Pattern; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.eclipse.microprofile.openapi.annotations.tags.Tag; @@ -60,14 +60,10 @@ static ImmutableGarbageCollectorConfig.Builder builder() { + "- an ISO instant " + "- 'NONE', means everything's considered as live") @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) @Pattern( regexp = Validation.DEFAULT_CUT_OFF_POLICY_REGEX, message = Validation.DEFAULT_CUT_OFF_POLICY_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.DEFAULT_CUT_OFF_POLICY_REGEX, - message = Validation.DEFAULT_CUT_OFF_POLICY_MESSAGE) String getDefaultCutoffPolicy(); /** @@ -90,7 +86,6 @@ default void checkDefaultPolicy() { description = "Files that have been created after 'gc-start-time - new-files-grace-period' are not being deleted.") @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) @JsonSerialize(using = Util.DurationSerializer.class) @JsonDeserialize(using = Util.DurationDeserializer.class) @@ -98,7 +93,6 @@ default void checkDefaultPolicy() { @Schema(title = "The total number of expected live files for a single content.") @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) Integer getExpectedFileCountPerContent(); diff --git a/api/model/src/main/java/org/projectnessie/model/GetMultipleContentsRequest.java b/api/model/src/main/java/org/projectnessie/model/GetMultipleContentsRequest.java index 9e9661db276..bc16fb354dc 100644 --- a/api/model/src/main/java/org/projectnessie/model/GetMultipleContentsRequest.java +++ b/api/model/src/main/java/org/projectnessie/model/GetMultipleContentsRequest.java @@ -17,9 +17,9 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import java.util.List; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -31,9 +31,7 @@ public interface GetMultipleContentsRequest { @NotNull - @jakarta.validation.constraints.NotNull - @Size - @jakarta.validation.constraints.Size(min = 1) + @Size(min = 1) List getRequestedKeys(); static ImmutableGetMultipleContentsRequest.Builder builder() { diff --git a/api/model/src/main/java/org/projectnessie/model/GetMultipleContentsResponse.java b/api/model/src/main/java/org/projectnessie/model/GetMultipleContentsResponse.java index e67781b1df4..a5120130fa8 100644 --- a/api/model/src/main/java/org/projectnessie/model/GetMultipleContentsResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/GetMultipleContentsResponse.java @@ -19,11 +19,11 @@ import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; import java.util.List; import java.util.Map; import java.util.stream.Collectors; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -36,7 +36,6 @@ public interface GetMultipleContentsResponse { @NotNull - @jakarta.validation.constraints.NotNull @Value.Parameter(order = 1) List getContents(); @@ -45,7 +44,6 @@ public interface GetMultipleContentsResponse { * contents were fetched. Never null when using REST API v2. */ @Nullable // Only nullable in V1 - @jakarta.annotation.Nullable @Value.Parameter(order = 2) @JsonView(Views.V2.class) Reference getEffectiveReference(); @@ -66,17 +64,14 @@ static GetMultipleContentsResponse of(List items, Reference effe interface ContentWithKey { @NotNull - @jakarta.validation.constraints.NotNull @Value.Parameter(order = 1) ContentKey getKey(); @NotNull - @jakarta.validation.constraints.NotNull @Value.Parameter(order = 2) Content getContent(); @Nullable - @jakarta.annotation.Nullable @JsonView(Views.V2.class) @JsonInclude(JsonInclude.Include.NON_NULL) @Value.Parameter(order = 3) diff --git a/api/model/src/main/java/org/projectnessie/model/GetNamespacesResponse.java b/api/model/src/main/java/org/projectnessie/model/GetNamespacesResponse.java index 4fa09ecd38f..5ebd3de82cc 100644 --- a/api/model/src/main/java/org/projectnessie/model/GetNamespacesResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/GetNamespacesResponse.java @@ -18,9 +18,9 @@ import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; import java.util.List; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; import org.immutables.value.Value; import org.projectnessie.model.ser.Views; @@ -29,7 +29,6 @@ @JsonDeserialize(as = ImmutableGetNamespacesResponse.class) public interface GetNamespacesResponse { @NotNull - @jakarta.validation.constraints.NotNull List getNamespaces(); /** @@ -38,7 +37,6 @@ public interface GetNamespacesResponse { */ @JsonView(Views.V2.class) @Nullable // Only nullable in V1 - @jakarta.annotation.Nullable Reference getEffectiveReference(); static ImmutableGetNamespacesResponse.Builder builder() { diff --git a/api/model/src/main/java/org/projectnessie/model/IcebergTable.java b/api/model/src/main/java/org/projectnessie/model/IcebergTable.java index c2c2c18027d..015eae8f224 100644 --- a/api/model/src/main/java/org/projectnessie/model/IcebergTable.java +++ b/api/model/src/main/java/org/projectnessie/model/IcebergTable.java @@ -22,10 +22,10 @@ import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import java.util.Map; -import javax.annotation.Nullable; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -64,9 +64,7 @@ public abstract class IcebergTable extends IcebergContent { * (implementation of) Iceberg's {@code FileIO} configured for the particular Iceberg table. */ @NotNull - @jakarta.validation.constraints.NotNull @NotBlank - @jakarta.validation.constraints.NotBlank @Override public abstract String getMetadataLocation(); @@ -96,7 +94,6 @@ public Type getType() { @Deprecated @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) @JsonView(Views.V1.class) // Left here in case an old Nessie client sends this piece of information. diff --git a/api/model/src/main/java/org/projectnessie/model/IcebergView.java b/api/model/src/main/java/org/projectnessie/model/IcebergView.java index f26c229888b..0036ae06ccf 100644 --- a/api/model/src/main/java/org/projectnessie/model/IcebergView.java +++ b/api/model/src/main/java/org/projectnessie/model/IcebergView.java @@ -21,10 +21,10 @@ import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import java.util.Map; -import javax.annotation.Nullable; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import org.immutables.value.Value; import org.projectnessie.model.ser.Views; @@ -39,9 +39,7 @@ public abstract class IcebergView extends IcebergContent { * (implementation of) Iceberg's {@code FileIO} configured for the particular Iceberg table. */ @NotNull - @jakarta.validation.constraints.NotNull @NotBlank - @jakarta.validation.constraints.NotBlank @Override public abstract String getMetadataLocation(); @@ -52,16 +50,13 @@ public abstract class IcebergView extends IcebergContent { public abstract int getSchemaId(); @NotBlank - @jakarta.validation.constraints.NotBlank @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) @Deprecated @SuppressWarnings("DeprecatedIsStillUsed") public abstract String getSqlText(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) @Deprecated @SuppressWarnings("DeprecatedIsStillUsed") @@ -74,7 +69,6 @@ public Type getType() { @Deprecated @Nullable - @jakarta.annotation.Nullable @JsonInclude(Include.NON_NULL) @JsonView(Views.V1.class) // Left here in case an old Nessie client sends this piece of information. diff --git a/api/model/src/main/java/org/projectnessie/model/IdentifiedContentKey.java b/api/model/src/main/java/org/projectnessie/model/IdentifiedContentKey.java index 4a469dc6074..47b5d3b2c80 100644 --- a/api/model/src/main/java/org/projectnessie/model/IdentifiedContentKey.java +++ b/api/model/src/main/java/org/projectnessie/model/IdentifiedContentKey.java @@ -20,12 +20,12 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import java.util.ArrayList; import java.util.List; import java.util.function.Function; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; import org.immutables.value.Value; @Value.Immutable @@ -33,13 +33,10 @@ @JsonDeserialize(as = ImmutableIdentifiedContentKey.class) public interface IdentifiedContentKey { @NotNull - @jakarta.validation.constraints.NotNull - @Size - @jakarta.validation.constraints.Size(min = 1) + @Size(min = 1) List elements(); @NotNull - @jakarta.validation.constraints.NotNull ContentKey contentKey(); @JsonIgnore @@ -50,7 +47,6 @@ default IdentifiedElement lastElement() { } @Nullable - @jakarta.annotation.Nullable Content.Type type(); @Value.Check @@ -70,7 +66,6 @@ interface IdentifiedElement { @Value.Parameter(order = 2) @Nullable - @jakarta.annotation.Nullable String contentId(); static IdentifiedElement identifiedElement(String element, String contentId) { diff --git a/api/model/src/main/java/org/projectnessie/model/LogResponse.java b/api/model/src/main/java/org/projectnessie/model/LogResponse.java index 705334f2f72..cf696c45101 100644 --- a/api/model/src/main/java/org/projectnessie/model/LogResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/LogResponse.java @@ -20,9 +20,9 @@ import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; import java.util.List; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -35,7 +35,6 @@ public interface LogResponse extends PaginatedResponse { @NotNull - @jakarta.validation.constraints.NotNull List getLogEntries(); static ImmutableLogResponse.Builder builder() { @@ -52,7 +51,6 @@ static ImmutableLogEntry.Builder builder() { } @NotNull - @jakarta.validation.constraints.NotNull CommitMeta getCommitMeta(); @SuppressWarnings("DeprecatedIsStillUsed") @@ -62,11 +60,9 @@ static ImmutableLogEntry.Builder builder() { List getAdditionalParents(); @Nullable - @jakarta.annotation.Nullable String getParentCommitHash(); @Nullable - @jakarta.annotation.Nullable List getOperations(); } } diff --git a/api/model/src/main/java/org/projectnessie/model/MergeKeyBehavior.java b/api/model/src/main/java/org/projectnessie/model/MergeKeyBehavior.java index 6d2e574a00a..63caa12957e 100644 --- a/api/model/src/main/java/org/projectnessie/model/MergeKeyBehavior.java +++ b/api/model/src/main/java/org/projectnessie/model/MergeKeyBehavior.java @@ -20,8 +20,8 @@ import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; import java.util.List; -import javax.annotation.Nullable; import org.immutables.value.Value; import org.projectnessie.model.ser.Views; @@ -47,7 +47,6 @@ public interface MergeKeyBehavior { @JsonInclude(Include.NON_NULL) @JsonView(Views.V2.class) @Nullable - @jakarta.annotation.Nullable Content getExpectedTargetContent(); /** @@ -64,7 +63,6 @@ public interface MergeKeyBehavior { @JsonInclude(Include.NON_NULL) @JsonView(Views.V2.class) @Nullable - @jakarta.annotation.Nullable Content getResolvedContent(); /** @@ -80,7 +78,6 @@ public interface MergeKeyBehavior { @JsonInclude(Include.NON_NULL) @JsonView(Views.V2.class) @Nullable - @jakarta.annotation.Nullable Documentation getExpectedTargetDocumentation(); /** @@ -97,7 +94,6 @@ public interface MergeKeyBehavior { @JsonInclude(Include.NON_NULL) @JsonView(Views.V2.class) @Nullable - @jakarta.annotation.Nullable Documentation getResolvedDocumentation(); /** diff --git a/api/model/src/main/java/org/projectnessie/model/MergeResponse.java b/api/model/src/main/java/org/projectnessie/model/MergeResponse.java index a3a01ce4c37..d3e3e8878b8 100644 --- a/api/model/src/main/java/org/projectnessie/model/MergeResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/MergeResponse.java @@ -23,10 +23,10 @@ import com.fasterxml.jackson.databind.JsonDeserializer; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; import java.io.IOException; import java.util.List; import java.util.Locale; -import javax.annotation.Nullable; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -52,7 +52,6 @@ default boolean wasSuccessful() { /** Commit-ID of the target branch after the merge/transplant operation. */ @Nullable - @jakarta.annotation.Nullable String getResultantTargetHash(); /** @@ -64,7 +63,6 @@ default boolean wasSuccessful() { * Since renaming a public API fields is not good practice, this field represents the merge-base. */ @Nullable - @jakarta.annotation.Nullable String getCommonAncestor(); /** Name of the target branch. */ @@ -75,7 +73,6 @@ default boolean wasSuccessful() { /** The expected commit-ID of the target branch, as specified by the caller. */ @Nullable - @jakarta.annotation.Nullable String getExpectedHash(); @SuppressWarnings("DeprecatedIsStillUsed") @@ -86,7 +83,6 @@ default boolean wasSuccessful() { @SuppressWarnings("DeprecatedIsStillUsed") @Nullable - @jakarta.annotation.Nullable @Deprecated // for removal and replaced with something else @Schema(deprecated = true, hidden = true) @JsonView(Views.V1.class) @@ -130,7 +126,6 @@ default ContentKeyConflict getConflictType() { @JsonInclude(Include.NON_NULL) @JsonView(Views.V2.class) @Nullable - @jakarta.annotation.Nullable Conflict getConflict(); } diff --git a/api/model/src/main/java/org/projectnessie/model/Namespace.java b/api/model/src/main/java/org/projectnessie/model/Namespace.java index 66cfaafbff5..65e1caf65b6 100644 --- a/api/model/src/main/java/org/projectnessie/model/Namespace.java +++ b/api/model/src/main/java/org/projectnessie/model/Namespace.java @@ -24,12 +24,12 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.validation.constraints.NotNull; import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.Map; import java.util.Objects; -import javax.validation.constraints.NotNull; import org.immutables.value.Value; import org.immutables.value.Value.Derived; @@ -69,7 +69,6 @@ public Type getType() { } @NotNull - @jakarta.validation.constraints.NotNull @Derived @JsonIgnore public String name() { @@ -83,8 +82,6 @@ public boolean isEmpty() { } @NotNull - @jakarta.validation.constraints.NotNull - @Override public abstract List getElements(); @JsonIgnore @@ -122,7 +119,6 @@ public Namespace getParentOrEmpty() { } @NotNull - @jakarta.validation.constraints.NotNull @JsonInclude(Include.NON_EMPTY) public abstract Map getProperties(); diff --git a/api/model/src/main/java/org/projectnessie/model/NessieConfiguration.java b/api/model/src/main/java/org/projectnessie/model/NessieConfiguration.java index 13b5cef5ee5..7271968f3c6 100644 --- a/api/model/src/main/java/org/projectnessie/model/NessieConfiguration.java +++ b/api/model/src/main/java/org/projectnessie/model/NessieConfiguration.java @@ -20,10 +20,10 @@ import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.Size; import java.time.Instant; import java.util.Map; -import javax.annotation.Nullable; -import javax.validation.constraints.Size; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -46,9 +46,7 @@ public abstract class NessieConfiguration { * as an API call parameter. */ @Nullable - @jakarta.annotation.Nullable - @Size - @jakarta.validation.constraints.Size(min = 1) + @Size(min = 1) public abstract String getDefaultBranch(); /** @@ -97,7 +95,6 @@ public int getActualApiVersion() { + "added functionality.") @JsonView(Views.V2.class) @Nullable - @jakarta.annotation.Nullable public abstract String getSpecVersion(); /** @@ -108,7 +105,6 @@ public int getActualApiVersion() { @JsonView(Views.V2.class) @JsonInclude(Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable public abstract String getNoAncestorHash(); /** @@ -119,7 +115,6 @@ public int getActualApiVersion() { @JsonView(Views.V2.class) @JsonInclude(Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable @JsonSerialize(using = InstantSerializer.class) @JsonDeserialize(using = InstantDeserializer.class) public abstract Instant getRepositoryCreationTimestamp(); @@ -135,7 +130,6 @@ public int getActualApiVersion() { @JsonView(Views.V2.class) @JsonInclude(Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable @JsonSerialize(using = InstantSerializer.class) @JsonDeserialize(using = InstantDeserializer.class) public abstract Instant getOldestPossibleCommitTimestamp(); diff --git a/api/model/src/main/java/org/projectnessie/model/Operation.java b/api/model/src/main/java/org/projectnessie/model/Operation.java index 6eb1fa2d2f9..0144b7bbb5d 100644 --- a/api/model/src/main/java/org/projectnessie/model/Operation.java +++ b/api/model/src/main/java/org/projectnessie/model/Operation.java @@ -23,9 +23,9 @@ import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotNull; import java.util.List; -import javax.annotation.Nullable; -import javax.validation.constraints.NotNull; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.DiscriminatorMapping; import org.eclipse.microprofile.openapi.annotations.media.Schema; @@ -55,7 +55,6 @@ public interface Operation { @NotNull - @jakarta.validation.constraints.NotNull ContentKey getKey(); @Schema( @@ -84,11 +83,9 @@ public interface Operation { @JsonTypeName("PUT") interface Put extends Operation { @NotNull - @jakarta.validation.constraints.NotNull Content getContent(); @Nullable - @jakarta.annotation.Nullable @Deprecated @SuppressWarnings("DeprecatedIsStillUsed") @JsonView(Views.V1.class) @@ -104,7 +101,6 @@ interface Put extends Operation { List getMetadata(); @Nullable - @jakarta.annotation.Nullable @JsonView(Views.V2.class) Documentation getDocumentation(); diff --git a/api/model/src/main/java/org/projectnessie/model/Operations.java b/api/model/src/main/java/org/projectnessie/model/Operations.java index 01d23a4b4e0..987b2094817 100644 --- a/api/model/src/main/java/org/projectnessie/model/Operations.java +++ b/api/model/src/main/java/org/projectnessie/model/Operations.java @@ -17,9 +17,9 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import java.util.List; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -31,12 +31,9 @@ public interface Operations { @NotNull - @jakarta.validation.constraints.NotNull CommitMeta getCommitMeta(); @NotNull - @jakarta.validation.constraints.NotNull - @Size - @jakarta.validation.constraints.Size(min = 1) + @Size(min = 1) List getOperations(); } diff --git a/api/model/src/main/java/org/projectnessie/model/PaginatedResponse.java b/api/model/src/main/java/org/projectnessie/model/PaginatedResponse.java index 7f049eb3e41..acbc050182d 100644 --- a/api/model/src/main/java/org/projectnessie/model/PaginatedResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/PaginatedResponse.java @@ -16,8 +16,8 @@ package org.projectnessie.model; import com.fasterxml.jackson.annotation.JsonProperty; -import javax.annotation.Nullable; -import javax.validation.constraints.Size; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.Size; import org.immutables.value.Value.Default; public interface PaginatedResponse { @@ -47,8 +47,6 @@ default boolean isHasMore() { * {@code false}. */ @Nullable - @jakarta.annotation.Nullable - @Size - @jakarta.validation.constraints.Size(min = 1) + @Size(min = 1) String getToken(); } diff --git a/api/model/src/main/java/org/projectnessie/model/RefLogResponse.java b/api/model/src/main/java/org/projectnessie/model/RefLogResponse.java index 2e525d9ff6a..1200a3fc4c8 100644 --- a/api/model/src/main/java/org/projectnessie/model/RefLogResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/RefLogResponse.java @@ -17,8 +17,8 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.validation.constraints.NotNull; import java.util.List; -import javax.validation.constraints.NotNull; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -32,7 +32,6 @@ public interface RefLogResponse extends PaginatedResponse { @NotNull - @jakarta.validation.constraints.NotNull List getLogEntries(); @SuppressWarnings("all") @@ -62,37 +61,30 @@ static ImmutableRefLogResponseEntry.Builder builder() { /** Reflog id of the current entry. */ @NotNull - @jakarta.validation.constraints.NotNull String getRefLogId(); /** Reference on which current operation is executed. */ @NotNull - @jakarta.validation.constraints.NotNull String getRefName(); /** Reference type can be 'Branch' or 'Tag'. */ @NotNull - @jakarta.validation.constraints.NotNull String getRefType(); /** Output commit hash of the operation. */ @NotNull - @jakarta.validation.constraints.NotNull String getCommitHash(); /** Parent reflog id of the current entry. */ @NotNull - @jakarta.validation.constraints.NotNull String getParentRefLogId(); /** Time in microseconds since epoch. */ @NotNull - @jakarta.validation.constraints.NotNull long getOperationTime(); /** Operation String mapped to ENUM in {@code RefLogEntry.Operation} of 'persist.proto' file. */ @NotNull - @jakarta.validation.constraints.NotNull String getOperation(); /** @@ -100,7 +92,6 @@ static ImmutableRefLogResponseEntry.Builder builder() { * for other operations. */ @NotNull - @jakarta.validation.constraints.NotNull List getSourceHashes(); } } diff --git a/api/model/src/main/java/org/projectnessie/model/Reference.java b/api/model/src/main/java/org/projectnessie/model/Reference.java index 86a35de005d..2fd279f15f2 100644 --- a/api/model/src/main/java/org/projectnessie/model/Reference.java +++ b/api/model/src/main/java/org/projectnessie/model/Reference.java @@ -22,9 +22,9 @@ import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; -import javax.annotation.Nullable; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.Pattern; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.Pattern; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.DiscriminatorMapping; import org.eclipse.microprofile.openapi.annotations.media.Schema; @@ -56,11 +56,7 @@ public interface Reference extends Base { /** Human-readable reference name. */ @NotBlank - @jakarta.validation.constraints.NotBlank @Pattern(regexp = Validation.REF_NAME_REGEX, message = Validation.REF_NAME_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.REF_NAME_REGEX, - message = Validation.REF_NAME_MESSAGE) String getName(); /** @@ -73,9 +69,6 @@ public interface Reference extends Base { @Pattern( regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) - @jakarta.validation.constraints.Pattern( - regexp = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, - message = Validation.HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) String getHash(); /** @@ -101,7 +94,6 @@ default void checkHash() { */ @JsonInclude(Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable ReferenceMetadata getMetadata(); @JsonIgnore diff --git a/api/model/src/main/java/org/projectnessie/model/ReferenceHistoryResponse.java b/api/model/src/main/java/org/projectnessie/model/ReferenceHistoryResponse.java index 87aff40ed7e..cf00f2b406c 100644 --- a/api/model/src/main/java/org/projectnessie/model/ReferenceHistoryResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/ReferenceHistoryResponse.java @@ -17,8 +17,8 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.validation.constraints.NotNull; import java.util.List; -import javax.validation.constraints.NotNull; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -46,25 +46,21 @@ static ImmutableReferenceHistoryResponse.Builder builder() { } @NotNull - @jakarta.validation.constraints.NotNull Reference getReference(); @Schema(description = "Consistency status of the current HEAD commit.") @NotNull - @jakarta.validation.constraints.NotNull ReferenceHistoryState current(); @Schema( description = "Consistency status of the recorded recent HEADs of the reference, including re-assign operations.") @NotNull - @jakarta.validation.constraints.NotNull List previous(); @Schema( description = "Combined consistency status of the commit-log of the reference, if requested by the client.") @NotNull - @jakarta.validation.constraints.NotNull CommitConsistency commitLogConsistency(); } diff --git a/api/model/src/main/java/org/projectnessie/model/ReferenceHistoryState.java b/api/model/src/main/java/org/projectnessie/model/ReferenceHistoryState.java index 0028abc7228..0d0829b41e0 100644 --- a/api/model/src/main/java/org/projectnessie/model/ReferenceHistoryState.java +++ b/api/model/src/main/java/org/projectnessie/model/ReferenceHistoryState.java @@ -17,7 +17,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -50,7 +50,6 @@ public interface ReferenceHistoryState { @Schema(description = "Meta information from the commit, if available.") @Value.Parameter(order = 3) @Nullable - @jakarta.annotation.Nullable CommitMeta meta(); static ReferenceHistoryState referenceHistoryElement( diff --git a/api/model/src/main/java/org/projectnessie/model/ReferenceMetadata.java b/api/model/src/main/java/org/projectnessie/model/ReferenceMetadata.java index 0a222ea1b0a..c4d98f21ebd 100644 --- a/api/model/src/main/java/org/projectnessie/model/ReferenceMetadata.java +++ b/api/model/src/main/java/org/projectnessie/model/ReferenceMetadata.java @@ -18,7 +18,7 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -40,22 +40,17 @@ public interface ReferenceMetadata { @Nullable - @jakarta.annotation.Nullable Integer getNumCommitsAhead(); @Nullable - @jakarta.annotation.Nullable Integer getNumCommitsBehind(); @Nullable - @jakarta.annotation.Nullable CommitMeta getCommitMetaOfHEAD(); @Nullable - @jakarta.annotation.Nullable String getCommonAncestorHash(); @Nullable - @jakarta.annotation.Nullable Long getNumTotalCommits(); } diff --git a/api/model/src/main/java/org/projectnessie/model/ReferencesResponse.java b/api/model/src/main/java/org/projectnessie/model/ReferencesResponse.java index 4cf48637c46..3ba2c2ce007 100644 --- a/api/model/src/main/java/org/projectnessie/model/ReferencesResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/ReferencesResponse.java @@ -17,8 +17,8 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.validation.constraints.NotNull; import java.util.List; -import javax.validation.constraints.NotNull; import org.immutables.value.Value; @Value.Immutable @@ -31,6 +31,5 @@ static ImmutableReferencesResponse.Builder builder() { } @NotNull - @jakarta.validation.constraints.NotNull List getReferences(); } diff --git a/api/model/src/main/java/org/projectnessie/model/SingleReferenceResponse.java b/api/model/src/main/java/org/projectnessie/model/SingleReferenceResponse.java index e29e70accd2..59f7b8add54 100644 --- a/api/model/src/main/java/org/projectnessie/model/SingleReferenceResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/SingleReferenceResponse.java @@ -17,7 +17,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -33,6 +33,5 @@ static ImmutableSingleReferenceResponse.Builder builder() { } @NotNull - @jakarta.validation.constraints.NotNull Reference getReference(); } diff --git a/api/model/src/main/java/org/projectnessie/model/TableReference.java b/api/model/src/main/java/org/projectnessie/model/TableReference.java index 2576cc60a38..fcf78ed6a3f 100644 --- a/api/model/src/main/java/org/projectnessie/model/TableReference.java +++ b/api/model/src/main/java/org/projectnessie/model/TableReference.java @@ -15,11 +15,11 @@ */ package org.projectnessie.model; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; import java.util.regex.Matcher; import java.util.regex.Pattern; -import javax.annotation.Nullable; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; import org.immutables.value.Value; /** @@ -49,15 +49,11 @@ public abstract class TableReference { Pattern.compile("^([^@#]+)(@([^@#]+))?(#([^@#]+))?$"); @NotNull - @jakarta.validation.constraints.NotNull @NotEmpty - @jakarta.validation.constraints.NotEmpty public abstract String getName(); @Nullable - @jakarta.annotation.Nullable @NotEmpty - @jakarta.validation.constraints.NotEmpty public abstract String getReference(); @Value.Redacted @@ -66,9 +62,7 @@ public boolean hasReference() { } @Nullable - @jakarta.annotation.Nullable @NotEmpty - @jakarta.validation.constraints.NotEmpty public abstract String getTimestamp(); @Value.Redacted @@ -77,9 +71,7 @@ public boolean hasTimestamp() { } @Nullable - @jakarta.annotation.Nullable @NotEmpty - @jakarta.validation.constraints.NotEmpty public abstract String getHash(); @Value.Redacted diff --git a/api/model/src/main/java/org/projectnessie/model/Tag.java b/api/model/src/main/java/org/projectnessie/model/Tag.java index b4cd57982db..0419a93dea1 100644 --- a/api/model/src/main/java/org/projectnessie/model/Tag.java +++ b/api/model/src/main/java/org/projectnessie/model/Tag.java @@ -20,7 +20,7 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -38,14 +38,12 @@ public interface Tag extends Reference { String getName(); @Nullable - @jakarta.annotation.Nullable @Override @Value.Parameter(order = 3) ReferenceMetadata getMetadata(); @Override @Nullable - @jakarta.annotation.Nullable @Value.Parameter(order = 2) String getHash(); diff --git a/api/model/src/main/java/org/projectnessie/model/UDF.java b/api/model/src/main/java/org/projectnessie/model/UDF.java index 78f5f0cb597..fda8a7223c6 100644 --- a/api/model/src/main/java/org/projectnessie/model/UDF.java +++ b/api/model/src/main/java/org/projectnessie/model/UDF.java @@ -19,8 +19,8 @@ import com.fasterxml.jackson.annotation.JsonTypeName; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.annotation.Nullable; -import javax.validation.constraints.NotBlank; +import jakarta.annotation.Nullable; +import jakarta.validation.constraints.NotBlank; import org.immutables.value.Value; @Value.Immutable @@ -30,33 +30,27 @@ public abstract class UDF extends Content { @NotBlank - @jakarta.validation.constraints.NotBlank @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) @SuppressWarnings("DeprecatedIsStillUsed") @Deprecated public abstract String getSqlText(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) @SuppressWarnings("DeprecatedIsStillUsed") @Deprecated public abstract String getDialect(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) public abstract String getVersionId(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) public abstract String getSignatureId(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) public abstract String getMetadataLocation(); diff --git a/api/model/src/main/java/org/projectnessie/model/UpdateRepositoryConfigResponse.java b/api/model/src/main/java/org/projectnessie/model/UpdateRepositoryConfigResponse.java index c388c5b81a3..1861b6753d9 100644 --- a/api/model/src/main/java/org/projectnessie/model/UpdateRepositoryConfigResponse.java +++ b/api/model/src/main/java/org/projectnessie/model/UpdateRepositoryConfigResponse.java @@ -17,7 +17,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.eclipse.microprofile.openapi.annotations.tags.Tag; @@ -34,7 +34,6 @@ public interface UpdateRepositoryConfigResponse { * repository config type exists, this value will be {@code null}. */ @Nullable - @jakarta.annotation.Nullable @Schema( implementation = RepositoryConfig.class, title = "The previous state of the repository configuration object.", diff --git a/api/model/src/main/java/org/projectnessie/model/metadata/GenericContentMetadata.java b/api/model/src/main/java/org/projectnessie/model/metadata/GenericContentMetadata.java index f3115b854b2..c2e19b26c71 100644 --- a/api/model/src/main/java/org/projectnessie/model/metadata/GenericContentMetadata.java +++ b/api/model/src/main/java/org/projectnessie/model/metadata/GenericContentMetadata.java @@ -20,8 +20,8 @@ import com.fasterxml.jackson.annotation.JsonUnwrapped; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; import java.util.Map; -import javax.annotation.Nullable; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -40,7 +40,6 @@ public interface GenericContentMetadata extends ContentMetadata { String getVariant(); @Nullable - @jakarta.annotation.Nullable @Schema(type = SchemaType.OBJECT) @Value.Parameter(order = 2) @JsonInclude(Include.NON_NULL) diff --git a/api/model/src/main/java/org/projectnessie/model/types/ContentTypes.java b/api/model/src/main/java/org/projectnessie/model/types/ContentTypes.java index f66596e58d9..42afba32f89 100644 --- a/api/model/src/main/java/org/projectnessie/model/types/ContentTypes.java +++ b/api/model/src/main/java/org/projectnessie/model/types/ContentTypes.java @@ -18,13 +18,13 @@ import static java.util.Objects.requireNonNull; import com.fasterxml.jackson.annotation.JsonTypeName; +import jakarta.annotation.Nonnull; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.ServiceLoader; -import javax.annotation.Nonnull; import org.projectnessie.model.Content; /** @@ -41,7 +41,6 @@ public static Content.Type[] all() { } @Nonnull - @jakarta.annotation.Nonnull public static Content.Type forName(String name) { return Registry.forName(name); } diff --git a/api/model/src/main/java/org/projectnessie/model/types/GenericRepositoryConfig.java b/api/model/src/main/java/org/projectnessie/model/types/GenericRepositoryConfig.java index f49706091f1..a53614838e4 100644 --- a/api/model/src/main/java/org/projectnessie/model/types/GenericRepositoryConfig.java +++ b/api/model/src/main/java/org/projectnessie/model/types/GenericRepositoryConfig.java @@ -27,10 +27,10 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.jsontype.TypeSerializer; +import jakarta.annotation.Nullable; import java.io.IOException; import java.util.Map; import java.util.Map.Entry; -import javax.annotation.Nullable; import org.eclipse.microprofile.openapi.annotations.enums.SchemaType; import org.eclipse.microprofile.openapi.annotations.media.Schema; import org.immutables.value.Value; @@ -54,7 +54,6 @@ public abstract class GenericRepositoryConfig implements RepositoryConfig { public abstract RepositoryConfig.Type getType(); @Nullable - @jakarta.annotation.Nullable @Schema(type = SchemaType.OBJECT) @Value.Parameter(order = 3) @JsonInclude(Include.NON_NULL) diff --git a/api/model/src/main/java/org/projectnessie/model/types/RepositoryConfigTypes.java b/api/model/src/main/java/org/projectnessie/model/types/RepositoryConfigTypes.java index ef69f03dfde..eecaa35d3b5 100644 --- a/api/model/src/main/java/org/projectnessie/model/types/RepositoryConfigTypes.java +++ b/api/model/src/main/java/org/projectnessie/model/types/RepositoryConfigTypes.java @@ -18,13 +18,13 @@ import static java.util.Objects.requireNonNull; import com.fasterxml.jackson.annotation.JsonTypeName; +import jakarta.annotation.Nonnull; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.ServiceLoader; -import javax.annotation.Nonnull; import org.projectnessie.model.RepositoryConfig; /** @@ -41,7 +41,6 @@ public static RepositoryConfig.Type[] all() { } @Nonnull - @jakarta.annotation.Nonnull public static RepositoryConfig.Type forName(String name) { return Registry.forName(name); } diff --git a/api/model/src/main/resources/META-INF/extensions/org.immutables.inhibit-classpath b/api/model/src/main/resources/META-INF/extensions/org.immutables.inhibit-classpath new file mode 100644 index 00000000000..852aab3374d --- /dev/null +++ b/api/model/src/main/resources/META-INF/extensions/org.immutables.inhibit-classpath @@ -0,0 +1,2 @@ +javax.annotation.Nullable +javax.annotation.CheckReturnValue diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergDataFile.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergDataFile.java index a3ddb583f4e..96580f2ead0 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergDataFile.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergDataFile.java @@ -16,9 +16,9 @@ package org.projectnessie.catalog.formats.iceberg.manifest; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; import org.apache.avro.generic.GenericData; import org.immutables.value.Value; import org.projectnessie.nessie.immutables.NessieImmutable; @@ -44,7 +44,6 @@ default IcebergDataContent content() { long fileSizeInBytes(); @Nullable - @jakarta.annotation.Nullable @Value.Default // Iceberg spec V1 only (not in V2) default Long blockSizeInBytes() { @@ -94,17 +93,14 @@ default Long blockSizeInBytes() { Map upperBounds(); @Nullable - @jakarta.annotation.Nullable byte[] keyMetadata(); // TODO Use Agrona-Collections @Nullable - @jakarta.annotation.Nullable List splitOffsets(); // TODO Use Agrona-Collections @Nullable - @jakarta.annotation.Nullable List equalityIds(); @Value.Default @@ -113,7 +109,6 @@ default int sortOrderId() { } @Nullable - @jakarta.annotation.Nullable Integer specId(); GenericData.Record partition(); diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestEntry.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestEntry.java index 12e1eb687b8..5b3f9de4b0f 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestEntry.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestEntry.java @@ -16,7 +16,7 @@ package org.projectnessie.catalog.formats.iceberg.manifest; import com.google.errorprone.annotations.CanIgnoreReturnValue; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.projectnessie.nessie.immutables.NessieImmutable; @NessieImmutable @@ -29,19 +29,15 @@ static Builder builder() { IcebergManifestEntryStatus status(); @Nullable - @jakarta.annotation.Nullable Long snapshotId(); @Nullable - @jakarta.annotation.Nullable Long sequenceNumber(); @Nullable - @jakarta.annotation.Nullable Long fileSequenceNumber(); @Nullable - @jakarta.annotation.Nullable IcebergDataFile dataFile(); @SuppressWarnings("unused") diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestFile.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestFile.java index f9e98c4c94a..ba0f0e9a19a 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestFile.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestFile.java @@ -16,8 +16,8 @@ package org.projectnessie.catalog.formats.iceberg.manifest; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.util.List; -import javax.annotation.Nullable; import org.projectnessie.catalog.formats.iceberg.meta.IcebergPartitionFieldSummary; import org.projectnessie.nessie.immutables.NessieImmutable; @@ -34,47 +34,36 @@ static Builder builder() { int partitionSpecId(); @Nullable - @jakarta.annotation.Nullable Long addedSnapshotId(); @Nullable - @jakarta.annotation.Nullable Integer addedFilesCount(); @Nullable - @jakarta.annotation.Nullable Integer existingFilesCount(); @Nullable - @jakarta.annotation.Nullable Integer deletedFilesCount(); @Nullable - @jakarta.annotation.Nullable Long addedRowsCount(); @Nullable - @jakarta.annotation.Nullable Long existingRowsCount(); @Nullable - @jakarta.annotation.Nullable Long deletedRowsCount(); @Nullable - @jakarta.annotation.Nullable Long sequenceNumber(); @Nullable - @jakarta.annotation.Nullable Long minSequenceNumber(); @Nullable - @jakarta.annotation.Nullable IcebergManifestContent content(); @Nullable - @jakarta.annotation.Nullable byte[] keyMetadata(); List partitions(); diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestFileWriterSpec.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestFileWriterSpec.java index 9c2efef0c93..04e11f0bfe6 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestFileWriterSpec.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestFileWriterSpec.java @@ -17,8 +17,8 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.util.Map; -import javax.annotation.Nullable; import org.apache.avro.Schema; import org.immutables.value.Value; import org.projectnessie.catalog.formats.iceberg.IcebergSpec; @@ -68,7 +68,6 @@ default String partitionSpecAsJsonString() { Map tableProperties(); @Nullable - @jakarta.annotation.Nullable byte[] keyMetadata(); String manifestPath(); diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestListWriterSpec.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestListWriterSpec.java index 54644d0653c..ef2b0908aa6 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestListWriterSpec.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/manifest/IcebergManifestListWriterSpec.java @@ -16,8 +16,8 @@ package org.projectnessie.catalog.formats.iceberg.manifest; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.util.Map; -import javax.annotation.Nullable; import org.apache.avro.Schema; import org.immutables.value.Value; import org.projectnessie.catalog.formats.iceberg.IcebergSpec; @@ -43,7 +43,6 @@ static Builder builder() { long snapshotId(); @Nullable - @jakarta.annotation.Nullable Long parentSnapshotId(); @Value.Default diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergNestedField.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergNestedField.java index d91f96d30a1..9f7f857c57e 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergNestedField.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergNestedField.java @@ -25,7 +25,7 @@ import com.fasterxml.jackson.databind.annotation.JsonNaming; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.apache.avro.Schema; import org.immutables.value.Value; import org.projectnessie.catalog.formats.iceberg.types.IcebergType; @@ -56,7 +56,6 @@ static IcebergNestedField nestedField( IcebergType type(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) String doc(); diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergPartitionFieldSummary.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergPartitionFieldSummary.java index 8c40dc28343..8b7b5ba1629 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergPartitionFieldSummary.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergPartitionFieldSummary.java @@ -16,7 +16,7 @@ package org.projectnessie.catalog.formats.iceberg.meta; import com.google.errorprone.annotations.CanIgnoreReturnValue; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.projectnessie.nessie.immutables.NessieImmutable; @NessieImmutable @@ -39,7 +39,6 @@ static IcebergPartitionFieldSummary icebergPartitionFieldSummary( // TODO how is this encoded?? in IJ's Avro/Parquet viewer string values appear "interesting" // TODO Use Agrona-Collections @Nullable - @jakarta.annotation.Nullable byte[] lowerBound(); // TODO subject to write.metadata.metrics.default / write.metadata.metrics.column.* settings !! @@ -51,11 +50,9 @@ static IcebergPartitionFieldSummary icebergPartitionFieldSummary( // org.apache.parquet.internal.column.columnindex.BinaryTruncator.truncateMax? // TODO Use Agrona-Collections @Nullable - @jakarta.annotation.Nullable byte[] upperBound(); @Nullable - @jakarta.annotation.Nullable Boolean containsNan(); @SuppressWarnings("unused") diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergSnapshot.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergSnapshot.java index f5dadf27509..ea717019ef5 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergSnapshot.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergSnapshot.java @@ -25,9 +25,9 @@ import com.fasterxml.jackson.databind.annotation.JsonNaming; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; import org.immutables.value.Value; import org.projectnessie.catalog.formats.iceberg.IcebergSpec; import org.projectnessie.nessie.immutables.NessieImmutable; @@ -63,7 +63,6 @@ static IcebergSnapshot snapshot( } @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) @JsonView(IcebergSpec.IcebergSpecV2.class) Long sequenceNumber(); @@ -71,7 +70,6 @@ static IcebergSnapshot snapshot( long snapshotId(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) Long parentSnapshotId(); @@ -88,11 +86,9 @@ static IcebergSnapshot snapshot( @JsonView(IcebergSpec.IcebergSpecV2.class) @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable String manifestList(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) Integer schemaId(); diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergSnapshotRef.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergSnapshotRef.java index 7833bc13b83..f738f5410cb 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergSnapshotRef.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergSnapshotRef.java @@ -22,7 +22,7 @@ import com.fasterxml.jackson.databind.annotation.JsonNaming; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.projectnessie.nessie.immutables.NessieImmutable; @NessieImmutable @@ -50,17 +50,14 @@ static IcebergSnapshotRef snapshotRef( String type(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) Integer minSnapshotsToKeep(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) Long maxSnapshotAgeMs(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) Long maxRefAgeMs(); diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergTableMetadata.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergTableMetadata.java index c61bb4d2be1..d174c2df055 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergTableMetadata.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/meta/IcebergTableMetadata.java @@ -25,10 +25,10 @@ import com.fasterxml.jackson.databind.annotation.JsonNaming; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.util.List; import java.util.Map; import java.util.Optional; -import javax.annotation.Nullable; import org.projectnessie.catalog.formats.iceberg.IcebergSpec; import org.projectnessie.nessie.immutables.NessieImmutable; @@ -49,7 +49,6 @@ public interface IcebergTableMetadata { int formatVersion(); @Nullable - @jakarta.annotation.Nullable String tableUuid(); /** @@ -61,7 +60,6 @@ public interface IcebergTableMetadata { @JsonView(IcebergSpec.IcebergSpecV2.class) @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable Long lastSequenceNumber(); long lastUpdatedMs(); @@ -71,14 +69,12 @@ public interface IcebergTableMetadata { @JsonView(IcebergSpec.IcebergSpecV1.class) @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable IcebergSchema schema(); List schemas(); // Optional in V1 @Nullable - @jakarta.annotation.Nullable Integer currentSchemaId(); @JsonView(IcebergSpec.IcebergSpecV1.class) @@ -89,17 +85,14 @@ public interface IcebergTableMetadata { // Optional in V1 @Nullable - @jakarta.annotation.Nullable Integer defaultSpecId(); // Optional in V1 @Nullable - @jakarta.annotation.Nullable Integer lastPartitionId(); // Optional in V1 @Nullable - @jakarta.annotation.Nullable Integer defaultSortOrderId(); List sortOrders(); @@ -111,7 +104,6 @@ public interface IcebergTableMetadata { @JsonView(IcebergSpec.IcebergSpecV2.class) @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable Map refs(); List snapshots(); diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/metrics/IcebergCommitMetricsResult.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/metrics/IcebergCommitMetricsResult.java index 55a948f67b7..e34131da281 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/metrics/IcebergCommitMetricsResult.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/metrics/IcebergCommitMetricsResult.java @@ -21,7 +21,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonNaming; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.projectnessie.nessie.immutables.NessieImmutable; @NessieImmutable diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/metrics/IcebergScanMetricsResult.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/metrics/IcebergScanMetricsResult.java index bf3de7aa159..d19800b6ca8 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/metrics/IcebergScanMetricsResult.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/metrics/IcebergScanMetricsResult.java @@ -21,7 +21,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonNaming; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.projectnessie.nessie.immutables.NessieImmutable; @NessieImmutable diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/rest/IcebergCreateViewRequest.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/rest/IcebergCreateViewRequest.java index 298202de3b2..9952a986b3e 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/rest/IcebergCreateViewRequest.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/rest/IcebergCreateViewRequest.java @@ -21,8 +21,8 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonNaming; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; import java.util.Map; -import javax.annotation.Nullable; import org.projectnessie.catalog.formats.iceberg.meta.IcebergSchema; import org.projectnessie.catalog.formats.iceberg.meta.IcebergViewVersion; import org.projectnessie.nessie.immutables.NessieImmutable; diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/rest/IcebergMetadataUpdate.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/rest/IcebergMetadataUpdate.java index 4521f021f66..31de8a59996 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/rest/IcebergMetadataUpdate.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/rest/IcebergMetadataUpdate.java @@ -30,12 +30,12 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonNaming; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Objects; import java.util.Set; -import javax.annotation.Nullable; import org.immutables.value.Value; import org.projectnessie.catalog.formats.iceberg.meta.IcebergPartitionSpec; import org.projectnessie.catalog.formats.iceberg.meta.IcebergPartitionStatisticsFile; diff --git a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/types/IcebergStructType.java b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/types/IcebergStructType.java index 91af2525b1c..9a7cb305929 100644 --- a/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/types/IcebergStructType.java +++ b/catalog/format/iceberg/src/main/java/org/projectnessie/catalog/formats/iceberg/types/IcebergStructType.java @@ -25,9 +25,9 @@ import com.fasterxml.jackson.databind.annotation.JsonNaming; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.util.ArrayList; import java.util.List; -import javax.annotation.Nullable; import org.apache.avro.JsonProperties; import org.apache.avro.Schema; import org.immutables.value.Value; @@ -54,7 +54,6 @@ default String type() { List fields(); @Nullable - @jakarta.annotation.Nullable @JsonIgnore String avroRecordName(); diff --git a/catalog/model/src/main/java/org/projectnessie/catalog/model/NessieEntity.java b/catalog/model/src/main/java/org/projectnessie/catalog/model/NessieEntity.java index 5c5adca5881..2063acd732c 100644 --- a/catalog/model/src/main/java/org/projectnessie/catalog/model/NessieEntity.java +++ b/catalog/model/src/main/java/org/projectnessie/catalog/model/NessieEntity.java @@ -21,8 +21,8 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.time.Instant; -import javax.annotation.Nullable; import org.projectnessie.catalog.model.snapshot.TableFormat; import org.projectnessie.model.CommitMeta.InstantDeserializer; import org.projectnessie.model.CommitMeta.InstantSerializer; @@ -39,11 +39,9 @@ public interface NessieEntity { String nessieContentId(); @Nullable - @jakarta.annotation.Nullable String icebergUuid(); @Nullable - @jakarta.annotation.Nullable TableFormat tableFormat(); // FIXME move this serializer out of CommitMeta - or add module diff --git a/catalog/model/src/main/java/org/projectnessie/catalog/model/manifest/NessieFieldSummary.java b/catalog/model/src/main/java/org/projectnessie/catalog/model/manifest/NessieFieldSummary.java index 66fac00c565..756f247c96b 100644 --- a/catalog/model/src/main/java/org/projectnessie/catalog/model/manifest/NessieFieldSummary.java +++ b/catalog/model/src/main/java/org/projectnessie/catalog/model/manifest/NessieFieldSummary.java @@ -19,7 +19,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.projectnessie.catalog.model.id.Hashable; import org.projectnessie.catalog.model.id.NessieIdHasher; import org.projectnessie.nessie.immutables.NessieImmutable; @@ -51,40 +51,34 @@ default void hash(NessieIdHasher idHasher) { Integer fieldId(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Present for manifest file entries // Only for Iceberg Long columnSize(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Present for manifest file entries Boolean containsNull(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Present for manifest file entries // Only for Iceberg Boolean containsNan(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Present for data file entries Long nullValueCount(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Present for data file entries // Only for Iceberg Long nanValueCount(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Present for data file entries Long valueCount(); @@ -95,7 +89,6 @@ default void hash(NessieIdHasher idHasher) { // https://iceberg.apache.org/docs/1.3.0/configuration/#write-properties // TODO how is this encoded?? in IJ's Avro/Parquet viewer string values appear "interesting" @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) byte[] lowerBound(); @@ -108,7 +101,6 @@ default void hash(NessieIdHasher idHasher) { // uses Parquet's functionality, see // org.apache.parquet.internal.column.columnindex.BinaryTruncator.truncateMax? @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) byte[] upperBound(); diff --git a/catalog/model/src/main/java/org/projectnessie/catalog/model/manifest/NessieFieldValue.java b/catalog/model/src/main/java/org/projectnessie/catalog/model/manifest/NessieFieldValue.java index 8eb8a901737..84cf28d7e50 100644 --- a/catalog/model/src/main/java/org/projectnessie/catalog/model/manifest/NessieFieldValue.java +++ b/catalog/model/src/main/java/org/projectnessie/catalog/model/manifest/NessieFieldValue.java @@ -19,8 +19,8 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.util.UUID; -import javax.annotation.Nullable; import org.projectnessie.catalog.model.id.Hashable; import org.projectnessie.catalog.model.id.NessieIdHasher; import org.projectnessie.nessie.immutables.NessieImmutable; @@ -32,7 +32,6 @@ public interface NessieFieldValue extends Hashable { UUID fieldId(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) Integer icebergFieldId(); diff --git a/catalog/model/src/main/java/org/projectnessie/catalog/model/manifest/NessieFieldsSummary.java b/catalog/model/src/main/java/org/projectnessie/catalog/model/manifest/NessieFieldsSummary.java index 710c02972a6..6257429b815 100644 --- a/catalog/model/src/main/java/org/projectnessie/catalog/model/manifest/NessieFieldsSummary.java +++ b/catalog/model/src/main/java/org/projectnessie/catalog/model/manifest/NessieFieldsSummary.java @@ -19,7 +19,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.projectnessie.nessie.immutables.NessieImmutable; /** @@ -37,7 +37,6 @@ public interface NessieFieldsSummary { int[] fieldIds(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Present for manifest file entries // Only for Iceberg @@ -45,27 +44,23 @@ public interface NessieFieldsSummary { long[] columnSizes(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Present for manifest file entries BooleanArray containsNull(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Present for manifest file entries // Only for Iceberg BooleanArray containsNan(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Present for data file entries // -1 means not present long[] nullValueCount(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Present for data file entries // Only for Iceberg @@ -73,7 +68,6 @@ public interface NessieFieldsSummary { long[] nanValueCount(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Present for data file entries // -1 means not present @@ -85,7 +79,6 @@ public interface NessieFieldsSummary { // https://iceberg.apache.org/docs/1.3.0/configuration/#write-properties // TODO how is this encoded?? in IJ's Avro/Parquet viewer string values appear "interesting" @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) byte[][] lowerBound(); @@ -98,7 +91,6 @@ public interface NessieFieldsSummary { // uses Parquet's functionality, see // org.apache.parquet.internal.column.columnindex.BinaryTruncator.truncateMax? @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) byte[][] upperBound(); diff --git a/catalog/model/src/main/java/org/projectnessie/catalog/model/ops/CatalogOperationTypeResolver.java b/catalog/model/src/main/java/org/projectnessie/catalog/model/ops/CatalogOperationTypeResolver.java index f196184294b..5db2a7cbed6 100644 --- a/catalog/model/src/main/java/org/projectnessie/catalog/model/ops/CatalogOperationTypeResolver.java +++ b/catalog/model/src/main/java/org/projectnessie/catalog/model/ops/CatalogOperationTypeResolver.java @@ -15,8 +15,8 @@ */ package org.projectnessie.catalog.model.ops; +import jakarta.annotation.Nullable; import jakarta.validation.constraints.NotNull; -import javax.annotation.Nullable; import org.projectnessie.model.Content; /** diff --git a/catalog/model/src/main/java/org/projectnessie/catalog/model/schema/NessieField.java b/catalog/model/src/main/java/org/projectnessie/catalog/model/schema/NessieField.java index 463e1ad6462..654acc358d6 100644 --- a/catalog/model/src/main/java/org/projectnessie/catalog/model/schema/NessieField.java +++ b/catalog/model/src/main/java/org/projectnessie/catalog/model/schema/NessieField.java @@ -19,9 +19,9 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.util.Map; import java.util.UUID; -import javax.annotation.Nullable; import org.immutables.value.Value; import org.projectnessie.catalog.model.schema.types.NessieTypeSpec; import org.projectnessie.nessie.immutables.NessieImmutable; @@ -76,7 +76,6 @@ default boolean dataColumn() { // TODO Iceberg embeds documentation into the schema. This isn't great for large docs though. @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable String doc(); @SuppressWarnings("unused") diff --git a/catalog/model/src/main/java/org/projectnessie/catalog/model/schema/NessieStruct.java b/catalog/model/src/main/java/org/projectnessie/catalog/model/schema/NessieStruct.java index cb0eecd1ce5..3a76a985841 100644 --- a/catalog/model/src/main/java/org/projectnessie/catalog/model/schema/NessieStruct.java +++ b/catalog/model/src/main/java/org/projectnessie/catalog/model/schema/NessieStruct.java @@ -19,8 +19,8 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.util.List; -import javax.annotation.Nullable; import org.projectnessie.catalog.model.id.Hashable; import org.projectnessie.catalog.model.id.NessieIdHasher; import org.projectnessie.nessie.immutables.NessieImmutable; @@ -38,7 +38,6 @@ static NessieStruct nessieStruct(List fields, String icebergRecordN @JsonInclude(JsonInclude.Include.NON_EMPTY) @Nullable - @jakarta.annotation.Nullable String icebergRecordName(); @Override diff --git a/catalog/model/src/main/java/org/projectnessie/catalog/model/schema/types/NessieTypeSpecSerialized.java b/catalog/model/src/main/java/org/projectnessie/catalog/model/schema/types/NessieTypeSpecSerialized.java index 8078239007f..65221c1e88c 100644 --- a/catalog/model/src/main/java/org/projectnessie/catalog/model/schema/types/NessieTypeSpecSerialized.java +++ b/catalog/model/src/main/java/org/projectnessie/catalog/model/schema/types/NessieTypeSpecSerialized.java @@ -20,9 +20,9 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; import java.util.List; import java.util.Locale; -import javax.annotation.Nullable; import org.immutables.value.Value; import org.projectnessie.catalog.model.schema.NessieField; import org.projectnessie.catalog.model.schema.NessieStruct; @@ -35,7 +35,6 @@ public interface NessieTypeSpecSerialized { String type(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Used for: // - big-decimal (scale) @@ -43,7 +42,6 @@ public interface NessieTypeSpecSerialized { Integer length(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Used for: // - big-decimal @@ -52,7 +50,6 @@ public interface NessieTypeSpecSerialized { Integer precision(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Used for: // - time @@ -60,7 +57,6 @@ public interface NessieTypeSpecSerialized { Boolean withTimeZone(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Used for: // - list @@ -68,7 +64,6 @@ public interface NessieTypeSpecSerialized { NessieTypeSpecSerialized elementType(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Used for: // - list @@ -76,7 +71,6 @@ public interface NessieTypeSpecSerialized { Integer icebergElementFieldId(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Used for: // - list @@ -84,14 +78,12 @@ public interface NessieTypeSpecSerialized { Boolean elementsNullable(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Used for: // - map NessieTypeSpecSerialized keyType(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) // Used for: // - map @@ -103,7 +95,6 @@ public interface NessieTypeSpecSerialized { List fields(); @Nullable - @jakarta.annotation.Nullable @JsonInclude(JsonInclude.Include.NON_NULL) String icebergRecordName(); diff --git a/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieEntitySnapshot.java b/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieEntitySnapshot.java index c35cc97f200..8d7c44fccec 100644 --- a/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieEntitySnapshot.java +++ b/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieEntitySnapshot.java @@ -26,13 +26,13 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.time.Instant; import java.util.List; import java.util.Map; import java.util.Optional; import java.util.Set; import java.util.stream.Collectors; -import javax.annotation.Nullable; import org.immutables.value.Value; import org.projectnessie.catalog.model.NessieEntity; import org.projectnessie.catalog.model.id.NessieId; @@ -63,7 +63,6 @@ public interface NessieEntitySnapshot { @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable NessieId currentSchemaId(); List schemas(); @@ -92,7 +91,6 @@ default Optional currentSchemaObject() { @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable Integer icebergFormatVersion(); /** @@ -101,12 +99,11 @@ default Optional currentSchemaObject() { */ @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable String icebergLocation(); @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable + // Can be null, if for example no Iceberg snapshot exists in a table-metadata @JsonSerialize(using = CommitMeta.InstantSerializer.class) @JsonDeserialize(using = CommitMeta.InstantDeserializer.class) diff --git a/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieTableSnapshot.java b/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieTableSnapshot.java index 1c3787b3443..ee40498f42f 100644 --- a/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieTableSnapshot.java +++ b/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieTableSnapshot.java @@ -26,13 +26,13 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Optional; import java.util.UUID; import java.util.stream.Collectors; -import javax.annotation.Nullable; import org.immutables.value.Value; import org.projectnessie.catalog.model.NessieTable; import org.projectnessie.catalog.model.id.NessieId; @@ -76,7 +76,6 @@ default String type() { @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable NessieId currentPartitionDefinitionId(); @JsonInclude(JsonInclude.Include.NON_EMPTY) @@ -95,7 +94,6 @@ default Optional partitionDefinitionByIcebergId(int s @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable NessieId currentSortDefinitionId(); @JsonInclude(JsonInclude.Include.NON_EMPTY) @@ -117,27 +115,22 @@ default Optional sortDefinitionByIcebergId(int orderId) { @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable Long icebergSnapshotId(); @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable Long icebergLastSequenceNumber(); @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable Long icebergSnapshotSequenceNumber(); @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable Integer icebergLastColumnId(); @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable Integer icebergLastPartitionId(); @JsonInclude(JsonInclude.Include.NON_EMPTY) @@ -156,7 +149,6 @@ default Optional sortDefinitionByIcebergId(int orderId) { */ @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable String icebergManifestListLocation(); /** diff --git a/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieViewDependency.java b/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieViewDependency.java index 118e11cfe52..41aa249e8a9 100644 --- a/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieViewDependency.java +++ b/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieViewDependency.java @@ -17,8 +17,8 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import jakarta.annotation.Nullable; import java.util.List; -import javax.annotation.Nullable; import org.projectnessie.catalog.model.id.NessieId; import org.projectnessie.nessie.immutables.NessieImmutable; @@ -33,11 +33,9 @@ @JsonDeserialize(as = ImmutableNessieViewDependency.class) public interface NessieViewDependency { @Nullable - @jakarta.annotation.Nullable NessieId tableSnapshot(); @Nullable - @jakarta.annotation.Nullable NessieId viewSnapshot(); List referencedColumns(); diff --git a/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieViewSnapshot.java b/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieViewSnapshot.java index a609efcaeda..ac1a2f456a6 100644 --- a/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieViewSnapshot.java +++ b/catalog/model/src/main/java/org/projectnessie/catalog/model/snapshot/NessieViewSnapshot.java @@ -20,9 +20,9 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.util.List; import java.util.Map; -import javax.annotation.Nullable; import org.immutables.value.Value; import org.projectnessie.catalog.model.NessieView; import org.projectnessie.catalog.model.id.NessieId; @@ -67,7 +67,6 @@ default String type() { @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable Long icebergCurrentVersionId(); @JsonInclude(JsonInclude.Include.NON_EMPTY) @@ -75,12 +74,10 @@ default String type() { @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable String icebergDefaultCatalog(); @JsonInclude(JsonInclude.Include.NON_NULL) @Nullable - @jakarta.annotation.Nullable List icebergNamespace(); @JsonInclude(JsonInclude.Include.NON_EMPTY) diff --git a/catalog/service/common/build.gradle.kts b/catalog/service/common/build.gradle.kts index dded0d6c30e..4cc34c89a97 100644 --- a/catalog/service/common/build.gradle.kts +++ b/catalog/service/common/build.gradle.kts @@ -47,7 +47,6 @@ dependencies { compileOnly(libs.jakarta.ws.rs.api) compileOnly(libs.jakarta.enterprise.cdi.api) compileOnly(libs.jakarta.validation.api) - compileOnly(libs.findbugs.jsr305) compileOnly(libs.errorprone.annotations) compileOnly(libs.microprofile.openapi) diff --git a/catalog/service/impl/build.gradle.kts b/catalog/service/impl/build.gradle.kts index c6b83a9af72..4b8e0e2bdc7 100644 --- a/catalog/service/impl/build.gradle.kts +++ b/catalog/service/impl/build.gradle.kts @@ -45,7 +45,6 @@ dependencies { compileOnly(libs.jakarta.ws.rs.api) compileOnly(libs.jakarta.enterprise.cdi.api) compileOnly(libs.jakarta.validation.api) - compileOnly(libs.findbugs.jsr305) compileOnly(libs.errorprone.annotations) compileOnly(libs.microprofile.openapi) diff --git a/catalog/service/rest/build.gradle.kts b/catalog/service/rest/build.gradle.kts index 774d549d23d..8a1efd34436 100644 --- a/catalog/service/rest/build.gradle.kts +++ b/catalog/service/rest/build.gradle.kts @@ -55,7 +55,6 @@ dependencies { compileOnly(libs.jakarta.ws.rs.api) compileOnly(libs.jakarta.enterprise.cdi.api) compileOnly(libs.jakarta.validation.api) - compileOnly(libs.findbugs.jsr305) compileOnly(libs.errorprone.annotations) compileOnly(libs.microprofile.openapi) diff --git a/catalog/service/rest/src/main/java/org/projectnessie/catalog/service/rest/NamespaceRef.java b/catalog/service/rest/src/main/java/org/projectnessie/catalog/service/rest/NamespaceRef.java index 9862e431295..739e8f0136c 100644 --- a/catalog/service/rest/src/main/java/org/projectnessie/catalog/service/rest/NamespaceRef.java +++ b/catalog/service/rest/src/main/java/org/projectnessie/catalog/service/rest/NamespaceRef.java @@ -15,7 +15,7 @@ */ package org.projectnessie.catalog.service.rest; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.immutables.value.Value; import org.projectnessie.catalog.formats.iceberg.meta.IcebergTableIdentifier; import org.projectnessie.model.ContentKey; @@ -52,17 +52,14 @@ public interface NamespaceRef { @Value.Parameter(order = 2) @Nullable - @jakarta.annotation.Nullable String referenceName(); @Value.Parameter(order = 3) @Nullable - @jakarta.annotation.Nullable String hashWithRelativeSpec(); @Value.Parameter(order = 4) @Nullable - @jakarta.annotation.Nullable String warehouse(); static NamespaceRef namespaceRef( diff --git a/catalog/service/rest/src/main/java/org/projectnessie/catalog/service/rest/TableRef.java b/catalog/service/rest/src/main/java/org/projectnessie/catalog/service/rest/TableRef.java index 71aa00acf28..716714eb01c 100644 --- a/catalog/service/rest/src/main/java/org/projectnessie/catalog/service/rest/TableRef.java +++ b/catalog/service/rest/src/main/java/org/projectnessie/catalog/service/rest/TableRef.java @@ -15,7 +15,7 @@ */ package org.projectnessie.catalog.service.rest; -import javax.annotation.Nullable; +import jakarta.annotation.Nullable; import org.immutables.value.Value; import org.projectnessie.api.v2.params.ParsedReference; import org.projectnessie.catalog.formats.iceberg.meta.IcebergTableIdentifier; @@ -52,12 +52,10 @@ public interface TableRef { @Value.Parameter(order = 2) @Nullable - @jakarta.annotation.Nullable ParsedReference reference(); @Value.Parameter(order = 4) @Nullable - @jakarta.annotation.Nullable String warehouse(); static TableRef tableRef(ContentKey contentKey, ParsedReference reference, String warehouse) { diff --git a/catalog/service/transfer/build.gradle.kts b/catalog/service/transfer/build.gradle.kts index fbede886801..f44b981ec59 100644 --- a/catalog/service/transfer/build.gradle.kts +++ b/catalog/service/transfer/build.gradle.kts @@ -30,7 +30,6 @@ dependencies { compileOnly(libs.jakarta.ws.rs.api) compileOnly(libs.jakarta.enterprise.cdi.api) compileOnly(libs.jakarta.validation.api) - compileOnly(libs.findbugs.jsr305) compileOnly(libs.errorprone.annotations) compileOnly(libs.microprofile.openapi) diff --git a/cli/cli/build.gradle.kts b/cli/cli/build.gradle.kts index 1e4a0819833..92b77844d04 100644 --- a/cli/cli/build.gradle.kts +++ b/cli/cli/build.gradle.kts @@ -48,8 +48,8 @@ dependencies { implementation("org.apache.iceberg:iceberg-azure") implementation("org.apache.iceberg:iceberg-gcp") - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) compileOnly(libs.jakarta.annotation.api) compileOnly(libs.microprofile.openapi) @@ -57,9 +57,8 @@ dependencies { implementation(platform(libs.jackson.bom)) implementation("com.fasterxml.jackson.core:jackson-databind") - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) runtimeOnly(libs.logback.classic) @@ -75,7 +74,7 @@ dependencies { testImplementation(project(":nessie-versioned-storage-inmemory-tests")) - testCompileOnly(libs.immutables.value.annotations) + testCompileOnly(project(":nessie-immutables-std")) intTestImplementation(project(":nessie-object-storage-mock")) intTestImplementation(project(":nessie-catalog-format-iceberg")) diff --git a/cli/grammar/build.gradle.kts b/cli/grammar/build.gradle.kts index cfff7c1392d..05de340d3c2 100644 --- a/cli/grammar/build.gradle.kts +++ b/cli/grammar/build.gradle.kts @@ -28,8 +28,8 @@ configurations.testFixturesApi { extendsFrom(syntaxGen) } dependencies { compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(libs.guava) implementation(libs.slf4j.api) @@ -42,7 +42,7 @@ dependencies { testFixturesApi(platform(libs.junit.bom)) testFixturesApi(libs.bundles.junit.testing) testFixturesApi(libs.jakarta.annotation.api) - testFixturesApi(libs.immutables.value.annotations) + testFixturesApi(project(":nessie-immutables-std")) testFixturesRuntimeOnly(libs.logback.classic) diff --git a/events/api/build.gradle.kts b/events/api/build.gradle.kts index 97d53844c40..006ec24cf0b 100644 --- a/events/api/build.gradle.kts +++ b/events/api/build.gradle.kts @@ -21,9 +21,8 @@ publishingHelper { mavenName = "Nessie - Events - API" } dependencies { // Immutables - implementation(libs.immutables.builder) - implementation(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + implementation(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) // Testing testImplementation(platform(libs.junit.bom)) diff --git a/events/service/build.gradle.kts b/events/service/build.gradle.kts index 37502bde8b2..a06f7d10794 100644 --- a/events/service/build.gradle.kts +++ b/events/service/build.gradle.kts @@ -33,9 +33,8 @@ dependencies { compileOnly(libs.microprofile.openapi) compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testImplementation(platform(libs.junit.bom)) testImplementation(libs.bundles.junit.testing) @@ -43,6 +42,7 @@ dependencies { testRuntimeOnly(libs.logback.classic) testCompileOnly(libs.microprofile.openapi) + testCompileOnly(libs.jakarta.annotation.api) } tasks.withType(Test::class).configureEach { diff --git a/events/service/src/test/java/org/projectnessie/events/service/util/TestContentMapping.java b/events/service/src/test/java/org/projectnessie/events/service/util/TestContentMapping.java index 2b2db1a3aeb..36d32342e9d 100644 --- a/events/service/src/test/java/org/projectnessie/events/service/util/TestContentMapping.java +++ b/events/service/src/test/java/org/projectnessie/events/service/util/TestContentMapping.java @@ -18,11 +18,11 @@ import static org.assertj.core.api.Assertions.assertThat; import com.google.common.collect.ImmutableMap; +import jakarta.annotation.Nullable; import java.time.Instant; import java.util.Arrays; import java.util.Collections; import java.util.stream.Stream; -import javax.annotation.Nullable; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; diff --git a/events/spi/build.gradle.kts b/events/spi/build.gradle.kts index 2c657b99383..3bb85a1e13a 100644 --- a/events/spi/build.gradle.kts +++ b/events/spi/build.gradle.kts @@ -22,9 +22,8 @@ dependencies { implementation(project(":nessie-events-api")) // Immutables - implementation(libs.immutables.builder) - implementation(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + implementation(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) // Testing testImplementation(platform(libs.junit.bom)) diff --git a/gc/gc-base/build.gradle.kts b/gc/gc-base/build.gradle.kts index 80fd08b3638..3fb6481759d 100644 --- a/gc/gc-base/build.gradle.kts +++ b/gc/gc-base/build.gradle.kts @@ -23,8 +23,8 @@ description = dependencies { compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) api(project(":nessie-storage-uri")) implementation(project(":nessie-client")) @@ -52,8 +52,8 @@ dependencies { testCompileOnly(libs.jakarta.validation.api) - testCompileOnly(libs.immutables.value.annotations) - testAnnotationProcessor(libs.immutables.value.processor) + testCompileOnly(project(":nessie-immutables-std")) + testAnnotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testCompileOnly(platform(libs.jackson.bom)) testCompileOnly("com.fasterxml.jackson.core:jackson-annotations") diff --git a/gc/gc-iceberg-files/build.gradle.kts b/gc/gc-iceberg-files/build.gradle.kts index c88312e5f14..c7c7d855cb9 100644 --- a/gc/gc-iceberg-files/build.gradle.kts +++ b/gc/gc-iceberg-files/build.gradle.kts @@ -46,8 +46,8 @@ dependencies { implementation("org.apache.iceberg:iceberg-azure") compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(nessieProject("nessie-immutables-std")) + annotationProcessor(nessieProject("nessie-immutables-std", configuration = "processor")) implementation(nessieProject("nessie-gc-base")) diff --git a/gc/gc-iceberg-inttest/build.gradle.kts b/gc/gc-iceberg-inttest/build.gradle.kts index 59758ca6eb6..48686268353 100644 --- a/gc/gc-iceberg-inttest/build.gradle.kts +++ b/gc/gc-iceberg-inttest/build.gradle.kts @@ -116,9 +116,8 @@ dependencies { intTestImplementation(nessieProject("nessie-gcs-testcontainer")) intTestRuntimeOnly(libs.hadoop.azure) - intTestCompileOnly(libs.immutables.builder) - intTestCompileOnly(libs.immutables.value.annotations) - intTestAnnotationProcessor(libs.immutables.value.processor) + intTestCompileOnly(nessieProject("nessie-immutables-std")) + intTestAnnotationProcessor(nessieProject("nessie-immutables-std", configuration = "processor")) intTestRuntimeOnly(libs.logback.classic) diff --git a/gc/gc-iceberg-mock/build.gradle.kts b/gc/gc-iceberg-mock/build.gradle.kts index 55396120bf5..7ef7509e6d3 100644 --- a/gc/gc-iceberg-mock/build.gradle.kts +++ b/gc/gc-iceberg-mock/build.gradle.kts @@ -23,8 +23,8 @@ dependencies { compileOnly("org.apache.iceberg:iceberg-core") compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(nessieProject("nessie-immutables-std")) + annotationProcessor(nessieProject("nessie-immutables-std", configuration = "processor")) implementation(libs.guava) implementation(platform(libs.jackson.bom)) @@ -44,8 +44,8 @@ dependencies { testImplementation(platform(libs.iceberg.bom)) testImplementation("org.apache.iceberg:iceberg-core") - testCompileOnly(libs.immutables.value.annotations) - testAnnotationProcessor(libs.immutables.value.processor) + testCompileOnly(nessieProject("nessie-immutables-std")) + testAnnotationProcessor(nessieProject("nessie-immutables-std", configuration = "processor")) testCompileOnly(libs.microprofile.openapi) diff --git a/gc/gc-iceberg/build.gradle.kts b/gc/gc-iceberg/build.gradle.kts index 97ca7c114b7..2bffffc7122 100644 --- a/gc/gc-iceberg/build.gradle.kts +++ b/gc/gc-iceberg/build.gradle.kts @@ -23,8 +23,8 @@ dependencies { implementation("org.apache.iceberg:iceberg-core") compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(nessieProject("nessie-immutables-std")) + annotationProcessor(nessieProject("nessie-immutables-std", configuration = "processor")) implementation(nessieProject("nessie-model")) implementation(nessieProject("nessie-gc-base")) diff --git a/gc/gc-repository-jdbc/build.gradle.kts b/gc/gc-repository-jdbc/build.gradle.kts index 6b263cdf6b9..a929e5e1d24 100644 --- a/gc/gc-repository-jdbc/build.gradle.kts +++ b/gc/gc-repository-jdbc/build.gradle.kts @@ -20,8 +20,8 @@ publishingHelper { mavenName = "Nessie - GC - JDBC live-contents-set persistence dependencies { compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(nessieProject("nessie-immutables-std")) + annotationProcessor(nessieProject("nessie-immutables-std", configuration = "processor")) compileOnly(libs.jetbrains.annotations) implementation(nessieProject("nessie-model")) @@ -66,5 +66,5 @@ dependencies { intTestImplementation("org.testcontainers:mysql") intTestRuntimeOnly(libs.docker.java.api) intTestImplementation(project(":nessie-container-spec-helper")) - intTestCompileOnly(libs.immutables.value.annotations) + intTestCompileOnly(project(":nessie-immutables-std")) } diff --git a/gc/gc-repository-jdbc/src/main/java/org/projectnessie/gc/contents/jdbc/JdbcPersistenceSpi.java b/gc/gc-repository-jdbc/src/main/java/org/projectnessie/gc/contents/jdbc/JdbcPersistenceSpi.java index c81acb5637c..ed5512bea0b 100644 --- a/gc/gc-repository-jdbc/src/main/java/org/projectnessie/gc/contents/jdbc/JdbcPersistenceSpi.java +++ b/gc/gc-repository-jdbc/src/main/java/org/projectnessie/gc/contents/jdbc/JdbcPersistenceSpi.java @@ -43,6 +43,7 @@ import com.google.common.base.Preconditions; import com.google.errorprone.annotations.MustBeClosed; +import jakarta.annotation.Nullable; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; @@ -60,7 +61,6 @@ import java.util.function.Function; import java.util.stream.Stream; import java.util.stream.StreamSupport; -import javax.annotation.Nullable; import javax.sql.DataSource; import org.immutables.value.Value; import org.intellij.lang.annotations.Language; @@ -124,7 +124,7 @@ public void startIdentifyLiveContents(UUID liveSetId, Instant created) { @Override public void finishedIdentifyLiveContents( - UUID liveSetId, Instant finished, @Nullable @jakarta.annotation.Nullable Throwable failure) { + UUID liveSetId, Instant finished, @Nullable Throwable failure) { singleStatement( FINISH_IDENTIFY, (conn, stmt) -> { @@ -161,7 +161,7 @@ public LiveContentSet startExpireContents(UUID liveSetId, Instant started) { @Override public LiveContentSet finishedExpireContents( - UUID liveSetId, Instant finished, @Nullable @jakarta.annotation.Nullable Throwable failure) { + UUID liveSetId, Instant finished, @Nullable Throwable failure) { return singleStatement( FINISH_EXPIRE, (conn, stmt) -> { diff --git a/gc/gc-tool-inttest/build.gradle.kts b/gc/gc-tool-inttest/build.gradle.kts index da7aecb9808..b160ab64ee1 100644 --- a/gc/gc-tool-inttest/build.gradle.kts +++ b/gc/gc-tool-inttest/build.gradle.kts @@ -27,8 +27,8 @@ dependencies { implementation(nessieProject("nessie-gc-tool", "shadow")) compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(nessieProject("nessie-immutables-std")) + annotationProcessor(nessieProject("nessie-immutables-std", configuration = "processor")) // hadoop-common brings Jackson in ancient versions, pulling in the Jackson BOM to avoid that implementation(platform(libs.jackson.bom)) diff --git a/gc/gc-tool/build.gradle.kts b/gc/gc-tool/build.gradle.kts index fdd0dc665f2..f2ea0cef4fc 100644 --- a/gc/gc-tool/build.gradle.kts +++ b/gc/gc-tool/build.gradle.kts @@ -34,8 +34,8 @@ dependencies { implementation(nessieProject("nessie-notice")) compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(nessieProject("nessie-immutables-std")) + annotationProcessor(nessieProject("nessie-immutables-std", configuration = "processor")) implementation(platform(libs.iceberg.bom)) implementation("org.apache.iceberg:iceberg-core") @@ -99,8 +99,8 @@ dependencies { testRuntimeOnly(libs.logback.classic) - testCompileOnly(libs.immutables.value.annotations) - testAnnotationProcessor(libs.immutables.value.processor) + testCompileOnly(nessieProject("nessie-immutables-std")) + testAnnotationProcessor(nessieProject("nessie-immutables-std", configuration = "processor")) testCompileOnly("com.fasterxml.jackson.core:jackson-annotations") testCompileOnly(libs.microprofile.openapi) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 4a09faf9cc9..f42e8e2e6f5 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -57,7 +57,6 @@ docker-java-api = { module = "com.github.docker-java:docker-java-api", version = errorprone-annotations = { module = "com.google.errorprone:error_prone_annotations", version.ref = "errorprone" } errorprone-core = { module = "com.google.errorprone:error_prone_core", version.ref = "errorprone" } errorprone-slf4j = { module = "jp.skypencil.errorprone.slf4j:errorprone-slf4j", version.ref = "errorproneSlf4j" } -findbugs-jsr305 = { module = "com.google.code.findbugs:jsr305", version = "3.0.2" } gatling-charts-highcharts = { module = "io.gatling.highcharts:gatling-charts-highcharts", version.ref = "gatling" } google-cloud-bigdataoss-gcs-connector = { module = "com.google.cloud.bigdataoss:gcs-connector", version.ref = "googleCloudBigdataoss" } google-cloud-bigdataoss-gcsio = { module = "com.google.cloud.bigdataoss:gcsio", version.ref = "googleCloudBigdataoss" } @@ -86,8 +85,6 @@ jakarta-servlet-api = { module = "jakarta.servlet:jakarta.servlet-api", version jakarta-validation-api = { module = "jakarta.validation:jakarta.validation-api", version = "3.1.0" } jakarta-ws-rs-api = { module = "jakarta.ws.rs:jakarta.ws.rs-api", version = "4.0.0" } jandex = { module = "org.jboss:jandex", version.ref = "jandex" } -javax-validation-api = { module = "javax.validation:validation-api", version = "2.0.1.Final"} -javax-ws-rs = { module = "javax.ws.rs:javax.ws.rs-api", version = "2.1.1" } jaxb-impl = { module = "com.sun.xml.bind:jaxb-impl", version = "4.0.5" } jersey-bom = { module = "org.glassfish.jersey:jersey-bom", version = "3.1.8" } jetbrains-annotations = { module = "org.jetbrains:annotations", version = "24.1.0" } diff --git a/gradle/projects.main.properties b/gradle/projects.main.properties index d1b27453177..f3205700133 100644 --- a/gradle/projects.main.properties +++ b/gradle/projects.main.properties @@ -24,6 +24,7 @@ nessie-gc-base-tests=gc/gc-base-tests nessie-gc-repository-jdbc=gc/gc-repository-jdbc nessie-gcs-testcontainer=testing/gcs-container nessie-immutables=tools/immutables +nessie-immutables-std=tools/immutables-std nessie-perftest-gatling=perftest/gatling nessie-perftest-simulations=perftest/simulations nessie-jaxrs-testextension=servers/jax-rs-testextension diff --git a/integrations/spark-extensions-basetests/build.gradle.kts b/integrations/spark-extensions-basetests/build.gradle.kts index cbd0c70e3cb..2717200f910 100644 --- a/integrations/spark-extensions-basetests/build.gradle.kts +++ b/integrations/spark-extensions-basetests/build.gradle.kts @@ -24,7 +24,6 @@ dependencies { // javax/jakarta compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.findbugs.jsr305) implementation(nessieProject("nessie-cli-grammar")) compileOnly("org.apache.spark:spark-hive_${sparkScala.scalaMajorVersion}") { @@ -40,11 +39,11 @@ dependencies { implementation(libs.microprofile.openapi) compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) // This lets Immutables discover the right Guava version, otherwise we end with Guava 16 (from // 14), and Immutables uses Objects.toStringHelper instead of MoreObjects.toStringHelper. compileOnly(libs.guava) - annotationProcessor(libs.immutables.value.processor) + compileOnly(nessieProject("nessie-immutables-std")) + annotationProcessor(nessieProject("nessie-immutables-std", configuration = "processor")) implementation(platform(libs.junit.bom)) implementation(libs.bundles.junit.testing) diff --git a/integrations/spark-extensions-basetests/src/main/java/org/projectnessie/spark/extensions/SparkCommitLogEntry.java b/integrations/spark-extensions-basetests/src/main/java/org/projectnessie/spark/extensions/SparkCommitLogEntry.java index 63ac70c771f..dbcf4eb83f2 100644 --- a/integrations/spark-extensions-basetests/src/main/java/org/projectnessie/spark/extensions/SparkCommitLogEntry.java +++ b/integrations/spark-extensions-basetests/src/main/java/org/projectnessie/spark/extensions/SparkCommitLogEntry.java @@ -15,11 +15,11 @@ */ package org.projectnessie.spark.extensions; +import jakarta.annotation.Nullable; import java.sql.Timestamp; import java.util.HashMap; import java.util.Map; import java.util.stream.Collectors; -import javax.annotation.Nullable; import org.immutables.value.Value; import org.projectnessie.model.CommitMeta; diff --git a/servers/quarkus-common/build.gradle.kts b/servers/quarkus-common/build.gradle.kts index bf3552a377d..87da7ae6314 100644 --- a/servers/quarkus-common/build.gradle.kts +++ b/servers/quarkus-common/build.gradle.kts @@ -75,9 +75,8 @@ dependencies { implementation("com.fasterxml.jackson.core:jackson-databind") compileOnly("com.fasterxml.jackson.core:jackson-annotations") - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation("org.jboss.slf4j:slf4j-jboss-logmanager") implementation("io.opentelemetry:opentelemetry-opencensus-shim") // for Google BigTable diff --git a/servers/quarkus-distcache/build.gradle.kts b/servers/quarkus-distcache/build.gradle.kts index 8ea263f2154..1ca209069a7 100644 --- a/servers/quarkus-distcache/build.gradle.kts +++ b/servers/quarkus-distcache/build.gradle.kts @@ -34,8 +34,8 @@ dependencies { implementation(libs.guava) implementation(libs.slf4j.api) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testFixturesApi(platform(libs.junit.bom)) testFixturesApi(libs.bundles.junit.testing) diff --git a/servers/quarkus-server/build.gradle.kts b/servers/quarkus-server/build.gradle.kts index 045d431b90a..97cd203088c 100644 --- a/servers/quarkus-server/build.gradle.kts +++ b/servers/quarkus-server/build.gradle.kts @@ -86,8 +86,8 @@ dependencies { compileOnly(libs.microprofile.openapi) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) openapiSource(project(":nessie-model")) { isTransitive = false } @@ -170,11 +170,6 @@ dependencies { testFixturesApi("org.apache.iceberg:iceberg-core:$versionIceberg:tests") testFixturesApi(libs.hadoop.common) { hadoopExcludes() } - // These two testFixturesRuntimeOnly are here to avoid the 'Failed to index javax...: Class does - // not exist in ClassLoader' warnings - testFixturesRuntimeOnly(libs.javax.validation.api) - testFixturesRuntimeOnly(libs.javax.ws.rs) - testFixturesCompileOnly(libs.microprofile.openapi) testFixturesCompileOnly(project(":nessie-immutables")) diff --git a/servers/quarkus-tests/build.gradle.kts b/servers/quarkus-tests/build.gradle.kts index 6c70b22f32f..24f6ad35205 100644 --- a/servers/quarkus-tests/build.gradle.kts +++ b/servers/quarkus-tests/build.gradle.kts @@ -60,5 +60,5 @@ dependencies { implementation(libs.testcontainers.keycloak) implementation(libs.keycloak.admin.client) - compileOnly(libs.immutables.value.annotations) + compileOnly(project(":nessie-immutables-std")) } diff --git a/servers/services/build.gradle.kts b/servers/services/build.gradle.kts index 9b48f8501cd..0752bd2ab7e 100644 --- a/servers/services/build.gradle.kts +++ b/servers/services/build.gradle.kts @@ -29,9 +29,8 @@ dependencies { implementation(platform(libs.cel.bom)) implementation("org.projectnessie.cel:cel-standalone") - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(libs.guava) compileOnly(libs.jakarta.validation.api) @@ -53,7 +52,6 @@ dependencies { testFixturesApi(libs.bundles.junit.testing) testFixturesCompileOnly(libs.jakarta.annotation.api) - testFixturesCompileOnly(libs.findbugs.jsr305) testRuntimeOnly(project(":nessie-server-store")) diff --git a/servers/services/src/main/java/org/projectnessie/services/spi/ContentService.java b/servers/services/src/main/java/org/projectnessie/services/spi/ContentService.java index 35d25972bc6..68870abc294 100644 --- a/servers/services/src/main/java/org/projectnessie/services/spi/ContentService.java +++ b/servers/services/src/main/java/org/projectnessie/services/spi/ContentService.java @@ -92,7 +92,7 @@ GetMultipleContentsResponse getMultipleContents( regexp = HASH_OR_RELATIVE_COMMIT_SPEC_REGEX, message = HASH_OR_RELATIVE_COMMIT_SPEC_MESSAGE) String hashOnRef, - @Valid @Size @jakarta.validation.constraints.Size(min = 1) List keys, + @Valid @Size(min = 1) List keys, boolean withDocumentation, boolean forWrite) throws NessieNotFoundException; diff --git a/tasks/api/build.gradle.kts b/tasks/api/build.gradle.kts index 74326fa5085..219e8d264d6 100644 --- a/tasks/api/build.gradle.kts +++ b/tasks/api/build.gradle.kts @@ -31,9 +31,8 @@ dependencies { implementation(libs.guava) implementation(libs.slf4j.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(platform(libs.jackson.bom)) implementation("com.fasterxml.jackson.core:jackson-databind") diff --git a/tasks/service/async/build.gradle.kts b/tasks/service/async/build.gradle.kts index bf814679e65..6b10b255891 100644 --- a/tasks/service/async/build.gradle.kts +++ b/tasks/service/async/build.gradle.kts @@ -22,9 +22,8 @@ dependencies { compileOnly(libs.vertx.core) compileOnly(libs.microprofile.contextpropagation.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testImplementation(platform(libs.junit.bom)) testImplementation(libs.bundles.junit.testing) diff --git a/tasks/service/impl/build.gradle.kts b/tasks/service/impl/build.gradle.kts index 19a46c861d6..0fa38478729 100644 --- a/tasks/service/impl/build.gradle.kts +++ b/tasks/service/impl/build.gradle.kts @@ -27,9 +27,8 @@ dependencies { compileOnly(libs.jakarta.annotation.api) compileOnly(libs.jakarta.inject.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) compileOnly(libs.errorprone.annotations) implementation(libs.guava) @@ -52,9 +51,8 @@ dependencies { testCompileOnly(libs.jakarta.validation.api) testCompileOnly(libs.jakarta.annotation.api) - testCompileOnly(libs.immutables.builder) - testCompileOnly(libs.immutables.value.annotations) - testAnnotationProcessor(libs.immutables.value.processor) + testCompileOnly(project(":nessie-immutables-std")) + testAnnotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testImplementation(platform(libs.jackson.bom)) testImplementation("com.fasterxml.jackson.core:jackson-databind") diff --git a/testing/azurite-container/build.gradle.kts b/testing/azurite-container/build.gradle.kts index 12d1daa035c..b259e661a8e 100644 --- a/testing/azurite-container/build.gradle.kts +++ b/testing/azurite-container/build.gradle.kts @@ -21,7 +21,7 @@ publishingHelper { mavenName = "Nessie - Azurite testcontainer" } dependencies { implementation(libs.slf4j.api) implementation(project(":nessie-container-spec-helper")) - compileOnly(libs.immutables.value.annotations) + compileOnly(project(":nessie-immutables-std")) api(platform(libs.testcontainers.bom)) api("org.testcontainers:testcontainers") @@ -30,11 +30,10 @@ dependencies { api("com.azure:azure-identity") compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.findbugs.jsr305) compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) compileOnly(platform(libs.junit.bom)) compileOnly("org.junit.jupiter:junit-jupiter-api") diff --git a/testing/container-spec-helper/build.gradle.kts b/testing/container-spec-helper/build.gradle.kts index 1178de8ec90..7b61f0a4f6b 100644 --- a/testing/container-spec-helper/build.gradle.kts +++ b/testing/container-spec-helper/build.gradle.kts @@ -23,8 +23,8 @@ dependencies { api(platform(libs.testcontainers.bom)) api("org.testcontainers:testcontainers") - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testImplementation(libs.bundles.junit.testing) } diff --git a/testing/gcs-container/build.gradle.kts b/testing/gcs-container/build.gradle.kts index 50843a3800a..9d6727022c3 100644 --- a/testing/gcs-container/build.gradle.kts +++ b/testing/gcs-container/build.gradle.kts @@ -21,7 +21,7 @@ publishingHelper { mavenName = "Nessie - GCS testcontainer" } dependencies { implementation(libs.slf4j.api) implementation(project(":nessie-container-spec-helper")) - compileOnly(libs.immutables.value.annotations) + compileOnly(project(":nessie-immutables-std")) api(platform(libs.testcontainers.bom)) api("org.testcontainers:testcontainers") @@ -29,11 +29,10 @@ dependencies { api("com.google.cloud:google-cloud-storage") compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.findbugs.jsr305) compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) compileOnly(platform(libs.junit.bom)) compileOnly("org.junit.jupiter:junit-jupiter-api") diff --git a/testing/keycloak-container/build.gradle.kts b/testing/keycloak-container/build.gradle.kts index 414c82593b8..a9c170a9fe2 100644 --- a/testing/keycloak-container/build.gradle.kts +++ b/testing/keycloak-container/build.gradle.kts @@ -21,16 +21,15 @@ publishingHelper { mavenName = "Nessie - Keycloak testcontainer" } dependencies { implementation(libs.slf4j.api) implementation(project(":nessie-container-spec-helper")) - compileOnly(libs.immutables.value.annotations) + compileOnly(project(":nessie-immutables-std")) api(libs.keycloak.admin.client) api(libs.testcontainers.keycloak) { exclude(group = "org.slf4j") // uses SLF4J 2.x, we are not ready yet } compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.findbugs.jsr305) compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) } diff --git a/testing/keycloak-container/src/main/java/org/projectnessie/testing/keycloak/CustomKeycloakContainer.java b/testing/keycloak-container/src/main/java/org/projectnessie/testing/keycloak/CustomKeycloakContainer.java index c412450bc6e..5f169524ba1 100644 --- a/testing/keycloak-container/src/main/java/org/projectnessie/testing/keycloak/CustomKeycloakContainer.java +++ b/testing/keycloak-container/src/main/java/org/projectnessie/testing/keycloak/CustomKeycloakContainer.java @@ -19,13 +19,13 @@ import com.google.errorprone.annotations.CanIgnoreReturnValue; import dasniko.testcontainers.keycloak.ExtendableKeycloakContainer; +import jakarta.annotation.Nullable; import java.net.URI; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Map; import java.util.function.Consumer; -import javax.annotation.Nullable; import org.immutables.value.Value; import org.junit.runner.Description; import org.junit.runners.model.Statement; diff --git a/testing/minio-container/build.gradle.kts b/testing/minio-container/build.gradle.kts index c77e96ee119..da164aad7ef 100644 --- a/testing/minio-container/build.gradle.kts +++ b/testing/minio-container/build.gradle.kts @@ -24,7 +24,7 @@ dependencies { implementation(platform(libs.testcontainers.bom)) implementation("org.testcontainers:testcontainers") implementation(project(":nessie-container-spec-helper")) - compileOnly(libs.immutables.value.annotations) + compileOnly(project(":nessie-immutables-std")) implementation(platform(libs.awssdk.bom)) implementation("software.amazon.awssdk:s3") diff --git a/testing/nessie-container/build.gradle.kts b/testing/nessie-container/build.gradle.kts index 2106d0c5221..5ad14fdeedb 100644 --- a/testing/nessie-container/build.gradle.kts +++ b/testing/nessie-container/build.gradle.kts @@ -23,12 +23,11 @@ dependencies { implementation(platform(libs.testcontainers.bom)) implementation("org.testcontainers:testcontainers") implementation(project(":nessie-container-spec-helper")) - compileOnly(libs.immutables.value.annotations) + compileOnly(project(":nessie-immutables-std")) compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.findbugs.jsr305) compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) } diff --git a/testing/nessie-container/src/main/java/org/projectnessie/testing/nessie/NessieContainer.java b/testing/nessie-container/src/main/java/org/projectnessie/testing/nessie/NessieContainer.java index af6f13f1b33..a025e8390da 100644 --- a/testing/nessie-container/src/main/java/org/projectnessie/testing/nessie/NessieContainer.java +++ b/testing/nessie-container/src/main/java/org/projectnessie/testing/nessie/NessieContainer.java @@ -18,6 +18,7 @@ import static java.nio.charset.StandardCharsets.UTF_8; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import jakarta.annotation.Nullable; import java.io.InputStream; import java.net.URI; import java.net.URL; @@ -25,7 +26,6 @@ import java.util.Arrays; import java.util.Map; import java.util.function.Consumer; -import javax.annotation.Nullable; import org.immutables.value.Value; import org.junit.runner.Description; import org.junit.runners.model.Statement; diff --git a/testing/object-storage-mock/build.gradle.kts b/testing/object-storage-mock/build.gradle.kts index 854e6dc5b18..6bd0e50a21e 100644 --- a/testing/object-storage-mock/build.gradle.kts +++ b/testing/object-storage-mock/build.gradle.kts @@ -38,8 +38,8 @@ dependencies { implementation("org.glassfish.jersey.media:jersey-media-json-jackson") compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(libs.guava) @@ -69,8 +69,8 @@ dependencies { testImplementation(platform(libs.google.cloud.storage.bom)) testImplementation("com.google.cloud:google-cloud-storage") - testCompileOnly(libs.immutables.value.annotations) - testAnnotationProcessor(libs.immutables.value.processor) + testCompileOnly(project(":nessie-immutables-std")) + testAnnotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testCompileOnly(libs.microprofile.openapi) diff --git a/testing/object-storage-mock/src/main/java/org/projectnessie/objectstoragemock/gcs/StorageObject.java b/testing/object-storage-mock/src/main/java/org/projectnessie/objectstoragemock/gcs/StorageObject.java index 988b432f362..7c0df8a8115 100644 --- a/testing/object-storage-mock/src/main/java/org/projectnessie/objectstoragemock/gcs/StorageObject.java +++ b/testing/object-storage-mock/src/main/java/org/projectnessie/objectstoragemock/gcs/StorageObject.java @@ -31,7 +31,8 @@ @JsonSerialize(as = ImmutableStorageObject.class) @JsonDeserialize(as = ImmutableStorageObject.class) @Value.Immutable -// See https://cloud.google.com/storage/docs/json_api/v1/objects#resource +@Value.Style( + jakarta = true) // See https://cloud.google.com/storage/docs/json_api/v1/objects#resource public interface StorageObject { default String kind() { return "storage#object"; diff --git a/testing/trino-container/build.gradle.kts b/testing/trino-container/build.gradle.kts index f49c98350d4..97d9d25d3a9 100644 --- a/testing/trino-container/build.gradle.kts +++ b/testing/trino-container/build.gradle.kts @@ -31,7 +31,7 @@ dependencies { implementation(libs.okhttp3) compileOnly(libs.errorprone.annotations) - compileOnly(libs.immutables.value.annotations) + compileOnly(project(":nessie-immutables-std")) intTestImplementation(libs.bundles.junit.testing) intTestRuntimeOnly(libs.logback.classic) diff --git a/tools/content-generator/build.gradle.kts b/tools/content-generator/build.gradle.kts index 3f9e1edca2a..9c176d04fb4 100644 --- a/tools/content-generator/build.gradle.kts +++ b/tools/content-generator/build.gradle.kts @@ -42,9 +42,8 @@ dependencies { implementation("com.fasterxml.jackson.core:jackson-annotations") implementation("com.fasterxml.jackson.core:jackson-databind") - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testFixturesImplementation(project(":nessie-client")) diff --git a/tools/content-generator/src/main/java/org/projectnessie/tools/contentgenerator/keygen/KeyGenerator.java b/tools/content-generator/src/main/java/org/projectnessie/tools/contentgenerator/keygen/KeyGenerator.java index ed71f26dc96..5e0c53a3af6 100644 --- a/tools/content-generator/src/main/java/org/projectnessie/tools/contentgenerator/keygen/KeyGenerator.java +++ b/tools/content-generator/src/main/java/org/projectnessie/tools/contentgenerator/keygen/KeyGenerator.java @@ -15,9 +15,9 @@ */ package org.projectnessie.tools.contentgenerator.keygen; +import jakarta.annotation.Nonnull; import java.util.List; import java.util.Random; -import javax.annotation.Nonnull; import org.immutables.value.Value; public class KeyGenerator { diff --git a/tools/immutables-std/build.gradle.kts b/tools/immutables-std/build.gradle.kts new file mode 100644 index 00000000000..b68034862b5 --- /dev/null +++ b/tools/immutables-std/build.gradle.kts @@ -0,0 +1,31 @@ +/* + * Copyright (C) 2024 Dremio + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +plugins { id("nessie-conventions-client") } + +publishingHelper { mavenName = "Nessie - Build tool - Immutables without javax annotations" } + +val processor by configurations.creating + +processor.extendsFrom(configurations.api.get()) + +dependencies { + api(libs.immutables.builder) + api(libs.immutables.value.annotations) + + processor(libs.immutables.value.processor) + processor(project) +} diff --git a/tools/immutables-std/src/main/resources/META-INF/extensions/org.immutables.inhibit-classpath b/tools/immutables-std/src/main/resources/META-INF/extensions/org.immutables.inhibit-classpath new file mode 100644 index 00000000000..0b364869f21 --- /dev/null +++ b/tools/immutables-std/src/main/resources/META-INF/extensions/org.immutables.inhibit-classpath @@ -0,0 +1,6 @@ +javax.annotation.Nullable +javax.annotation.CheckReturnValue; +javax.annotation.Nullable; +javax.annotation.ParametersAreNonnullByDefault; +javax.annotation.concurrent.Immutable; +javax.annotation.concurrent.NotThreadSafe; diff --git a/tools/immutables/src/main/resources/META-INF/extensions/org.immutables.inhibit-classpath b/tools/immutables/src/main/resources/META-INF/extensions/org.immutables.inhibit-classpath new file mode 100644 index 00000000000..0b364869f21 --- /dev/null +++ b/tools/immutables/src/main/resources/META-INF/extensions/org.immutables.inhibit-classpath @@ -0,0 +1,6 @@ +javax.annotation.Nullable +javax.annotation.CheckReturnValue; +javax.annotation.Nullable; +javax.annotation.ParametersAreNonnullByDefault; +javax.annotation.concurrent.Immutable; +javax.annotation.concurrent.NotThreadSafe; diff --git a/tools/server-admin/build.gradle.kts b/tools/server-admin/build.gradle.kts index a86c8235a83..b57b082ca46 100644 --- a/tools/server-admin/build.gradle.kts +++ b/tools/server-admin/build.gradle.kts @@ -80,9 +80,8 @@ dependencies { compileOnly(libs.microprofile.openapi) compileOnly("com.fasterxml.jackson.core:jackson-annotations") - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testFixturesApi(project(":nessie-quarkus-tests")) testFixturesApi(project(":nessie-versioned-tests")) diff --git a/tools/storage/uri/build.gradle.kts b/tools/storage/uri/build.gradle.kts index 09def63054c..f47086d3e4e 100644 --- a/tools/storage/uri/build.gradle.kts +++ b/tools/storage/uri/build.gradle.kts @@ -18,6 +18,7 @@ plugins { id("nessie-conventions-server") } dependencies { implementation(libs.guava) + compileOnly(libs.jakarta.annotation.api) testImplementation(libs.assertj.core) } diff --git a/tools/storage/uri/src/main/java/org/projectnessie/storage/uri/StorageUri.java b/tools/storage/uri/src/main/java/org/projectnessie/storage/uri/StorageUri.java index 21b080eb5b5..372e3764e77 100644 --- a/tools/storage/uri/src/main/java/org/projectnessie/storage/uri/StorageUri.java +++ b/tools/storage/uri/src/main/java/org/projectnessie/storage/uri/StorageUri.java @@ -16,12 +16,12 @@ package org.projectnessie.storage.uri; import com.google.common.base.Preconditions; +import jakarta.annotation.Nonnull; +import jakarta.annotation.Nullable; import java.net.URI; import java.util.Comparator; import java.util.Locale; import java.util.Objects; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; /** * A utility class for working with file storage locations to be used instead of {@link URI} since diff --git a/versioned/spi/build.gradle.kts b/versioned/spi/build.gradle.kts index 2fa34b75a13..d51a4bbed0e 100644 --- a/versioned/spi/build.gradle.kts +++ b/versioned/spi/build.gradle.kts @@ -22,9 +22,8 @@ dependencies { implementation(project(":nessie-model")) api(project(path = ":nessie-protobuf-relocated", configuration = "shadow")) implementation("com.fasterxml.jackson.core:jackson-databind") - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) compileOnly(libs.microprofile.openapi) compileOnly(platform(libs.opentelemetry.instrumentation.bom.alpha)) @@ -47,8 +46,8 @@ dependencies { testCompileOnly("com.fasterxml.jackson.core:jackson-annotations") testCompileOnly(libs.microprofile.openapi) - testCompileOnly(libs.immutables.value.annotations) - testAnnotationProcessor(libs.immutables.value.processor) + testCompileOnly(project(":nessie-immutables-std")) + testAnnotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testCompileOnly(libs.jakarta.ws.rs.api) testCompileOnly(libs.jakarta.validation.api) testCompileOnly(libs.jakarta.annotation.api) diff --git a/versioned/storage/batching/build.gradle.kts b/versioned/storage/batching/build.gradle.kts index c551d04eaf8..b51cc4f5cd0 100644 --- a/versioned/storage/batching/build.gradle.kts +++ b/versioned/storage/batching/build.gradle.kts @@ -31,9 +31,8 @@ dependencies { compileOnly(project(":nessie-versioned-storage-testextension")) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testImplementation(project(":nessie-versioned-storage-common-tests")) testImplementation(project(":nessie-versioned-storage-inmemory")) diff --git a/versioned/storage/batching/src/main/java/org/projectnessie/versioned/storage/batching/BatchingPersistImpl.java b/versioned/storage/batching/src/main/java/org/projectnessie/versioned/storage/batching/BatchingPersistImpl.java index 344feac4847..f0381db0e75 100644 --- a/versioned/storage/batching/src/main/java/org/projectnessie/versioned/storage/batching/BatchingPersistImpl.java +++ b/versioned/storage/batching/src/main/java/org/projectnessie/versioned/storage/batching/BatchingPersistImpl.java @@ -116,8 +116,7 @@ private void maybeFlush() { } @Override - public boolean storeObj( - @Nonnull @javax.annotation.Nonnull Obj obj, boolean ignoreSoftSizeRestrictions) + public boolean storeObj(@Nonnull Obj obj, boolean ignoreSoftSizeRestrictions) throws ObjTooLargeException { if (!ignoreSoftSizeRestrictions) { verifySoftRestrictions(obj); @@ -133,7 +132,7 @@ public boolean storeObj( } @Override - public void upsertObj(@Nonnull @javax.annotation.Nonnull Obj obj) throws ObjTooLargeException { + public void upsertObj(@Nonnull Obj obj) throws ObjTooLargeException { verifySoftRestrictions(obj); writeLock(); try { @@ -146,9 +145,7 @@ public void upsertObj(@Nonnull @javax.annotation.Nonnull Obj obj) throws ObjTooL @Override @Nonnull - @javax.annotation.Nonnull - public boolean[] storeObjs(@Nonnull @javax.annotation.Nonnull Obj[] objs) - throws ObjTooLargeException { + public boolean[] storeObjs(@Nonnull Obj[] objs) throws ObjTooLargeException { writeLock(); try { for (Obj obj : objs) { @@ -165,8 +162,7 @@ public boolean[] storeObjs(@Nonnull @javax.annotation.Nonnull Obj[] objs) } @Override - public void upsertObjs(@Nonnull @javax.annotation.Nonnull Obj[] objs) - throws ObjTooLargeException { + public void upsertObjs(@Nonnull Obj[] objs) throws ObjTooLargeException { writeLock(); try { for (Obj obj : objs) { @@ -189,10 +185,8 @@ private Obj pendingObj(ObjId id) { @Override @Nonnull - @javax.annotation.Nonnull public T fetchTypedObj( - @Nonnull @javax.annotation.Nonnull ObjId id, ObjType type, @Nonnull Class typeClass) - throws ObjNotFoundException { + @Nonnull ObjId id, ObjType type, @Nonnull Class typeClass) throws ObjNotFoundException { readLock(); try { Obj r = pendingObj(id); @@ -212,9 +206,7 @@ public T fetchTypedObj( @Override @Nonnull - @javax.annotation.Nonnull - public ObjType fetchObjType(@Nonnull @javax.annotation.Nonnull ObjId id) - throws ObjNotFoundException { + public ObjType fetchObjType(@Nonnull ObjId id) throws ObjNotFoundException { readLock(); try { Obj r = pendingObj(id); @@ -229,7 +221,6 @@ public ObjType fetchObjType(@Nonnull @javax.annotation.Nonnull ObjId id) @Override @Nonnull - @javax.annotation.Nonnull public T[] fetchTypedObjs( @Nonnull ObjId[] ids, ObjType type, @Nonnull Class typeClass) throws ObjNotFoundException { @@ -285,7 +276,6 @@ private static T[] fetchObjsPost(T[] backendResult, T[] r) { @Override @Nonnull - @javax.annotation.Nonnull public T[] fetchTypedObjsIfExist( @Nonnull ObjId[] ids, ObjType type, @Nonnull Class typeClass) { @@ -304,7 +294,7 @@ public T[] fetchTypedObjsIfExist( } @Override - public void deleteObj(@Nonnull @javax.annotation.Nonnull ObjId id) { + public void deleteObj(@Nonnull ObjId id) { writeLock(); try { delegate().deleteObj(id); @@ -316,7 +306,7 @@ public void deleteObj(@Nonnull @javax.annotation.Nonnull ObjId id) { } @Override - public void deleteObjs(@Nonnull @javax.annotation.Nonnull ObjId[] ids) { + public void deleteObjs(@Nonnull ObjId[] ids) { writeLock(); try { for (ObjId id : ids) { @@ -369,46 +359,38 @@ public int effectiveIncrementalIndexSizeLimit() { @Override @Nonnull - @javax.annotation.Nonnull public String name() { return delegate().name(); } @Override @Nonnull - @javax.annotation.Nonnull public StoreConfig config() { return delegate().config(); } @Override @Nonnull - @javax.annotation.Nonnull - public Reference addReference(@Nonnull @javax.annotation.Nonnull Reference reference) - throws RefAlreadyExistsException { + public Reference addReference(@Nonnull Reference reference) throws RefAlreadyExistsException { return delegate().addReference(reference); } @Override @Nonnull - @javax.annotation.Nonnull - public Reference markReferenceAsDeleted(@Nonnull @javax.annotation.Nonnull Reference reference) + public Reference markReferenceAsDeleted(@Nonnull Reference reference) throws RefNotFoundException, RefConditionFailedException { return delegate().markReferenceAsDeleted(reference); } @Override - public void purgeReference(@Nonnull @javax.annotation.Nonnull Reference reference) + public void purgeReference(@Nonnull Reference reference) throws RefNotFoundException, RefConditionFailedException { delegate().purgeReference(reference); } @Override @Nonnull - @javax.annotation.Nonnull - public Reference updateReferencePointer( - @Nonnull @javax.annotation.Nonnull Reference reference, - @Nonnull @javax.annotation.Nonnull ObjId newPointer) + public Reference updateReferencePointer(@Nonnull Reference reference, @Nonnull ObjId newPointer) throws RefNotFoundException, RefConditionFailedException { return delegate().updateReferencePointer(reference, newPointer); } @@ -416,36 +398,32 @@ public Reference updateReferencePointer( @Override @Nullable @javax.annotation.Nullable - public Reference fetchReference(@Nonnull @javax.annotation.Nonnull String name) { + public Reference fetchReference(@Nonnull String name) { return delegate().fetchReference(name); } @Override @Nullable @javax.annotation.Nullable - public Reference fetchReferenceForUpdate(@Nonnull @javax.annotation.Nonnull String name) { + public Reference fetchReferenceForUpdate(@Nonnull String name) { return delegate().fetchReferenceForUpdate(name); } @Override @Nonnull - @javax.annotation.Nonnull - public Reference[] fetchReferences(@Nonnull @javax.annotation.Nonnull String[] names) { + public Reference[] fetchReferences(@Nonnull String[] names) { return delegate().fetchReferences(names); } @Override @Nonnull - @javax.annotation.Nonnull - public Reference[] fetchReferencesForUpdate(@Nonnull @javax.annotation.Nonnull String[] names) { + public Reference[] fetchReferencesForUpdate(@Nonnull String[] names) { return delegate().fetchReferencesForUpdate(names); } @Override @Nonnull - @javax.annotation.Nonnull - public CloseableIterator scanAllObjects( - @Nonnull @javax.annotation.Nonnull Set returnedObjTypes) { + public CloseableIterator scanAllObjects(@Nonnull Set returnedObjTypes) { throw new UnsupportedOperationException(); } diff --git a/versioned/storage/bigtable-tests/build.gradle.kts b/versioned/storage/bigtable-tests/build.gradle.kts index 9fbc916b8f5..b7b5d3ca306 100644 --- a/versioned/storage/bigtable-tests/build.gradle.kts +++ b/versioned/storage/bigtable-tests/build.gradle.kts @@ -25,7 +25,7 @@ dependencies { implementation(project(":nessie-versioned-storage-common")) implementation(project(":nessie-versioned-storage-testextension")) implementation(project(":nessie-container-spec-helper")) - compileOnly(libs.immutables.value.annotations) + compileOnly(project(":nessie-immutables-std")) implementation(libs.slf4j.api) diff --git a/versioned/storage/bigtable/build.gradle.kts b/versioned/storage/bigtable/build.gradle.kts index fc31817c815..0b820566a70 100644 --- a/versioned/storage/bigtable/build.gradle.kts +++ b/versioned/storage/bigtable/build.gradle.kts @@ -36,9 +36,8 @@ dependencies { implementation(libs.guava) implementation(libs.slf4j.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) intTestImplementation(project(":nessie-versioned-storage-bigtable-tests")) intTestImplementation(project(":nessie-versioned-storage-common-tests")) diff --git a/versioned/storage/cache/build.gradle.kts b/versioned/storage/cache/build.gradle.kts index a3f2f27a099..24abec47768 100644 --- a/versioned/storage/cache/build.gradle.kts +++ b/versioned/storage/cache/build.gradle.kts @@ -33,17 +33,15 @@ dependencies { implementation(libs.caffeine) implementation(libs.micrometer.core) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testImplementation(project(":nessie-versioned-storage-common-tests")) testImplementation(project(":nessie-versioned-storage-testextension")) testImplementation(project(":nessie-versioned-storage-inmemory")) - testCompileOnly(libs.immutables.builder) - testCompileOnly(libs.immutables.value.annotations) - testAnnotationProcessor(libs.immutables.value.processor) + testCompileOnly(project(":nessie-immutables-std")) + testAnnotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testImplementation(platform(libs.jackson.bom)) testImplementation("com.fasterxml.jackson.core:jackson-annotations") diff --git a/versioned/storage/cassandra-tests/build.gradle.kts b/versioned/storage/cassandra-tests/build.gradle.kts index 7378a8baf81..71666c78291 100644 --- a/versioned/storage/cassandra-tests/build.gradle.kts +++ b/versioned/storage/cassandra-tests/build.gradle.kts @@ -28,9 +28,8 @@ dependencies { compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(platform(libs.cassandra.driver.bom)) implementation("com.datastax.oss:java-driver-core") diff --git a/versioned/storage/cassandra/build.gradle.kts b/versioned/storage/cassandra/build.gradle.kts index d6bbfb7d1cb..28c28de571e 100644 --- a/versioned/storage/cassandra/build.gradle.kts +++ b/versioned/storage/cassandra/build.gradle.kts @@ -41,9 +41,8 @@ dependencies { exclude("com.github.spotbugs", "spotbugs-annotations") } - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) intTestImplementation(project(":nessie-versioned-storage-cassandra-tests")) intTestImplementation(project(":nessie-versioned-storage-common-tests")) diff --git a/versioned/storage/common-serialize/build.gradle.kts b/versioned/storage/common-serialize/build.gradle.kts index 3aabf67cada..06c86d5e5d1 100644 --- a/versioned/storage/common-serialize/build.gradle.kts +++ b/versioned/storage/common-serialize/build.gradle.kts @@ -34,9 +34,8 @@ dependencies { testImplementation(project(":nessie-versioned-storage-common-tests")) - testCompileOnly(libs.immutables.builder) - testCompileOnly(libs.immutables.value.annotations) - testAnnotationProcessor(libs.immutables.value.processor) + testCompileOnly(project(":nessie-immutables-std")) + testAnnotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testImplementation(platform(libs.junit.bom)) testImplementation(libs.bundles.junit.testing) diff --git a/versioned/storage/common-tests/build.gradle.kts b/versioned/storage/common-tests/build.gradle.kts index 9ed68e0a046..6e158bbec97 100644 --- a/versioned/storage/common-tests/build.gradle.kts +++ b/versioned/storage/common-tests/build.gradle.kts @@ -38,9 +38,8 @@ dependencies { implementation(libs.logback.classic) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) compileOnly(libs.microprofile.openapi) implementation(platform(libs.jackson.bom)) diff --git a/versioned/storage/common/build.gradle.kts b/versioned/storage/common/build.gradle.kts index 8f03e0dfe13..41055eac620 100644 --- a/versioned/storage/common/build.gradle.kts +++ b/versioned/storage/common/build.gradle.kts @@ -37,9 +37,8 @@ dependencies { implementation(project(path = ":nessie-protobuf-relocated", configuration = "shadow")) implementation(libs.slf4j.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(platform(libs.jackson.bom)) implementation("com.fasterxml.jackson.core:jackson-databind") diff --git a/versioned/storage/dynamodb-tests/build.gradle.kts b/versioned/storage/dynamodb-tests/build.gradle.kts index c6bc8419e08..aa55fb4be99 100644 --- a/versioned/storage/dynamodb-tests/build.gradle.kts +++ b/versioned/storage/dynamodb-tests/build.gradle.kts @@ -28,9 +28,8 @@ dependencies { compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(platform(libs.awssdk.bom)) implementation("software.amazon.awssdk:dynamodb") diff --git a/versioned/storage/dynamodb/build.gradle.kts b/versioned/storage/dynamodb/build.gradle.kts index 4537d697560..0fc07267eb0 100644 --- a/versioned/storage/dynamodb/build.gradle.kts +++ b/versioned/storage/dynamodb/build.gradle.kts @@ -39,9 +39,8 @@ dependencies { implementation("software.amazon.awssdk:dynamodb") implementation("software.amazon.awssdk:apache-client") - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) intTestImplementation(project(":nessie-versioned-storage-dynamodb-tests")) intTestImplementation(project(":nessie-versioned-storage-common-tests")) diff --git a/versioned/storage/inmemory-tests/build.gradle.kts b/versioned/storage/inmemory-tests/build.gradle.kts index bae926b0ff9..0c6352f26a1 100644 --- a/versioned/storage/inmemory-tests/build.gradle.kts +++ b/versioned/storage/inmemory-tests/build.gradle.kts @@ -25,7 +25,6 @@ dependencies { implementation(project(":nessie-versioned-storage-common")) implementation(project(":nessie-versioned-storage-testextension")) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) } diff --git a/versioned/storage/inmemory/build.gradle.kts b/versioned/storage/inmemory/build.gradle.kts index 6ada4f984a2..d35cb1973e1 100644 --- a/versioned/storage/inmemory/build.gradle.kts +++ b/versioned/storage/inmemory/build.gradle.kts @@ -30,9 +30,8 @@ dependencies { compileOnly(libs.errorprone.annotations) implementation(libs.guava) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testImplementation(project(":nessie-versioned-storage-inmemory-tests")) testImplementation(project(":nessie-versioned-storage-common-tests")) diff --git a/versioned/storage/jdbc-tests/build.gradle.kts b/versioned/storage/jdbc-tests/build.gradle.kts index 9e533fc3ae6..ec38985eef4 100644 --- a/versioned/storage/jdbc-tests/build.gradle.kts +++ b/versioned/storage/jdbc-tests/build.gradle.kts @@ -28,9 +28,8 @@ dependencies { compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(libs.agroal.pool) diff --git a/versioned/storage/jdbc/build.gradle.kts b/versioned/storage/jdbc/build.gradle.kts index ad0b5f11e7b..61c4038d065 100644 --- a/versioned/storage/jdbc/build.gradle.kts +++ b/versioned/storage/jdbc/build.gradle.kts @@ -36,9 +36,8 @@ dependencies { implementation(libs.agrona) implementation(libs.slf4j.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testFixturesApi(project(":nessie-versioned-storage-jdbc-tests")) testFixturesApi(project(":nessie-versioned-storage-common")) diff --git a/versioned/storage/mongodb-tests/build.gradle.kts b/versioned/storage/mongodb-tests/build.gradle.kts index aec2f58b850..742446a828a 100644 --- a/versioned/storage/mongodb-tests/build.gradle.kts +++ b/versioned/storage/mongodb-tests/build.gradle.kts @@ -28,9 +28,8 @@ dependencies { implementation(libs.slf4j.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(libs.mongodb.driver.sync) diff --git a/versioned/storage/mongodb/build.gradle.kts b/versioned/storage/mongodb/build.gradle.kts index 33f453f70bd..22d2245fdf7 100644 --- a/versioned/storage/mongodb/build.gradle.kts +++ b/versioned/storage/mongodb/build.gradle.kts @@ -37,9 +37,8 @@ dependencies { implementation(libs.mongodb.driver.sync) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) intTestImplementation(project(":nessie-versioned-storage-mongodb-tests")) intTestImplementation(project(":nessie-versioned-storage-common-tests")) diff --git a/versioned/storage/rocksdb/build.gradle.kts b/versioned/storage/rocksdb/build.gradle.kts index f1bd295495e..a206018677a 100644 --- a/versioned/storage/rocksdb/build.gradle.kts +++ b/versioned/storage/rocksdb/build.gradle.kts @@ -32,9 +32,8 @@ dependencies { implementation(libs.rocksdb.jni) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testImplementation(project(":nessie-versioned-storage-rocksdb-tests")) testImplementation(project(":nessie-versioned-storage-common-tests")) diff --git a/versioned/storage/store/build.gradle.kts b/versioned/storage/store/build.gradle.kts index c5e709feebc..559b371e188 100644 --- a/versioned/storage/store/build.gradle.kts +++ b/versioned/storage/store/build.gradle.kts @@ -40,9 +40,8 @@ dependencies { compileOnly("com.fasterxml.jackson.core:jackson-annotations") implementation("com.fasterxml.jackson.core:jackson-databind") - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) compileOnly(platform(libs.jackson.bom)) compileOnly("com.fasterxml.jackson.core:jackson-annotations") diff --git a/versioned/storage/store/src/main/java/org/projectnessie/versioned/storage/versionstore/VersionStoreImpl.java b/versioned/storage/store/src/main/java/org/projectnessie/versioned/storage/versionstore/VersionStoreImpl.java index cf95e6bdb9f..94551c88ba2 100644 --- a/versioned/storage/store/src/main/java/org/projectnessie/versioned/storage/versionstore/VersionStoreImpl.java +++ b/versioned/storage/store/src/main/java/org/projectnessie/versioned/storage/versionstore/VersionStoreImpl.java @@ -735,7 +735,6 @@ public PaginationIterator getKeys( // filters out non-content keys and non-live CommitOps. Iterator keyAndOp = new AbstractIterator<>() { - @CheckForNull @Override protected ContentKeyWithCommitOp computeNext() { while (true) { diff --git a/versioned/storage/testextension/build.gradle.kts b/versioned/storage/testextension/build.gradle.kts index ff77b697531..c703923d7b2 100644 --- a/versioned/storage/testextension/build.gradle.kts +++ b/versioned/storage/testextension/build.gradle.kts @@ -32,9 +32,8 @@ dependencies { compileOnly(libs.errorprone.annotations) implementation(libs.guava) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(platform(libs.junit.bom)) implementation(libs.bundles.junit.testing) diff --git a/versioned/tests/build.gradle.kts b/versioned/tests/build.gradle.kts index 5bf7b7572ee..420cc5a8535 100644 --- a/versioned/tests/build.gradle.kts +++ b/versioned/tests/build.gradle.kts @@ -23,8 +23,8 @@ dependencies { implementation(project(":nessie-versioned-spi")) implementation(libs.guava) implementation(libs.slf4j.api) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) compileOnly(platform(libs.jackson.bom)) compileOnly("com.fasterxml.jackson.core:jackson-annotations") diff --git a/versioned/transfer/build.gradle.kts b/versioned/transfer/build.gradle.kts index 47f0171af70..d773facbd9c 100644 --- a/versioned/transfer/build.gradle.kts +++ b/versioned/transfer/build.gradle.kts @@ -48,9 +48,8 @@ dependencies { compileOnly(libs.jakarta.validation.api) compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testFixturesImplementation(platform(libs.jackson.bom)) testFixturesImplementation("com.fasterxml.jackson.core:jackson-databind") From cedd643c43723b0a004f7e6c702d7c3cf9d70cae Mon Sep 17 00:00:00 2001 From: Robert Stupp Date: Wed, 14 Aug 2024 10:09:28 +0200 Subject: [PATCH 2/2] u rest-services --- servers/quarkus-config/build.gradle.kts | 5 ++--- .../services/rest/RestContentResource.java | 3 +++ .../services/rest/RestDiffResource.java | 2 ++ .../services/rest/RestNamespaceResource.java | 6 ++++++ .../services/rest/RestTreeResource.java | 12 ++++++++++++ .../services/rest/RestV2ConfigResource.java | 2 ++ .../services/rest/RestV2TreeResource.java | 16 ++++++++++++++++ .../storage/cassandra2-tests/build.gradle.kts | 5 ++--- versioned/storage/cassandra2/build.gradle.kts | 5 ++--- .../storage/dynamodb2-tests/build.gradle.kts | 5 ++--- versioned/storage/dynamodb2/build.gradle.kts | 5 ++--- versioned/storage/jdbc2-tests/build.gradle.kts | 5 ++--- versioned/storage/jdbc2/build.gradle.kts | 5 ++--- .../storage/mongodb2-tests/build.gradle.kts | 5 ++--- versioned/storage/mongodb2/build.gradle.kts | 5 ++--- 15 files changed, 59 insertions(+), 27 deletions(-) diff --git a/servers/quarkus-config/build.gradle.kts b/servers/quarkus-config/build.gradle.kts index d08961c7a53..cf14ac2e0b8 100644 --- a/servers/quarkus-config/build.gradle.kts +++ b/servers/quarkus-config/build.gradle.kts @@ -28,9 +28,8 @@ dependencies { compileOnly("io.quarkus:quarkus-core") compileOnly("io.smallrye.config:smallrye-config-core") - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(libs.guava) diff --git a/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestContentResource.java b/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestContentResource.java index d35d2e12942..36658043195 100644 --- a/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestContentResource.java +++ b/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestContentResource.java @@ -19,6 +19,7 @@ import jakarta.enterprise.context.RequestScoped; import jakarta.inject.Inject; import jakarta.ws.rs.Path; +import org.eclipse.microprofile.openapi.annotations.Operation; import org.projectnessie.api.v1.http.HttpContentApi; import org.projectnessie.error.NessieNotFoundException; import org.projectnessie.model.Content; @@ -55,6 +56,7 @@ private ContentService resource() { @Override @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.getContent") public Content getContent(ContentKey key, String ref, String hashOnRef) throws NessieNotFoundException { return resource().getContent(key, ref, hashOnRef, false, false).getContent(); @@ -62,6 +64,7 @@ public Content getContent(ContentKey key, String ref, String hashOnRef) @Override @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.getMultipleContents") public GetMultipleContentsResponse getMultipleContents( String ref, String hashOnRef, GetMultipleContentsRequest request) throws NessieNotFoundException { diff --git a/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestDiffResource.java b/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestDiffResource.java index 7fd9fab9d9b..6250f1e1d04 100644 --- a/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestDiffResource.java +++ b/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestDiffResource.java @@ -21,6 +21,7 @@ import jakarta.enterprise.context.RequestScoped; import jakarta.inject.Inject; import jakarta.ws.rs.Path; +import org.eclipse.microprofile.openapi.annotations.Operation; import org.projectnessie.api.v1.http.HttpDiffApi; import org.projectnessie.api.v1.params.DiffParams; import org.projectnessie.error.NessieNotFoundException; @@ -58,6 +59,7 @@ private DiffService resource() { @Override @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.getDiff") public DiffResponse getDiff(DiffParams params) throws NessieNotFoundException { ImmutableDiffResponse.Builder builder = DiffResponse.builder(); return resource() diff --git a/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestNamespaceResource.java b/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestNamespaceResource.java index d96e267b8e6..bae9f21b6fc 100644 --- a/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestNamespaceResource.java +++ b/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestNamespaceResource.java @@ -20,6 +20,7 @@ import jakarta.inject.Inject; import jakarta.validation.constraints.NotNull; import jakarta.ws.rs.Path; +import org.eclipse.microprofile.openapi.annotations.Operation; import org.projectnessie.api.v1.http.HttpNamespaceApi; import org.projectnessie.api.v1.params.MultipleNamespacesParams; import org.projectnessie.api.v1.params.NamespaceParams; @@ -60,6 +61,7 @@ private NamespaceService resource() { @Override @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.createNamespace") public Namespace createNamespace(NamespaceParams params, Namespace namespace) throws NessieNamespaceAlreadyExistsException, NessieReferenceNotFoundException { return resource().createNamespace(params.getRefName(), namespace); @@ -67,6 +69,7 @@ public Namespace createNamespace(NamespaceParams params, Namespace namespace) @Override @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.deleteNamespace") public void deleteNamespace(@NotNull NamespaceParams params) throws NessieReferenceNotFoundException, NessieNamespaceNotEmptyException, @@ -76,6 +79,7 @@ public void deleteNamespace(@NotNull NamespaceParams params) @Override @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.getNamespace") public Namespace getNamespace(@NotNull NamespaceParams params) throws NessieNamespaceNotFoundException, NessieReferenceNotFoundException { return resource() @@ -84,6 +88,7 @@ public Namespace getNamespace(@NotNull NamespaceParams params) @Override @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.getNamespaces") public GetNamespacesResponse getNamespaces(@NotNull MultipleNamespacesParams params) throws NessieReferenceNotFoundException { return resource() @@ -92,6 +97,7 @@ public GetNamespacesResponse getNamespaces(@NotNull MultipleNamespacesParams par @Override @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.updateProperties") public void updateProperties(NamespaceParams params, NamespaceUpdate namespaceUpdate) throws NessieNamespaceNotFoundException, NessieReferenceNotFoundException { resource() diff --git a/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestTreeResource.java b/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestTreeResource.java index dfb4a51618c..97f74d7c030 100644 --- a/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestTreeResource.java +++ b/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestTreeResource.java @@ -23,6 +23,7 @@ import jakarta.enterprise.context.RequestScoped; import jakarta.inject.Inject; import jakarta.ws.rs.Path; +import org.eclipse.microprofile.openapi.annotations.Operation; import org.projectnessie.api.v1.http.HttpTreeApi; import org.projectnessie.api.v1.params.BaseMergeTransplant; import org.projectnessie.api.v1.params.CommitLogParams; @@ -75,6 +76,7 @@ private TreeService resource() { } @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.getAllReferences") @Override public ReferencesResponse getAllReferences(ReferencesParams params) { Integer maxRecords = params.maxRecords(); @@ -105,12 +107,14 @@ public void hasMore(String pagingToken) { } @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.getDefaultBranch") @Override public Branch getDefaultBranch() throws NessieNotFoundException { return resource().getDefaultBranch(); } @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.createReference") @Override public Reference createReference(String sourceRefName, Reference reference) throws NessieNotFoundException, NessieConflictException { @@ -120,12 +124,14 @@ public Reference createReference(String sourceRefName, Reference reference) } @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.getReferenceByName") @Override public Reference getReferenceByName(GetReferenceParams params) throws NessieNotFoundException { return resource().getReferenceByName(params.getRefName(), params.fetchOption()); } @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.getEntries") @Override public EntriesResponse getEntries(String refName, EntriesParams params) throws NessieNotFoundException { @@ -164,6 +170,7 @@ public void hasMore(String pagingToken) { } @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.getCommitLog") @Override public LogResponse getCommitLog(String ref, CommitLogParams params) throws NessieNotFoundException { @@ -198,6 +205,7 @@ public void hasMore(String pagingToken) { } @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.assignReference") @Override public void assignReference( Reference.ReferenceType referenceType, @@ -209,6 +217,7 @@ public void assignReference( } @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.deleteReference") @Override public void deleteReference( Reference.ReferenceType referenceType, String referenceName, String expectedHash) @@ -217,6 +226,7 @@ public void deleteReference( } @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.transplantCommitsIntoBranch") @Override public MergeResponse transplantCommitsIntoBranch( String branchName, String expectedHash, String message, Transplant transplant) @@ -237,6 +247,7 @@ public MergeResponse transplantCommitsIntoBranch( } @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.mergeRefIntoBranch") @Override public MergeResponse mergeRefIntoBranch(String branchName, String expectedHash, Merge merge) throws NessieNotFoundException, NessieConflictException { @@ -267,6 +278,7 @@ private void validateKeepIndividual( } @JsonView(Views.V1.class) + @Operation(operationId = "nessie.v1.commitMultipleOperations") @Override public Branch commitMultipleOperations( String branchName, String expectedHash, Operations operations) diff --git a/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestV2ConfigResource.java b/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestV2ConfigResource.java index 043cf8075b0..0d982cf2036 100644 --- a/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestV2ConfigResource.java +++ b/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestV2ConfigResource.java @@ -22,6 +22,7 @@ import java.util.List; import java.util.Set; import java.util.stream.Collectors; +import org.eclipse.microprofile.openapi.annotations.Operation; import org.projectnessie.api.v2.http.HttpConfigApi; import org.projectnessie.error.NessieConflictException; import org.projectnessie.model.ImmutableRepositoryConfigResponse; @@ -59,6 +60,7 @@ public RestV2ConfigResource( @Override @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.getConfig") public NessieConfiguration getConfig() { return config.getConfig(); } diff --git a/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestV2TreeResource.java b/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestV2TreeResource.java index 04249787ef0..e69b0236304 100644 --- a/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestV2TreeResource.java +++ b/servers/rest-services/src/main/java/org/projectnessie/services/rest/RestV2TreeResource.java @@ -29,6 +29,7 @@ import java.util.List; import java.util.Locale; import java.util.stream.Collectors; +import org.eclipse.microprofile.openapi.annotations.Operation; import org.projectnessie.api.v2.http.HttpTreeApi; import org.projectnessie.api.v2.params.CommitLogParams; import org.projectnessie.api.v2.params.DiffParams; @@ -125,6 +126,7 @@ private ContentService content() { } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.getAllReferences") @Override public ReferencesResponse getAllReferences(ReferencesParams params) { Integer maxRecords = params.maxRecords(); @@ -155,6 +157,7 @@ public void hasMore(String pagingToken) { } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.createReference") @Override public SingleReferenceResponse createReference(String name, String type, Reference reference) throws NessieNotFoundException, NessieConflictException { @@ -174,6 +177,7 @@ public SingleReferenceResponse createReference(String name, String type, Referen } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.getReferenceByName") @Override public SingleReferenceResponse getReferenceByName(GetReferenceParams params) throws NessieNotFoundException { @@ -187,6 +191,7 @@ public SingleReferenceResponse getReferenceByName(GetReferenceParams params) } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.getReferenceHistory") @Override public ReferenceHistoryResponse getReferenceHistory(ReferenceHistoryParams params) throws NessieNotFoundException { @@ -198,6 +203,7 @@ public ReferenceHistoryResponse getReferenceHistory(ReferenceHistoryParams param } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.getEntries") @Override public EntriesResponse getEntries(String ref, EntriesParams params) throws NessieNotFoundException { @@ -237,6 +243,7 @@ public void hasMore(String pagingToken) { } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.getCommitLog") @Override public LogResponse getCommitLog(String ref, CommitLogParams params) throws NessieNotFoundException { @@ -272,6 +279,7 @@ public void hasMore(String pagingToken) { } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.getDiff") @Override public DiffResponse getDiff(DiffParams params) throws NessieNotFoundException { Integer maxRecords = params.maxRecords(); @@ -312,6 +320,7 @@ public void hasMore(String pagingToken) { } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.assignReference") @Override public SingleReferenceResponse assignReference(String type, String ref, Reference assignTo) throws NessieNotFoundException, NessieConflictException { @@ -324,6 +333,7 @@ public SingleReferenceResponse assignReference(String type, String ref, Referenc } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.deleteReference") @Override public SingleReferenceResponse deleteReference(String type, String ref) throws NessieConflictException, NessieNotFoundException { @@ -342,6 +352,7 @@ private static Reference.ReferenceType parseReferenceType(String type) { } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.getContent") @Override public ContentResponse getContent( ContentKey key, String ref, boolean withDocumentation, boolean forWrite) @@ -353,6 +364,7 @@ public ContentResponse getContent( } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.getSeveralContents") @Override public GetMultipleContentsResponse getSeveralContents( String ref, List keys, boolean withDocumentation, boolean forWrite) @@ -363,6 +375,7 @@ public GetMultipleContentsResponse getSeveralContents( } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.getMultipleContents") @Override public GetMultipleContentsResponse getMultipleContents( String ref, GetMultipleContentsRequest request, boolean withDocumentation, boolean forWrite) @@ -378,6 +391,7 @@ public GetMultipleContentsResponse getMultipleContents( } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.transplantCommitsIntoBranch") @Override public MergeResponse transplantCommitsIntoBranch(String branch, Transplant transplant) throws NessieNotFoundException, NessieConflictException { @@ -401,6 +415,7 @@ public MergeResponse transplantCommitsIntoBranch(String branch, Transplant trans } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.mergeRefIntoBranch") @Override public MergeResponse mergeRefIntoBranch(String branch, Merge merge) throws NessieNotFoundException, NessieConflictException { @@ -436,6 +451,7 @@ public MergeResponse mergeRefIntoBranch(String branch, Merge merge) } @JsonView(Views.V2.class) + @Operation(operationId = "nessie.v2.commitMultipleOperations") @Override public CommitResponse commitMultipleOperations(String branch, Operations operations) throws NessieNotFoundException, NessieConflictException { diff --git a/versioned/storage/cassandra2-tests/build.gradle.kts b/versioned/storage/cassandra2-tests/build.gradle.kts index 3859735ddb7..0d719a4e2ab 100644 --- a/versioned/storage/cassandra2-tests/build.gradle.kts +++ b/versioned/storage/cassandra2-tests/build.gradle.kts @@ -28,9 +28,8 @@ dependencies { compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(platform(libs.cassandra.driver.bom)) implementation("com.datastax.oss:java-driver-core") diff --git a/versioned/storage/cassandra2/build.gradle.kts b/versioned/storage/cassandra2/build.gradle.kts index 4a56329af29..f2f310050d5 100644 --- a/versioned/storage/cassandra2/build.gradle.kts +++ b/versioned/storage/cassandra2/build.gradle.kts @@ -41,9 +41,8 @@ dependencies { exclude("com.github.spotbugs", "spotbugs-annotations") } - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) intTestImplementation(project(":nessie-versioned-storage-cassandra2-tests")) intTestImplementation(project(":nessie-versioned-storage-common-tests")) diff --git a/versioned/storage/dynamodb2-tests/build.gradle.kts b/versioned/storage/dynamodb2-tests/build.gradle.kts index 7a6e9e36003..9b8eb8c4fd4 100644 --- a/versioned/storage/dynamodb2-tests/build.gradle.kts +++ b/versioned/storage/dynamodb2-tests/build.gradle.kts @@ -28,9 +28,8 @@ dependencies { compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(platform(libs.awssdk.bom)) implementation("software.amazon.awssdk:dynamodb") diff --git a/versioned/storage/dynamodb2/build.gradle.kts b/versioned/storage/dynamodb2/build.gradle.kts index cde22d175c6..ba84c325040 100644 --- a/versioned/storage/dynamodb2/build.gradle.kts +++ b/versioned/storage/dynamodb2/build.gradle.kts @@ -39,9 +39,8 @@ dependencies { implementation("software.amazon.awssdk:dynamodb") implementation("software.amazon.awssdk:apache-client") - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) intTestImplementation(project(":nessie-versioned-storage-dynamodb2-tests")) intTestImplementation(project(":nessie-versioned-storage-common-tests")) diff --git a/versioned/storage/jdbc2-tests/build.gradle.kts b/versioned/storage/jdbc2-tests/build.gradle.kts index 649ae017c24..086cd3e87b3 100644 --- a/versioned/storage/jdbc2-tests/build.gradle.kts +++ b/versioned/storage/jdbc2-tests/build.gradle.kts @@ -28,9 +28,8 @@ dependencies { compileOnly(libs.jakarta.annotation.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(libs.agroal.pool) diff --git a/versioned/storage/jdbc2/build.gradle.kts b/versioned/storage/jdbc2/build.gradle.kts index 7162ed4eb42..3f88fbd334f 100644 --- a/versioned/storage/jdbc2/build.gradle.kts +++ b/versioned/storage/jdbc2/build.gradle.kts @@ -36,9 +36,8 @@ dependencies { implementation(libs.agrona) implementation(libs.slf4j.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) testFixturesApi(project(":nessie-versioned-storage-jdbc2-tests")) testFixturesApi(project(":nessie-versioned-storage-common")) diff --git a/versioned/storage/mongodb2-tests/build.gradle.kts b/versioned/storage/mongodb2-tests/build.gradle.kts index 13936fe6e21..0caaab32579 100644 --- a/versioned/storage/mongodb2-tests/build.gradle.kts +++ b/versioned/storage/mongodb2-tests/build.gradle.kts @@ -28,9 +28,8 @@ dependencies { implementation(libs.slf4j.api) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) implementation(libs.mongodb.driver.sync) diff --git a/versioned/storage/mongodb2/build.gradle.kts b/versioned/storage/mongodb2/build.gradle.kts index e9c61dd0dca..7fbbb18bc2a 100644 --- a/versioned/storage/mongodb2/build.gradle.kts +++ b/versioned/storage/mongodb2/build.gradle.kts @@ -37,9 +37,8 @@ dependencies { implementation(libs.mongodb.driver.sync) - compileOnly(libs.immutables.builder) - compileOnly(libs.immutables.value.annotations) - annotationProcessor(libs.immutables.value.processor) + compileOnly(project(":nessie-immutables-std")) + annotationProcessor(project(":nessie-immutables-std", configuration = "processor")) intTestImplementation(project(":nessie-versioned-storage-mongodb2-tests")) intTestImplementation(project(":nessie-versioned-storage-common-tests"))