From 7db4e19e85f72a4c3b9d3862084d7c34ba3e13f0 Mon Sep 17 00:00:00 2001 From: lukaskabc Date: Thu, 19 Sep 2024 08:21:02 +0200 Subject: [PATCH] [Ref #296] replace all jetbrains and spring NotNull/NonNull & Nullable with jakarta annotations --- .../config/WebSocketMessageBrokerConfig.java | 4 ++-- .../event/FileTextAnalysisFinishedEvent.java | 4 ++-- .../event/LongRunningTaskChangedEvent.java | 6 ++--- ...rmDefinitionTextAnalysisFinishedEvent.java | 4 ++-- .../event/VocabularyContentModifiedEvent.java | 4 ++-- .../termit/event/VocabularyCreatedEvent.java | 4 ++-- .../kbss/termit/event/VocabularyEvent.java | 4 ++-- .../VocabularyValidationFinishedEvent.java | 12 +++++----- .../event/VocabularyWillBeRemovedEvent.java | 4 ++-- .../termit/exception/TermItException.java | 10 ++++---- .../kbss/termit/persistence/dao/BaseDao.java | 4 ++-- .../termit/persistence/dao/SearchDao.java | 10 ++++---- .../dao/acl/AccessControlListDao.java | 4 ++-- .../dao/lucene/LuceneSearchDao.java | 6 ++--- .../validation/ResultCachingValidator.java | 14 +++++------ .../persistence/validation/Validator.java | 8 +++---- .../VocabularyContentValidator.java | 6 ++--- .../cvut/kbss/termit/security/JwtUtils.java | 4 ++-- .../WebSocketJwtAuthorizationInterceptor.java | 6 ++--- .../kbss/termit/service/MessageFormatter.java | 6 ++--- .../business/AccessControlListService.java | 4 ++-- .../service/business/ResourceService.java | 4 ++-- .../service/business/SearchService.java | 6 ++--- .../termit/service/business/TermService.java | 4 ++-- .../termit/service/business/UserService.java | 7 +++--- .../service/business/VocabularyService.java | 4 ++-- .../AccessControlListCacheKeyGenerator.java | 7 +++--- .../service/changetracking/ChangeTracker.java | 4 ++-- .../html/TextPositionSelectorGenerator.java | 3 --- .../service/importer/VocabularyImporters.java | 4 ++-- .../service/importer/excel/ExcelImporter.java | 4 ++-- .../kbss/termit/service/jmx/AppAdminBean.java | 4 ++-- .../language/TermStateLanguageService.java | 4 ++-- .../service/language/UfoTermTypesService.java | 4 ++-- .../repository/BaseRepositoryService.java | 18 +++++++------- .../RepositoryAccessControlListService.java | 4 ++-- .../repository/ResourceRepositoryService.java | 6 ++--- .../repository/TermRepositoryService.java | 14 +++++------ .../UserGroupRepositoryService.java | 4 ++-- .../repository/UserRepositoryService.java | 8 +++---- .../VocabularyRepositoryService.java | 12 +++++----- .../SearchAuthorizationService.java | 6 ++--- .../cvut/kbss/termit/util/ExceptionUtils.java | 4 ++-- .../java/cz/cvut/kbss/termit/util/Pair.java | 4 ++-- .../util/longrunning/LongRunningTask.java | 8 +++---- .../longrunning/LongRunningTaskScheduler.java | 4 ++-- .../longrunning/LongRunningTaskStatus.java | 12 +++++----- .../longrunning/LongRunningTasksRegistry.java | 8 +++---- .../termit/util/throttle/CacheableFuture.java | 2 +- .../SynchronousTransactionExecutor.java | 4 ++-- .../kbss/termit/util/throttle/Throttle.java | 8 +++---- .../termit/util/throttle/ThrottleAspect.java | 24 +++++++++---------- .../termit/util/throttle/ThrottledFuture.java | 18 +++++++------- .../websocket/BaseWebSocketController.java | 12 +++++----- .../LongRunningTasksWebSocketController.java | 4 ++-- .../websocket/VocabularySocketController.java | 10 ++++---- .../handler/StompExceptionHandler.java | 6 ++--- .../kbss/termit/environment/Transaction.java | 6 ++--- .../config/TestWebSocketConfig.java | 4 ++-- .../service/business/AssetServiceTest.java | 4 ++-- .../business/VocabularyServiceTest.java | 4 ++-- .../termit/util/throttle/MockedThrottle.java | 12 +++++----- .../util/throttle/ScheduledFutureTask.java | 10 ++++---- .../BaseWebSocketIntegrationTestRunner.java | 10 ++++---- .../util/CachingChannelInterceptor.java | 4 ++-- ...nValueCollectingSimpMessagingTemplate.java | 4 ++-- 66 files changed, 220 insertions(+), 225 deletions(-) diff --git a/src/main/java/cz/cvut/kbss/termit/config/WebSocketMessageBrokerConfig.java b/src/main/java/cz/cvut/kbss/termit/config/WebSocketMessageBrokerConfig.java index 3f5cdb08d..483c4d9d1 100644 --- a/src/main/java/cz/cvut/kbss/termit/config/WebSocketMessageBrokerConfig.java +++ b/src/main/java/cz/cvut/kbss/termit/config/WebSocketMessageBrokerConfig.java @@ -4,12 +4,12 @@ import cz.cvut.kbss.termit.util.Constants; import cz.cvut.kbss.termit.websocket.handler.StompExceptionHandler; import cz.cvut.kbss.termit.websocket.handler.WebSocketExceptionHandler; +import jakarta.annotation.Nonnull; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Lazy; import org.springframework.core.Ordered; import org.springframework.core.annotation.Order; -import org.springframework.lang.NonNull; import org.springframework.messaging.Message; import org.springframework.messaging.converter.MappingJackson2MessageConverter; import org.springframework.messaging.converter.MessageConverter; @@ -86,7 +86,7 @@ public void addArgumentResolvers(List argumentRes * @see Spring security source */ @Override - public void configureClientInboundChannel(@NonNull ChannelRegistration registration) { + public void configureClientInboundChannel(@Nonnull ChannelRegistration registration) { AuthorizationChannelInterceptor interceptor = new AuthorizationChannelInterceptor(messageAuthorizationManager); interceptor.setAuthorizationEventPublisher(new SpringAuthorizationEventPublisher(context)); registration.interceptors(webSocketJwtAuthorizationInterceptor, new SecurityContextChannelInterceptor(), interceptor); diff --git a/src/main/java/cz/cvut/kbss/termit/event/FileTextAnalysisFinishedEvent.java b/src/main/java/cz/cvut/kbss/termit/event/FileTextAnalysisFinishedEvent.java index d8d7caa40..020b21eb3 100644 --- a/src/main/java/cz/cvut/kbss/termit/event/FileTextAnalysisFinishedEvent.java +++ b/src/main/java/cz/cvut/kbss/termit/event/FileTextAnalysisFinishedEvent.java @@ -1,7 +1,7 @@ package cz.cvut.kbss.termit.event; import cz.cvut.kbss.termit.model.resource.File; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import java.net.URI; @@ -12,7 +12,7 @@ public class FileTextAnalysisFinishedEvent extends VocabularyEvent { private final URI fileUri; - public FileTextAnalysisFinishedEvent(Object source, @NonNull File file) { + public FileTextAnalysisFinishedEvent(Object source, @Nonnull File file) { super(source, file.getDocument().getVocabulary()); this.fileUri = file.getUri(); } diff --git a/src/main/java/cz/cvut/kbss/termit/event/LongRunningTaskChangedEvent.java b/src/main/java/cz/cvut/kbss/termit/event/LongRunningTaskChangedEvent.java index fd3cf7af1..b71cd4822 100644 --- a/src/main/java/cz/cvut/kbss/termit/event/LongRunningTaskChangedEvent.java +++ b/src/main/java/cz/cvut/kbss/termit/event/LongRunningTaskChangedEvent.java @@ -1,8 +1,8 @@ package cz.cvut.kbss.termit.event; import cz.cvut.kbss.termit.util.longrunning.LongRunningTaskStatus; +import jakarta.annotation.Nonnull; import org.springframework.context.ApplicationEvent; -import org.springframework.lang.NonNull; /** * Indicates a status change of a long-running task. @@ -11,12 +11,12 @@ public class LongRunningTaskChangedEvent extends ApplicationEvent { private final LongRunningTaskStatus status; - public LongRunningTaskChangedEvent(@NonNull Object source, final @NonNull LongRunningTaskStatus status) { + public LongRunningTaskChangedEvent(@Nonnull Object source, final @Nonnull LongRunningTaskStatus status) { super(source); this.status = status; } - public @NonNull LongRunningTaskStatus getStatus() { + public @Nonnull LongRunningTaskStatus getStatus() { return status; } } diff --git a/src/main/java/cz/cvut/kbss/termit/event/TermDefinitionTextAnalysisFinishedEvent.java b/src/main/java/cz/cvut/kbss/termit/event/TermDefinitionTextAnalysisFinishedEvent.java index 748d7a075..b9fe53f01 100644 --- a/src/main/java/cz/cvut/kbss/termit/event/TermDefinitionTextAnalysisFinishedEvent.java +++ b/src/main/java/cz/cvut/kbss/termit/event/TermDefinitionTextAnalysisFinishedEvent.java @@ -1,7 +1,7 @@ package cz.cvut.kbss.termit.event; import cz.cvut.kbss.termit.model.AbstractTerm; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import java.net.URI; @@ -11,7 +11,7 @@ public class TermDefinitionTextAnalysisFinishedEvent extends VocabularyEvent { private final URI termUri; - public TermDefinitionTextAnalysisFinishedEvent(@NonNull Object source, @NonNull AbstractTerm term) { + public TermDefinitionTextAnalysisFinishedEvent(@Nonnull Object source, @Nonnull AbstractTerm term) { super(source, term.getVocabulary()); this.termUri = term.getUri(); } diff --git a/src/main/java/cz/cvut/kbss/termit/event/VocabularyContentModifiedEvent.java b/src/main/java/cz/cvut/kbss/termit/event/VocabularyContentModifiedEvent.java index 324c1d45c..2fa16640e 100644 --- a/src/main/java/cz/cvut/kbss/termit/event/VocabularyContentModifiedEvent.java +++ b/src/main/java/cz/cvut/kbss/termit/event/VocabularyContentModifiedEvent.java @@ -17,7 +17,7 @@ */ package cz.cvut.kbss.termit.event; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import java.net.URI; @@ -28,7 +28,7 @@ */ public class VocabularyContentModifiedEvent extends VocabularyEvent { - public VocabularyContentModifiedEvent(@NonNull Object source, @NonNull URI vocabularyIri) { + public VocabularyContentModifiedEvent(@Nonnull Object source, @Nonnull URI vocabularyIri) { super(source, vocabularyIri); } } diff --git a/src/main/java/cz/cvut/kbss/termit/event/VocabularyCreatedEvent.java b/src/main/java/cz/cvut/kbss/termit/event/VocabularyCreatedEvent.java index 704169105..81de28b1c 100644 --- a/src/main/java/cz/cvut/kbss/termit/event/VocabularyCreatedEvent.java +++ b/src/main/java/cz/cvut/kbss/termit/event/VocabularyCreatedEvent.java @@ -17,7 +17,7 @@ */ package cz.cvut.kbss.termit.event; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import java.net.URI; @@ -26,7 +26,7 @@ */ public class VocabularyCreatedEvent extends VocabularyEvent { - public VocabularyCreatedEvent(@NonNull Object source, @NonNull URI vocabularyIri) { + public VocabularyCreatedEvent(@Nonnull Object source, @Nonnull URI vocabularyIri) { super(source, vocabularyIri); } } diff --git a/src/main/java/cz/cvut/kbss/termit/event/VocabularyEvent.java b/src/main/java/cz/cvut/kbss/termit/event/VocabularyEvent.java index 133afe2f5..ed8cd2203 100644 --- a/src/main/java/cz/cvut/kbss/termit/event/VocabularyEvent.java +++ b/src/main/java/cz/cvut/kbss/termit/event/VocabularyEvent.java @@ -1,7 +1,7 @@ package cz.cvut.kbss.termit.event; +import jakarta.annotation.Nonnull; import org.springframework.context.ApplicationEvent; -import org.springframework.lang.NonNull; import java.net.URI; import java.util.Objects; @@ -12,7 +12,7 @@ public abstract class VocabularyEvent extends ApplicationEvent { protected final URI vocabularyIri; - protected VocabularyEvent(@NonNull Object source, @NonNull URI vocabularyIri) { + protected VocabularyEvent(@Nonnull Object source, @Nonnull URI vocabularyIri) { super(source); Objects.requireNonNull(vocabularyIri); this.vocabularyIri = vocabularyIri; diff --git a/src/main/java/cz/cvut/kbss/termit/event/VocabularyValidationFinishedEvent.java b/src/main/java/cz/cvut/kbss/termit/event/VocabularyValidationFinishedEvent.java index a5af0bbe8..ff3ab671d 100644 --- a/src/main/java/cz/cvut/kbss/termit/event/VocabularyValidationFinishedEvent.java +++ b/src/main/java/cz/cvut/kbss/termit/event/VocabularyValidationFinishedEvent.java @@ -1,7 +1,7 @@ package cz.cvut.kbss.termit.event; import cz.cvut.kbss.termit.model.validation.ValidationResult; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import java.net.URI; import java.util.ArrayList; @@ -28,21 +28,21 @@ public class VocabularyValidationFinishedEvent extends VocabularyEvent { * @param vocabularyIris IRI of the vocabulary on which the validation was triggered. * @param validationResults results of the validation */ - public VocabularyValidationFinishedEvent(@NonNull Object source, @NonNull URI originVocabularyIri, - @NonNull Collection vocabularyIris, - @NonNull List validationResults) { + public VocabularyValidationFinishedEvent(@Nonnull Object source, @Nonnull URI originVocabularyIri, + @Nonnull Collection vocabularyIris, + @Nonnull List validationResults) { super(source, originVocabularyIri); // defensive copy this.vocabularyIris = new ArrayList<>(vocabularyIris); this.validationResults = new ArrayList<>(validationResults); } - @NonNull + @Nonnull public List getVocabularyIris() { return Collections.unmodifiableList(vocabularyIris); } - @NonNull + @Nonnull public List getValidationResults() { return Collections.unmodifiableList(validationResults); } diff --git a/src/main/java/cz/cvut/kbss/termit/event/VocabularyWillBeRemovedEvent.java b/src/main/java/cz/cvut/kbss/termit/event/VocabularyWillBeRemovedEvent.java index 0e0b6503a..8af856290 100644 --- a/src/main/java/cz/cvut/kbss/termit/event/VocabularyWillBeRemovedEvent.java +++ b/src/main/java/cz/cvut/kbss/termit/event/VocabularyWillBeRemovedEvent.java @@ -1,6 +1,6 @@ package cz.cvut.kbss.termit.event; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import java.net.URI; @@ -9,7 +9,7 @@ */ public class VocabularyWillBeRemovedEvent extends VocabularyEvent { - public VocabularyWillBeRemovedEvent(@NonNull Object source, @NonNull URI vocabularyIri) { + public VocabularyWillBeRemovedEvent(@Nonnull Object source, @Nonnull URI vocabularyIri) { super(source, vocabularyIri); } } diff --git a/src/main/java/cz/cvut/kbss/termit/exception/TermItException.java b/src/main/java/cz/cvut/kbss/termit/exception/TermItException.java index 526ae80bc..6ff81e4ab 100644 --- a/src/main/java/cz/cvut/kbss/termit/exception/TermItException.java +++ b/src/main/java/cz/cvut/kbss/termit/exception/TermItException.java @@ -18,8 +18,8 @@ package cz.cvut.kbss.termit.exception; import cz.cvut.kbss.termit.util.Utils; -import org.springframework.lang.NonNull; -import org.springframework.lang.Nullable; +import jakarta.annotation.Nonnull; +import jakarta.annotation.Nullable; import java.util.HashMap; import java.util.Map; @@ -72,18 +72,18 @@ public TermItException(String message, Throwable cause, String messageId) { this.messageId = messageId; } - public TermItException(String message, Throwable cause, String messageId, @NonNull Map parameters) { + public TermItException(String message, Throwable cause, String messageId, @Nonnull Map parameters) { super(message, cause); this.messageId = messageId; addParameters(parameters); } - public TermItException addParameters(@NonNull Map parameters) { + public TermItException addParameters(@Nonnull Map parameters) { this.parameters.putAll(parameters); return this; } - public TermItException addParameter(@NonNull String key, @NonNull String value) { + public TermItException addParameter(@Nonnull String key, @Nonnull String value) { this.parameters.put(key, value); return this; } diff --git a/src/main/java/cz/cvut/kbss/termit/persistence/dao/BaseDao.java b/src/main/java/cz/cvut/kbss/termit/persistence/dao/BaseDao.java index a4e495cc1..532f07c06 100644 --- a/src/main/java/cz/cvut/kbss/termit/persistence/dao/BaseDao.java +++ b/src/main/java/cz/cvut/kbss/termit/persistence/dao/BaseDao.java @@ -25,7 +25,7 @@ import cz.cvut.kbss.termit.exception.PersistenceException; import cz.cvut.kbss.termit.model.util.EntityToOwlClassMapper; import cz.cvut.kbss.termit.model.util.HasIdentifier; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.springframework.context.ApplicationEventPublisher; import org.springframework.context.ApplicationEventPublisherAware; @@ -159,7 +159,7 @@ protected Descriptor getDescriptor() { } @Override - public void setApplicationEventPublisher(@NotNull ApplicationEventPublisher eventPublisher) { + public void setApplicationEventPublisher(@Nonnull ApplicationEventPublisher eventPublisher) { this.eventPublisher = eventPublisher; } } diff --git a/src/main/java/cz/cvut/kbss/termit/persistence/dao/SearchDao.java b/src/main/java/cz/cvut/kbss/termit/persistence/dao/SearchDao.java index 8b6c0bffa..12d9e0d5e 100644 --- a/src/main/java/cz/cvut/kbss/termit/persistence/dao/SearchDao.java +++ b/src/main/java/cz/cvut/kbss/termit/persistence/dao/SearchDao.java @@ -26,13 +26,13 @@ import cz.cvut.kbss.termit.util.Configuration; import cz.cvut.kbss.termit.util.Utils; import cz.cvut.kbss.termit.util.Vocabulary; +import jakarta.annotation.Nonnull; import jakarta.annotation.PostConstruct; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Profile; import org.springframework.data.domain.Pageable; -import org.springframework.lang.NonNull; import org.springframework.stereotype.Repository; import java.net.URI; @@ -79,7 +79,7 @@ private void loadQueries() { * @return List of matching results * @see #fullTextSearchIncludingSnapshots(String) */ - public List fullTextSearch(@NonNull String searchString) { + public List fullTextSearch(@Nonnull String searchString) { Objects.requireNonNull(searchString); if (searchString.isBlank()) { return Collections.emptyList(); @@ -102,7 +102,7 @@ public List fullTextSearch(@NonNull String searchString) { * @return List of matching results * @see #fullTextSearchIncludingSnapshots(String) */ - public List fullTextSearchIncludingSnapshots(@NonNull String searchString) { + public List fullTextSearchIncludingSnapshots(@Nonnull String searchString) { Objects.requireNonNull(searchString); if (searchString.isBlank()) { return Collections.emptyList(); @@ -136,8 +136,8 @@ protected String queryIncludingSnapshots() { * @param pageSpec Specification of the page of results to return * @return List of matching terms, ordered by label */ - public List facetedTermSearch(@NonNull Collection searchParams, - @NonNull Pageable pageSpec) { + public List facetedTermSearch(@Nonnull Collection searchParams, + @Nonnull Pageable pageSpec) { Objects.requireNonNull(searchParams); Objects.requireNonNull(pageSpec); LOG.trace("Running faceted term search for search parameters: {}", searchParams); diff --git a/src/main/java/cz/cvut/kbss/termit/persistence/dao/acl/AccessControlListDao.java b/src/main/java/cz/cvut/kbss/termit/persistence/dao/acl/AccessControlListDao.java index 5d42885e6..dda7e109e 100644 --- a/src/main/java/cz/cvut/kbss/termit/persistence/dao/acl/AccessControlListDao.java +++ b/src/main/java/cz/cvut/kbss/termit/persistence/dao/acl/AccessControlListDao.java @@ -29,7 +29,7 @@ import cz.cvut.kbss.termit.persistence.context.DescriptorFactory; import cz.cvut.kbss.termit.util.Utils; import cz.cvut.kbss.termit.util.Vocabulary; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import org.springframework.stereotype.Repository; import java.net.URI; @@ -170,7 +170,7 @@ public Optional resolveSubjectOf(AccessControlList acl) { * @param agent Agent whose access is examined * @return List of matching assets */ - public List> findAssetsByAgentWithSecurityAccess(@NonNull AccessControlAgent agent) { + public List> findAssetsByAgentWithSecurityAccess(@Nonnull AccessControlAgent agent) { Objects.requireNonNull(agent); return em.createNativeQuery("SELECT ?a WHERE { " + "?a a ?type ; " + diff --git a/src/main/java/cz/cvut/kbss/termit/persistence/dao/lucene/LuceneSearchDao.java b/src/main/java/cz/cvut/kbss/termit/persistence/dao/lucene/LuceneSearchDao.java index efc9f7258..9f90cd42c 100644 --- a/src/main/java/cz/cvut/kbss/termit/persistence/dao/lucene/LuceneSearchDao.java +++ b/src/main/java/cz/cvut/kbss/termit/persistence/dao/lucene/LuceneSearchDao.java @@ -22,10 +22,10 @@ import cz.cvut.kbss.termit.persistence.dao.SearchDao; import cz.cvut.kbss.termit.util.Configuration; import cz.cvut.kbss.termit.util.Vocabulary; +import jakarta.annotation.Nonnull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.context.annotation.Profile; -import org.springframework.lang.NonNull; import org.springframework.stereotype.Repository; import java.net.URI; @@ -53,7 +53,7 @@ public LuceneSearchDao(EntityManager em, Configuration config) { } @Override - public List fullTextSearch(@NonNull String searchString) { + public List fullTextSearch(@Nonnull String searchString) { Objects.requireNonNull(searchString); if (searchString.isBlank()) { return Collections.emptyList(); @@ -87,7 +87,7 @@ private static String splitExactMatch(String searchString) { } @Override - public List fullTextSearchIncludingSnapshots(@NonNull String searchString) { + public List fullTextSearchIncludingSnapshots(@Nonnull String searchString) { Objects.requireNonNull(searchString); if (searchString.isBlank()) { return Collections.emptyList(); diff --git a/src/main/java/cz/cvut/kbss/termit/persistence/validation/ResultCachingValidator.java b/src/main/java/cz/cvut/kbss/termit/persistence/validation/ResultCachingValidator.java index 1d6cfe406..29f97f735 100644 --- a/src/main/java/cz/cvut/kbss/termit/persistence/validation/ResultCachingValidator.java +++ b/src/main/java/cz/cvut/kbss/termit/persistence/validation/ResultCachingValidator.java @@ -25,13 +25,13 @@ import cz.cvut.kbss.termit.model.validation.ValidationResult; import cz.cvut.kbss.termit.util.throttle.Throttle; import cz.cvut.kbss.termit.util.throttle.ThrottledFuture; +import jakarta.annotation.Nonnull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Lookup; import org.springframework.context.annotation.Primary; import org.springframework.context.annotation.Profile; import org.springframework.context.event.EventListener; -import org.springframework.lang.NonNull; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; @@ -64,11 +64,11 @@ public class ResultCachingValidator implements VocabularyContentValidator { /** * @return true when the cache contents are dirty and should be refreshed; false otherwise. */ - public boolean isNotDirty(@NonNull URI originVocabularyIri) { + public boolean isNotDirty(@Nonnull URI originVocabularyIri) { return vocabularyClosure.containsKey(originVocabularyIri); } - private Optional> getCached(@NonNull URI originVocabularyIri) { + private Optional> getCached(@Nonnull URI originVocabularyIri) { synchronized (validationCache) { return Optional.ofNullable(validationCache.get(originVocabularyIri)); } @@ -77,8 +77,8 @@ private Optional> getCached(@NonNull URI originVoca @Throttle(value = "{#originVocabularyIri}", name="vocabularyValidation") @Transactional @Override - @NonNull - public ThrottledFuture> validate(@NonNull URI originVocabularyIri, @NonNull Collection vocabularyIris) { + @Nonnull + public ThrottledFuture> validate(@Nonnull URI originVocabularyIri, @Nonnull Collection vocabularyIris) { final Set iris = Set.copyOf(vocabularyIris); if (iris.isEmpty()) { @@ -94,8 +94,8 @@ public ThrottledFuture> validate(@NonNull URI origi return ThrottledFuture.of(() -> runValidation(originVocabularyIri, iris)).setCachedResult(cached.orElse(null)); } - @NonNull - private Collection runValidation(@NonNull URI originVocabularyIri, @NonNull final Set iris) { + @Nonnull + private Collection runValidation(@Nonnull URI originVocabularyIri, @Nonnull final Set iris) { Optional> cached = getCached(originVocabularyIri); if (isNotDirty(originVocabularyIri) && cached.isPresent()) { return cached.get(); diff --git a/src/main/java/cz/cvut/kbss/termit/persistence/validation/Validator.java b/src/main/java/cz/cvut/kbss/termit/persistence/validation/Validator.java index b01ac7dbf..c4435a832 100644 --- a/src/main/java/cz/cvut/kbss/termit/persistence/validation/Validator.java +++ b/src/main/java/cz/cvut/kbss/termit/persistence/validation/Validator.java @@ -29,6 +29,7 @@ import cz.cvut.kbss.termit.util.Utils; import cz.cvut.kbss.termit.util.throttle.Throttle; import cz.cvut.kbss.termit.util.throttle.ThrottledFuture; +import jakarta.annotation.Nonnull; import org.apache.jena.rdf.model.Literal; import org.apache.jena.rdf.model.Model; import org.apache.jena.rdf.model.ModelFactory; @@ -45,7 +46,6 @@ import org.springframework.context.ApplicationEventPublisher; import org.springframework.core.io.Resource; import org.springframework.core.io.support.PathMatchingResourcePatternResolver; -import org.springframework.lang.NonNull; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; @@ -146,8 +146,8 @@ private void loadOverrideRules(Model validationModel, String language) throws IO @Throttle(value = "{#originVocabularyIri}", name = "vocabularyValidation") @Transactional(readOnly = true) @Override - @NonNull - public ThrottledFuture> validate(final @NonNull URI originVocabularyIri, final @NonNull Collection vocabularyIris) { + @Nonnull + public ThrottledFuture> validate(final @Nonnull URI originVocabularyIri, final @Nonnull Collection vocabularyIris) { if (vocabularyIris.isEmpty()) { return ThrottledFuture.done(List.of()); } @@ -159,7 +159,7 @@ public ThrottledFuture> validate(final @NonNull URI }); } - protected synchronized List runValidation(@NonNull Collection vocabularyIris) { + protected synchronized List runValidation(@Nonnull Collection vocabularyIris) { LOG.debug("Validating {}", vocabularyIris); try { LOG.trace("Constructing model from RDF4J repository..."); diff --git a/src/main/java/cz/cvut/kbss/termit/persistence/validation/VocabularyContentValidator.java b/src/main/java/cz/cvut/kbss/termit/persistence/validation/VocabularyContentValidator.java index 54ffa94ae..13d86ace8 100644 --- a/src/main/java/cz/cvut/kbss/termit/persistence/validation/VocabularyContentValidator.java +++ b/src/main/java/cz/cvut/kbss/termit/persistence/validation/VocabularyContentValidator.java @@ -19,7 +19,7 @@ import cz.cvut.kbss.termit.model.validation.ValidationResult; import cz.cvut.kbss.termit.util.throttle.ThrottledFuture; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import java.net.URI; import java.util.Collection; @@ -38,6 +38,6 @@ public interface VocabularyContentValidator { * @param vocabularyIris Vocabulary identifiers (including {@code originVocabularyIri} * @return List of violations of validation rules. Empty list if there are not violations */ - @NonNull - ThrottledFuture> validate(@NonNull URI originVocabularyIri, @NonNull Collection vocabularyIris); + @Nonnull + ThrottledFuture> validate(@Nonnull URI originVocabularyIri, @Nonnull Collection vocabularyIris); } diff --git a/src/main/java/cz/cvut/kbss/termit/security/JwtUtils.java b/src/main/java/cz/cvut/kbss/termit/security/JwtUtils.java index e10d16462..2951fe910 100644 --- a/src/main/java/cz/cvut/kbss/termit/security/JwtUtils.java +++ b/src/main/java/cz/cvut/kbss/termit/security/JwtUtils.java @@ -37,7 +37,7 @@ import io.jsonwebtoken.jackson.io.JacksonSerializer; import io.jsonwebtoken.security.Keys; import io.jsonwebtoken.security.SecurityException; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.security.core.GrantedAuthority; @@ -125,7 +125,7 @@ public TermItUserDetails extractUserInfo(String token) { } } - public TermItUserDetails extractUserInfo(final @NotNull Claims claims) { + public TermItUserDetails extractUserInfo(final @Nonnull Claims claims) { Objects.requireNonNull(claims); try { verifyAttributePresence(claims); diff --git a/src/main/java/cz/cvut/kbss/termit/security/WebSocketJwtAuthorizationInterceptor.java b/src/main/java/cz/cvut/kbss/termit/security/WebSocketJwtAuthorizationInterceptor.java index eda4786a7..8cda5bc9a 100644 --- a/src/main/java/cz/cvut/kbss/termit/security/WebSocketJwtAuthorizationInterceptor.java +++ b/src/main/java/cz/cvut/kbss/termit/security/WebSocketJwtAuthorizationInterceptor.java @@ -1,6 +1,6 @@ package cz.cvut.kbss.termit.security; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.springframework.http.HttpHeaders; import org.springframework.messaging.Message; import org.springframework.messaging.MessageChannel; @@ -36,7 +36,7 @@ public WebSocketJwtAuthorizationInterceptor(JwtAuthenticationProvider jwtAuthent } @Override - public Message preSend(@NotNull Message message, @NotNull MessageChannel channel) { + public Message preSend(@Nonnull Message message, @Nonnull MessageChannel channel) { StompHeaderAccessor headerAccessor = MessageHeaderAccessor.getAccessor(message, StompHeaderAccessor.class); if (headerAccessor != null && StompCommand.CONNECT.equals(headerAccessor.getCommand()) && headerAccessor.isMutable()) { final String authHeader = headerAccessor.getFirstNativeHeader(HttpHeaders.AUTHORIZATION); @@ -58,7 +58,7 @@ public Message preSend(@NotNull Message message, @NotNull MessageChannel c * And for example {@link org.springframework.security.oauth2.server.resource.authentication.JwtAuthenticationProvider} * also supports only {@code Bearer} tokens. */ - protected void process(StompHeaderAccessor stompHeaderAccessor, final @NotNull String authHeader) { + protected void process(StompHeaderAccessor stompHeaderAccessor, final @Nonnull String authHeader) { if (!StringUtils.startsWithIgnoreCase(authHeader, SecurityConstants.JWT_TOKEN_PREFIX)) { throw new InvalidBearerTokenException("Invalid Bearer token in authorization header"); } diff --git a/src/main/java/cz/cvut/kbss/termit/service/MessageFormatter.java b/src/main/java/cz/cvut/kbss/termit/service/MessageFormatter.java index 10b147a60..5170de08b 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/MessageFormatter.java +++ b/src/main/java/cz/cvut/kbss/termit/service/MessageFormatter.java @@ -1,8 +1,8 @@ package cz.cvut.kbss.termit.service; +import jakarta.annotation.Nonnull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.lang.NonNull; import java.text.MessageFormat; import java.util.Locale; @@ -21,7 +21,7 @@ public class MessageFormatter { private final ResourceBundle messages; - public MessageFormatter(@NonNull String lang) { + public MessageFormatter(@Nonnull String lang) { Objects.requireNonNull(lang); final Locale locale = new Locale(lang); this.messages = ResourceBundle.getBundle("i18n/messages", locale); @@ -35,7 +35,7 @@ public MessageFormatter(@NonNull String lang) { * @param params Parameters to substitute into the message string * @return Formatted message */ - public String formatMessage(@NonNull String messageId, Object... params) { + public String formatMessage(@Nonnull String messageId, Object... params) { Objects.requireNonNull(messageId); try { final MessageFormat formatter = new MessageFormat(messages.getString(messageId)); diff --git a/src/main/java/cz/cvut/kbss/termit/service/business/AccessControlListService.java b/src/main/java/cz/cvut/kbss/termit/service/business/AccessControlListService.java index 783b54a33..4b6cdc889 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/business/AccessControlListService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/business/AccessControlListService.java @@ -23,7 +23,7 @@ import cz.cvut.kbss.termit.model.acl.AccessControlList; import cz.cvut.kbss.termit.model.acl.AccessControlRecord; import cz.cvut.kbss.termit.model.util.HasIdentifier; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import java.net.URI; import java.util.List; @@ -137,5 +137,5 @@ public interface AccessControlListService { * @param agent Agent whose access to examine * @return List of matching assets */ - List> findAssetsByAgentWithSecurityAccess(@NonNull AccessControlAgent agent); + List> findAssetsByAgentWithSecurityAccess(@Nonnull AccessControlAgent agent); } diff --git a/src/main/java/cz/cvut/kbss/termit/service/business/ResourceService.java b/src/main/java/cz/cvut/kbss/termit/service/business/ResourceService.java index f3d7a9cc7..f8d8f87a3 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/business/ResourceService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/business/ResourceService.java @@ -38,7 +38,7 @@ import cz.cvut.kbss.termit.service.repository.ChangeRecordService; import cz.cvut.kbss.termit.service.repository.ResourceRepositoryService; import cz.cvut.kbss.termit.util.TypeAwareResource; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -374,7 +374,7 @@ public List getChanges(Resource asset) { } @Override - public void setApplicationEventPublisher(@NotNull ApplicationEventPublisher eventPublisher) { + public void setApplicationEventPublisher(@Nonnull ApplicationEventPublisher eventPublisher) { this.eventPublisher = eventPublisher; } } diff --git a/src/main/java/cz/cvut/kbss/termit/service/business/SearchService.java b/src/main/java/cz/cvut/kbss/termit/service/business/SearchService.java index f8f787591..72efc6b3a 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/business/SearchService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/business/SearchService.java @@ -22,9 +22,9 @@ import cz.cvut.kbss.termit.dto.search.FullTextSearchResult; import cz.cvut.kbss.termit.dto.search.SearchParam; import cz.cvut.kbss.termit.persistence.dao.SearchDao; +import jakarta.annotation.Nonnull; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Pageable; -import org.springframework.lang.NonNull; import org.springframework.security.access.prepost.PostFilter; import org.springframework.stereotype.Service; @@ -87,8 +87,8 @@ public List fullTextSearchOfTerms(String searchString, Set * @return List of matching terms, sorted by label */ @PostFilter("@searchAuthorizationService.canRead(filterObject)") - public List facetedTermSearch(@NonNull Collection searchParams, - @NonNull Pageable pageSpec) { + public List facetedTermSearch(@Nonnull Collection searchParams, + @Nonnull Pageable pageSpec) { Objects.requireNonNull(searchParams); Objects.requireNonNull(pageSpec); searchParams.forEach(SearchParam::validate); diff --git a/src/main/java/cz/cvut/kbss/termit/service/business/TermService.java b/src/main/java/cz/cvut/kbss/termit/service/business/TermService.java index db3bb6564..35b92fa57 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/business/TermService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/business/TermService.java @@ -43,11 +43,11 @@ import cz.cvut.kbss.termit.util.TypeAwareResource; import cz.cvut.kbss.termit.util.Utils; import cz.cvut.kbss.termit.util.throttle.Throttle; +import jakarta.annotation.Nonnull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Pageable; -import org.springframework.lang.NonNull; import org.springframework.security.access.prepost.PostAuthorize; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.stereotype.Service; @@ -426,7 +426,7 @@ public Term update(Term term) { * @param term Term to remove */ @PreAuthorize("@termAuthorizationService.canRemove(#term)") - public void remove(@NonNull Term term) { + public void remove(@Nonnull Term term) { Objects.requireNonNull(term); repositoryService.remove(term); } diff --git a/src/main/java/cz/cvut/kbss/termit/service/business/UserService.java b/src/main/java/cz/cvut/kbss/termit/service/business/UserService.java index a5022f675..296c1dc5e 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/business/UserService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/business/UserService.java @@ -38,12 +38,11 @@ import cz.cvut.kbss.termit.util.Configuration; import cz.cvut.kbss.termit.util.Utils; import cz.cvut.kbss.termit.util.Vocabulary; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.event.EventListener; -import org.springframework.lang.NonNull; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -222,7 +221,7 @@ public void updateCurrent(UserUpdateDto update) { repositoryService.update(update.asUserAccount()); } - @NotNull + @Nonnull private UserAccount getCurrentUser(UserUpdateDto update) { UserAccount currentUser = securityUtils.getCurrentUser(); @@ -344,7 +343,7 @@ public boolean exists(String username) { * @param user User whose access to check * @return List of RDFS resources representing the managed assets */ - public List getManagedAssets(@NonNull UserAccount user) { + public List getManagedAssets(@Nonnull UserAccount user) { Objects.requireNonNull(user); return aclService.findAssetsByAgentWithSecurityAccess(user.toUser()).stream() .map(dtoMapper::assetToRdfsResource).collect(Collectors.toList()); diff --git a/src/main/java/cz/cvut/kbss/termit/service/business/VocabularyService.java b/src/main/java/cz/cvut/kbss/termit/service/business/VocabularyService.java index 1d20cf5b2..6d2d409ae 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/business/VocabularyService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/business/VocabularyService.java @@ -48,7 +48,7 @@ import cz.cvut.kbss.termit.util.TypeAwareResource; import cz.cvut.kbss.termit.util.throttle.CacheableFuture; import cz.cvut.kbss.termit.util.throttle.Throttle; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.context.ApplicationContext; @@ -497,7 +497,7 @@ public AccessLevel getAccessLevel(Vocabulary vocabulary) { } @Override - public void setApplicationEventPublisher(@NotNull ApplicationEventPublisher eventPublisher) { + public void setApplicationEventPublisher(@Nonnull ApplicationEventPublisher eventPublisher) { this.eventPublisher = eventPublisher; } } diff --git a/src/main/java/cz/cvut/kbss/termit/service/cache/AccessControlListCacheKeyGenerator.java b/src/main/java/cz/cvut/kbss/termit/service/cache/AccessControlListCacheKeyGenerator.java index 9dbdad86f..c18efb95b 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/cache/AccessControlListCacheKeyGenerator.java +++ b/src/main/java/cz/cvut/kbss/termit/service/cache/AccessControlListCacheKeyGenerator.java @@ -20,9 +20,8 @@ import cz.cvut.kbss.termit.exception.NotFoundException; import cz.cvut.kbss.termit.model.acl.AccessControlList; import cz.cvut.kbss.termit.persistence.dao.acl.AccessControlListDao; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.springframework.cache.interceptor.KeyGenerator; -import org.springframework.lang.NonNull; import java.lang.reflect.Method; @@ -36,12 +35,12 @@ public class AccessControlListCacheKeyGenerator implements KeyGenerator { private final AccessControlListDao aclDao; - public AccessControlListCacheKeyGenerator(@NonNull AccessControlListDao aclDao) { + public AccessControlListCacheKeyGenerator(@Nonnull AccessControlListDao aclDao) { this.aclDao = aclDao; } @Override - public @NotNull Object generate(@NotNull Object target, @NotNull Method method, Object @NotNull ... params) { + public @Nonnull Object generate(@Nonnull Object target, @Nonnull Method method, Object... params) { assert params.length == 1 && params[0] instanceof AccessControlList; final AccessControlList acl = (AccessControlList) params[0]; return aclDao.resolveSubjectOf(acl) diff --git a/src/main/java/cz/cvut/kbss/termit/service/changetracking/ChangeTracker.java b/src/main/java/cz/cvut/kbss/termit/service/changetracking/ChangeTracker.java index de0de54e0..b9497ab94 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/changetracking/ChangeTracker.java +++ b/src/main/java/cz/cvut/kbss/termit/service/changetracking/ChangeTracker.java @@ -29,11 +29,11 @@ import cz.cvut.kbss.termit.persistence.dao.changetracking.ChangeTrackingHelperDao; import cz.cvut.kbss.termit.service.security.SecurityUtils; import cz.cvut.kbss.termit.util.Utils; +import jakarta.annotation.Nonnull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.event.EventListener; -import org.springframework.lang.NonNull; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -102,7 +102,7 @@ public void onAssetUpdateEvent(AssetUpdateEvent event) { */ @Transactional @EventListener - public void onAssetPersistEvent(@NonNull AssetPersistEvent event) { + public void onAssetPersistEvent(@Nonnull AssetPersistEvent event) { final Asset added = event.getAsset(); if (added instanceof File) { LOG.trace("Skipping recording of creation of file {}.", added); diff --git a/src/main/java/cz/cvut/kbss/termit/service/document/html/TextPositionSelectorGenerator.java b/src/main/java/cz/cvut/kbss/termit/service/document/html/TextPositionSelectorGenerator.java index 767e06676..8f3eda5cb 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/document/html/TextPositionSelectorGenerator.java +++ b/src/main/java/cz/cvut/kbss/termit/service/document/html/TextPositionSelectorGenerator.java @@ -22,11 +22,8 @@ import org.jsoup.nodes.Node; import org.jsoup.nodes.TextNode; import org.jsoup.select.Elements; -import org.jsoup.select.NodeTraversor; -import org.jsoup.select.NodeVisitor; import java.util.List; -import java.util.concurrent.atomic.AtomicInteger; /** * Generates a {@link TextPositionSelector} for the specified elements. diff --git a/src/main/java/cz/cvut/kbss/termit/service/importer/VocabularyImporters.java b/src/main/java/cz/cvut/kbss/termit/service/importer/VocabularyImporters.java index d2782a9f1..5eb792580 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/importer/VocabularyImporters.java +++ b/src/main/java/cz/cvut/kbss/termit/service/importer/VocabularyImporters.java @@ -4,8 +4,8 @@ import cz.cvut.kbss.termit.model.Vocabulary; import cz.cvut.kbss.termit.persistence.dao.skos.SKOSImporter; import cz.cvut.kbss.termit.service.importer.excel.ExcelImporter; +import jakarta.annotation.Nonnull; import org.springframework.context.ApplicationContext; -import org.springframework.lang.NonNull; import org.springframework.stereotype.Component; /** @@ -21,7 +21,7 @@ public VocabularyImporters(ApplicationContext appContext) { } @Override - public Vocabulary importVocabulary(@NonNull ImportConfiguration config, @NonNull ImportInput data) { + public Vocabulary importVocabulary(@Nonnull ImportConfiguration config, @Nonnull ImportInput data) { if (SKOSImporter.supportsMediaType(data.mediaType())) { return getSkosImporter().importVocabulary(config, data); } diff --git a/src/main/java/cz/cvut/kbss/termit/service/importer/excel/ExcelImporter.java b/src/main/java/cz/cvut/kbss/termit/service/importer/excel/ExcelImporter.java index c8b922fd7..1a8ed5f68 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/importer/excel/ExcelImporter.java +++ b/src/main/java/cz/cvut/kbss/termit/service/importer/excel/ExcelImporter.java @@ -17,6 +17,7 @@ import cz.cvut.kbss.termit.util.Configuration; import cz.cvut.kbss.termit.util.Constants; import cz.cvut.kbss.termit.util.Utils; +import jakarta.annotation.Nonnull; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; @@ -24,7 +25,6 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.config.ConfigurableBeanFactory; import org.springframework.context.annotation.Scope; -import org.springframework.lang.NonNull; import org.springframework.stereotype.Component; import java.io.IOException; @@ -221,7 +221,7 @@ private URI resolveTermIdentifier(Vocabulary vocabulary, Term term) { * @param mediaType Media type to check * @return {@code true} when media type is supported, {@code false} otherwise */ - public static boolean supportsMediaType(@NonNull String mediaType) { + public static boolean supportsMediaType(@Nonnull String mediaType) { return Constants.MediaType.EXCEL.equals(mediaType) || XLS_MEDIA_TYPE.equals(mediaType); } diff --git a/src/main/java/cz/cvut/kbss/termit/service/jmx/AppAdminBean.java b/src/main/java/cz/cvut/kbss/termit/service/jmx/AppAdminBean.java index c6095f424..d81a2ec6c 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/jmx/AppAdminBean.java +++ b/src/main/java/cz/cvut/kbss/termit/service/jmx/AppAdminBean.java @@ -23,7 +23,7 @@ import cz.cvut.kbss.termit.service.mail.Message; import cz.cvut.kbss.termit.service.mail.Postman; import cz.cvut.kbss.termit.util.Configuration; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -75,7 +75,7 @@ public void sendTestEmail(String address) { } @Override - public @NotNull ObjectName getObjectName() throws MalformedObjectNameException { + public @Nonnull ObjectName getObjectName() throws MalformedObjectNameException { return new ObjectName("bean:name=" + beanName); } diff --git a/src/main/java/cz/cvut/kbss/termit/service/language/TermStateLanguageService.java b/src/main/java/cz/cvut/kbss/termit/service/language/TermStateLanguageService.java index d6906c970..e5123c00f 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/language/TermStateLanguageService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/language/TermStateLanguageService.java @@ -21,6 +21,7 @@ import cz.cvut.kbss.termit.exception.LanguageRetrievalException; import cz.cvut.kbss.termit.util.Utils; import cz.cvut.kbss.termit.util.Vocabulary; +import jakarta.annotation.Nonnull; import org.eclipse.rdf4j.model.Model; import org.eclipse.rdf4j.model.ValueFactory; import org.eclipse.rdf4j.model.impl.SimpleValueFactory; @@ -30,7 +31,6 @@ import org.eclipse.rdf4j.rio.RDFParseException; import org.eclipse.rdf4j.rio.Rio; import org.eclipse.rdf4j.rio.UnsupportedRDFormatException; -import org.jetbrains.annotations.NotNull; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.core.io.Resource; import org.springframework.stereotype.Service; @@ -69,7 +69,7 @@ public List getTermStates() { return cache.stream().map(RdfsResource::new).collect(Collectors.toList()); } - @NotNull + @Nonnull private List loadTermStates() { try { final ValueFactory vf = SimpleValueFactory.getInstance(); diff --git a/src/main/java/cz/cvut/kbss/termit/service/language/UfoTermTypesService.java b/src/main/java/cz/cvut/kbss/termit/service/language/UfoTermTypesService.java index 88c0e8b03..81bd52bf8 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/language/UfoTermTypesService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/language/UfoTermTypesService.java @@ -22,6 +22,7 @@ import cz.cvut.kbss.termit.exception.LanguageRetrievalException; import cz.cvut.kbss.termit.model.Term; import cz.cvut.kbss.termit.util.Utils; +import jakarta.annotation.Nonnull; import org.eclipse.rdf4j.model.Model; import org.eclipse.rdf4j.model.vocabulary.RDF; import org.eclipse.rdf4j.model.vocabulary.SKOS; @@ -29,7 +30,6 @@ import org.eclipse.rdf4j.rio.RDFParseException; import org.eclipse.rdf4j.rio.Rio; import org.eclipse.rdf4j.rio.UnsupportedRDFormatException; -import org.jetbrains.annotations.NotNull; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.core.io.Resource; @@ -76,7 +76,7 @@ public List getTypes() { }).collect(Collectors.toList()); } - @NotNull + @Nonnull private List loadTermTypes() { try { final Model model = Rio.parse(languageTtlUrl.getInputStream(), RDFFormat.TURTLE); diff --git a/src/main/java/cz/cvut/kbss/termit/service/repository/BaseRepositoryService.java b/src/main/java/cz/cvut/kbss/termit/service/repository/BaseRepositoryService.java index be5bcceae..413235e4f 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/repository/BaseRepositoryService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/repository/BaseRepositoryService.java @@ -24,8 +24,8 @@ import cz.cvut.kbss.termit.model.util.HasIdentifier; import cz.cvut.kbss.termit.persistence.dao.GenericDao; import cz.cvut.kbss.termit.validation.ValidationResult; +import jakarta.annotation.Nonnull; import jakarta.validation.Validator; -import org.springframework.lang.NonNull; import org.springframework.transaction.annotation.Transactional; import java.net.URI; @@ -146,7 +146,7 @@ private Class resolveGenericType() { * * @param instance The loaded instance, not {@code null} */ - protected T postLoad(@NonNull T instance) { + protected T postLoad(@Nonnull T instance) { // Do nothing return instance; } @@ -157,7 +157,7 @@ protected T postLoad(@NonNull T instance) { * @param instance The instance to persist */ @Transactional - public void persist(@NonNull T instance) { + public void persist(@Nonnull T instance) { Objects.requireNonNull(instance); prePersist(instance); getPrimaryDao().persist(instance); @@ -171,7 +171,7 @@ public void persist(@NonNull T instance) { * * @param instance The instance to be persisted, not {@code null} */ - protected void prePersist(@NonNull T instance) { + protected void prePersist(@Nonnull T instance) { validate(instance); } @@ -180,7 +180,7 @@ protected void prePersist(@NonNull T instance) { * * @param instance The persisted instance, not {@code null} */ - protected void postPersist(@NonNull T instance) { + protected void postPersist(@Nonnull T instance) { // Do nothing } @@ -207,7 +207,7 @@ public T update(T instance) { * * @param instance The instance to be updated, not {@code null} */ - protected void preUpdate(@NonNull T instance) { + protected void preUpdate(@Nonnull T instance) { if (!exists(instance.getUri())) { throw NotFoundException.create(instance.getClass().getSimpleName(), instance.getUri()); } @@ -219,7 +219,7 @@ protected void preUpdate(@NonNull T instance) { * * @param instance The updated instance which will be returned by {@link #update(HasIdentifier)}, not {@code null} */ - protected void postUpdate(@NonNull T instance) { + protected void postUpdate(@Nonnull T instance) { // Do nothing } @@ -243,7 +243,7 @@ public void remove(T instance) { * * @param instance The instance to be removed, not {@code null} */ - protected void preRemove(@NonNull T instance) { + protected void preRemove(@Nonnull T instance) { // Do nothing } @@ -254,7 +254,7 @@ protected void preRemove(@NonNull T instance) { * * @param instance The removed instance, not {@code null} */ - protected void postRemove(@NonNull T instance) { + protected void postRemove(@Nonnull T instance) { // Do nothing } diff --git a/src/main/java/cz/cvut/kbss/termit/service/repository/RepositoryAccessControlListService.java b/src/main/java/cz/cvut/kbss/termit/service/repository/RepositoryAccessControlListService.java index 6598bfaaa..f2844bc7d 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/repository/RepositoryAccessControlListService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/repository/RepositoryAccessControlListService.java @@ -35,13 +35,13 @@ import cz.cvut.kbss.termit.service.security.SecurityUtils; import cz.cvut.kbss.termit.util.Configuration; import cz.cvut.kbss.termit.util.Utils; +import jakarta.annotation.Nonnull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.cache.annotation.CacheConfig; import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CachePut; import org.springframework.cache.annotation.Cacheable; -import org.springframework.lang.NonNull; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -219,7 +219,7 @@ public void updateRecordAccessLevel(AccessControlList acl, AccessControlRecord> findAssetsByAgentWithSecurityAccess(@NonNull AccessControlAgent agent) { + public List> findAssetsByAgentWithSecurityAccess(@Nonnull AccessControlAgent agent) { return dao.findAssetsByAgentWithSecurityAccess(agent); } } diff --git a/src/main/java/cz/cvut/kbss/termit/service/repository/ResourceRepositoryService.java b/src/main/java/cz/cvut/kbss/termit/service/repository/ResourceRepositoryService.java index 5f0b9bb61..9f7b256f9 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/repository/ResourceRepositoryService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/repository/ResourceRepositoryService.java @@ -27,8 +27,8 @@ import cz.cvut.kbss.termit.persistence.dao.TermOccurrenceDao; import cz.cvut.kbss.termit.service.IdentifierResolver; import cz.cvut.kbss.termit.util.Configuration; +import jakarta.annotation.Nonnull; import jakarta.validation.Validator; -import org.jetbrains.annotations.NotNull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -73,7 +73,7 @@ protected Resource mapToDto(Resource entity) { } @Override - protected void prePersist(@NotNull Resource instance) { + protected void prePersist(@Nonnull Resource instance) { super.prePersist(instance); if (instance.getUri() == null) { instance.setUri(idResolver.generateIdentifier(cfgNamespace.getResource(), instance.getLabel())); @@ -98,7 +98,7 @@ public void persist(Resource resource, Vocabulary vocabulary) { } @Override - protected void preRemove(@NotNull Resource instance) { + protected void preRemove(@Nonnull Resource instance) { LOG.trace("Removing term occurrences in resource {} which is about to be removed.", instance); termOccurrenceDao.removeAll(instance); removeFromParentDocumentIfFile(instance); diff --git a/src/main/java/cz/cvut/kbss/termit/service/repository/TermRepositoryService.java b/src/main/java/cz/cvut/kbss/termit/service/repository/TermRepositoryService.java index 24465e032..15b11b1f8 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/repository/TermRepositoryService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/repository/TermRepositoryService.java @@ -36,10 +36,10 @@ import cz.cvut.kbss.termit.service.term.OrphanedInverseTermRelationshipRemover; import cz.cvut.kbss.termit.util.Configuration; import cz.cvut.kbss.termit.util.Utils; +import jakarta.annotation.Nonnull; import jakarta.validation.Validator; import org.apache.jena.vocabulary.SKOS; import org.springframework.data.domain.Pageable; -import org.springframework.lang.NonNull; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -94,13 +94,13 @@ protected TermDto mapToDto(Term entity) { } @Override - public void persist(@NonNull Term instance) { + public void persist(@Nonnull Term instance) { throw new UnsupportedOperationException( "Persisting term by itself is not supported. It has to be connected to a vocabulary or a parent term."); } @Override - protected void preUpdate(@NonNull Term instance) { + protected void preUpdate(@Nonnull Term instance) { super.preUpdate(instance); // Existence check is done as part of super.preUpdate final Term original = termDao.find(instance.getUri()).get(); @@ -125,7 +125,7 @@ private void pruneEmptyTranslations(Term instance) { } @Override - protected void postUpdate(@NonNull Term instance) { + protected void postUpdate(@Nonnull Term instance) { final Vocabulary vocabulary = vocabularyService.getReference(instance.getVocabulary()); if (instance.hasParentInSameVocabulary()) { vocabulary.getGlossary().removeRootTerm(instance); @@ -406,7 +406,7 @@ public List getDefinitionallyRelatedOf(Term instance) { * @throws AssetRemovalException If the specified term cannot be removed */ @Override - protected void preRemove(@NonNull Term instance) { + protected void preRemove(@Nonnull Term instance) { super.preRemove(instance); final List ai = getOccurrenceInfo(instance); if (!ai.isEmpty()) { @@ -438,7 +438,7 @@ protected void preRemove(@NonNull Term instance) { } @Override - protected void postRemove(@NonNull Term instance) { + protected void postRemove(@Nonnull Term instance) { super.postRemove(instance); if (!instance.hasParentInSameVocabulary()) { final Vocabulary v = vocabularyService.findRequired(instance.getVocabulary()); @@ -455,7 +455,7 @@ protected void postRemove(@NonNull Term instance) { * @param instance Term to remove */ @Transactional - public void forceRemove(@NonNull Term instance) { + public void forceRemove(@Nonnull Term instance) { super.preRemove(instance); termDao.remove(instance); postRemove(instance); diff --git a/src/main/java/cz/cvut/kbss/termit/service/repository/UserGroupRepositoryService.java b/src/main/java/cz/cvut/kbss/termit/service/repository/UserGroupRepositoryService.java index 146c83d60..603c0d70c 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/repository/UserGroupRepositoryService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/repository/UserGroupRepositoryService.java @@ -24,10 +24,10 @@ import cz.cvut.kbss.termit.security.SecurityConstants; import cz.cvut.kbss.termit.service.business.UserGroupService; import cz.cvut.kbss.termit.util.Utils; +import jakarta.annotation.Nonnull; import jakarta.validation.Validator; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.lang.NonNull; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -99,7 +99,7 @@ public User findRequiredUser(URI uri) { } @Override - protected void postRemove(@NonNull UserGroup instance) { + protected void postRemove(@Nonnull UserGroup instance) { super.postRemove(instance); // TODO Remove group from ACLs } diff --git a/src/main/java/cz/cvut/kbss/termit/service/repository/UserRepositoryService.java b/src/main/java/cz/cvut/kbss/termit/service/repository/UserRepositoryService.java index c98582bfb..a0729e429 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/repository/UserRepositoryService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/repository/UserRepositoryService.java @@ -23,8 +23,8 @@ import cz.cvut.kbss.termit.persistence.dao.UserAccountDao; import cz.cvut.kbss.termit.service.IdentifierResolver; import cz.cvut.kbss.termit.util.Configuration; +import jakarta.annotation.Nonnull; import jakarta.validation.Validator; -import org.jetbrains.annotations.NotNull; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.stereotype.Service; @@ -78,13 +78,13 @@ protected UserAccount mapToDto(UserAccount entity) { } @Override - protected UserAccount postLoad(@NotNull UserAccount instance) { + protected UserAccount postLoad(@Nonnull UserAccount instance) { instance.erasePassword(); return instance; } @Override - protected void prePersist(@NotNull UserAccount instance) { + protected void prePersist(@Nonnull UserAccount instance) { super.prePersist(instance); if (instance.getUri() == null) { instance.setUri(idResolver @@ -96,7 +96,7 @@ protected void prePersist(@NotNull UserAccount instance) { } @Override - protected void preUpdate(@NotNull UserAccount instance) { + protected void preUpdate(@Nonnull UserAccount instance) { final UserAccount original = userAccountDao.find(instance.getUri()).orElseThrow( () -> new NotFoundException("User " + instance + " does not exist.")); if (instance.getPassword() != null) { diff --git a/src/main/java/cz/cvut/kbss/termit/service/repository/VocabularyRepositoryService.java b/src/main/java/cz/cvut/kbss/termit/service/repository/VocabularyRepositoryService.java index 0f8fede41..9d055b183 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/repository/VocabularyRepositoryService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/repository/VocabularyRepositoryService.java @@ -43,11 +43,11 @@ import cz.cvut.kbss.termit.util.Utils; import cz.cvut.kbss.termit.util.throttle.CacheableFuture; import cz.cvut.kbss.termit.workspace.EditableVocabularies; +import jakarta.annotation.Nonnull; import jakarta.validation.Validator; import org.apache.tika.Tika; import org.apache.tika.metadata.Metadata; import org.apache.tika.metadata.TikaCoreProperties; -import org.jetbrains.annotations.NotNull; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.annotation.CacheConfig; import org.springframework.cache.annotation.CacheEvict; @@ -109,7 +109,7 @@ public List findAll() { } @Override - protected Vocabulary postLoad(@NotNull Vocabulary instance) { + protected Vocabulary postLoad(@Nonnull Vocabulary instance) { super.postLoad(instance); if (!config.getWorkspace().isAllVocabulariesEditable() && !editableVocabularies.isEditable(instance)) { instance.addType(cz.cvut.kbss.termit.util.Vocabulary.s_c_pouze_pro_cteni); @@ -125,12 +125,12 @@ protected VocabularyDto mapToDto(Vocabulary entity) { @CacheEvict(allEntries = true) @Override @Transactional - public void persist(@NotNull Vocabulary instance) { + public void persist(@Nonnull Vocabulary instance) { super.persist(instance); } @Override - protected void prePersist(@NotNull Vocabulary instance) { + protected void prePersist(@Nonnull Vocabulary instance) { super.prePersist(instance); if (instance.getUri() == null) { instance.setUri( @@ -170,7 +170,7 @@ private void initDocument(Vocabulary vocabulary) { } @Override - protected void preUpdate(@NotNull Vocabulary instance) { + protected void preUpdate(@Nonnull Vocabulary instance) { super.preUpdate(instance); final Vocabulary original = findRequired(instance.getUri()); verifyVocabularyImports(instance, original); @@ -286,7 +286,7 @@ public void remove(Vocabulary instance) { * @param instance The instance to be removed, not {@code null} */ @Override - protected void preRemove(@NotNull Vocabulary instance) { + protected void preRemove(@Nonnull Vocabulary instance) { ensureNotImported(instance); ensureNoTermRelationsExists(instance); super.preRemove(instance); diff --git a/src/main/java/cz/cvut/kbss/termit/service/security/authorization/SearchAuthorizationService.java b/src/main/java/cz/cvut/kbss/termit/service/security/authorization/SearchAuthorizationService.java index b34cb68bc..18ec738f9 100644 --- a/src/main/java/cz/cvut/kbss/termit/service/security/authorization/SearchAuthorizationService.java +++ b/src/main/java/cz/cvut/kbss/termit/service/security/authorization/SearchAuthorizationService.java @@ -21,7 +21,7 @@ import cz.cvut.kbss.termit.dto.search.FacetedSearchResult; import cz.cvut.kbss.termit.dto.search.FullTextSearchResult; import cz.cvut.kbss.termit.model.Vocabulary; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import org.springframework.stereotype.Service; import java.util.Objects; @@ -46,7 +46,7 @@ public SearchAuthorizationService(VocabularyAuthorizationService vocabularyAutho * @param instance Search result to authorize access to * @return {@code true} if the current user can read the specified instance, {@code false} otherwise */ - public boolean canRead(@NonNull FullTextSearchResult instance) { + public boolean canRead(@Nonnull FullTextSearchResult instance) { Objects.requireNonNull(instance); if (instance.getVocabulary() != null) { assert instance.hasType(SKOS.CONCEPT); @@ -65,7 +65,7 @@ public boolean canRead(@NonNull FullTextSearchResult instance) { * @param instance Faceted search result to authorize access to * @return {@code true} if the current user can read the specified instance, {@code false} otherwise */ - public boolean canRead(@NonNull FacetedSearchResult instance) { + public boolean canRead(@Nonnull FacetedSearchResult instance) { Objects.requireNonNull(instance); return vocabularyAuthorizationService.canRead(new Vocabulary(instance.getVocabulary())); } diff --git a/src/main/java/cz/cvut/kbss/termit/util/ExceptionUtils.java b/src/main/java/cz/cvut/kbss/termit/util/ExceptionUtils.java index e31b081c7..4f837d609 100644 --- a/src/main/java/cz/cvut/kbss/termit/util/ExceptionUtils.java +++ b/src/main/java/cz/cvut/kbss/termit/util/ExceptionUtils.java @@ -1,6 +1,6 @@ package cz.cvut.kbss.termit.util; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import java.util.HashSet; import java.util.Set; @@ -13,7 +13,7 @@ private ExceptionUtils() { /** * Resolves all nested causes of the {@code throwable} and returns true if any is matching the {@code cause} */ - public static boolean isCausedBy(final Throwable throwable, @NonNull final Class cause) { + public static boolean isCausedBy(final Throwable throwable, @Nonnull final Class cause) { Throwable t = throwable; final Set visited = new HashSet<>(); while (t != null) { diff --git a/src/main/java/cz/cvut/kbss/termit/util/Pair.java b/src/main/java/cz/cvut/kbss/termit/util/Pair.java index ad0f36a34..2a576421a 100644 --- a/src/main/java/cz/cvut/kbss/termit/util/Pair.java +++ b/src/main/java/cz/cvut/kbss/termit/util/Pair.java @@ -1,7 +1,7 @@ package cz.cvut.kbss.termit.util; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import java.util.Objects; @@ -36,7 +36,7 @@ public ComparablePair(T first, V second) { } @Override - public int compareTo(@NonNull Pair.ComparablePair o) { + public int compareTo(@Nonnull Pair.ComparablePair o) { final int firstComparison = this.getFirst().compareTo(o.getFirst()); if (firstComparison != 0) { return firstComparison; diff --git a/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTask.java b/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTask.java index d59913ec2..a1039a916 100644 --- a/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTask.java +++ b/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTask.java @@ -1,7 +1,7 @@ package cz.cvut.kbss.termit.util.longrunning; -import org.springframework.lang.NonNull; -import org.springframework.lang.Nullable; +import jakarta.annotation.Nonnull; +import jakarta.annotation.Nullable; import java.time.Instant; import java.util.Optional; @@ -35,9 +35,9 @@ public interface LongRunningTask { * @return a timestamp of the task execution start, * or empty if the task execution has not yet started. */ - @NonNull + @Nonnull Optional startedAt(); - @NonNull + @Nonnull UUID getUuid(); } diff --git a/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTaskScheduler.java b/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTaskScheduler.java index d4c396f7c..8b1f00b47 100644 --- a/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTaskScheduler.java +++ b/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTaskScheduler.java @@ -1,6 +1,6 @@ package cz.cvut.kbss.termit.util.longrunning; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; /** * An object that will schedule a long-running tasks @@ -13,7 +13,7 @@ protected LongRunningTaskScheduler(LongRunningTasksRegistry registry) { this.registry = registry; } - protected final void notifyTaskChanged(final @NonNull LongRunningTask task) { + protected final void notifyTaskChanged(final @Nonnull LongRunningTask task) { final String name = task.getName(); if (name != null && !name.isBlank()) { registry.onTaskChanged(task); diff --git a/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTaskStatus.java b/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTaskStatus.java index aa4859c61..5e0060029 100644 --- a/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTaskStatus.java +++ b/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTaskStatus.java @@ -1,7 +1,7 @@ package cz.cvut.kbss.termit.util.longrunning; -import org.springframework.lang.NonNull; -import org.springframework.lang.Nullable; +import jakarta.annotation.Nonnull; +import jakarta.annotation.Nullable; import java.io.Serializable; import java.time.Instant; @@ -19,7 +19,7 @@ public class LongRunningTaskStatus implements Serializable { private final Instant startedAt; - public LongRunningTaskStatus(@NonNull LongRunningTask task) { + public LongRunningTaskStatus(@Nonnull LongRunningTask task) { Objects.requireNonNull(task.getName()); this.name = task.getName(); this.startedAt = task.startedAt().map(time -> time.truncatedTo(ChronoUnit.SECONDS)).orElse(null); @@ -27,7 +27,7 @@ public LongRunningTaskStatus(@NonNull LongRunningTask task) { this.uuid = task.getUuid(); } - public @NonNull String getName() { + public @Nonnull String getName() { return name; } @@ -39,7 +39,7 @@ public State getState() { return startedAt; } - public @NonNull UUID getUuid() { + public @Nonnull UUID getUuid() { return uuid; } @@ -51,7 +51,7 @@ public String toString() { public enum State { PENDING, RUNNING, DONE; - public static State of(@NonNull LongRunningTask task) { + public static State of(@Nonnull LongRunningTask task) { if (task.isRunning()) { return RUNNING; } else if (task.isDone()) { diff --git a/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTasksRegistry.java b/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTasksRegistry.java index a73435f4b..c8c6e31cf 100644 --- a/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTasksRegistry.java +++ b/src/main/java/cz/cvut/kbss/termit/util/longrunning/LongRunningTasksRegistry.java @@ -1,11 +1,11 @@ package cz.cvut.kbss.termit.util.longrunning; import cz.cvut.kbss.termit.event.LongRunningTaskChangedEvent; +import jakarta.annotation.Nonnull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationEventPublisher; -import org.springframework.lang.NonNull; import org.springframework.stereotype.Component; import java.util.List; @@ -26,7 +26,7 @@ public LongRunningTasksRegistry(ApplicationEventPublisher eventPublisher) { this.eventPublisher = eventPublisher; } - public void onTaskChanged(@NonNull final LongRunningTask task) { + public void onTaskChanged(@Nonnull final LongRunningTask task) { final LongRunningTaskStatus status = new LongRunningTaskStatus(task); if (LOG.isTraceEnabled()) { @@ -38,7 +38,7 @@ public void onTaskChanged(@NonNull final LongRunningTask task) { eventPublisher.publishEvent(new LongRunningTaskChangedEvent(this, status)); } - private void handleTaskChanged(@NonNull final LongRunningTask task) { + private void handleTaskChanged(@Nonnull final LongRunningTask task) { if(task.isDone()) { registry.remove(task.getUuid()); } else { @@ -57,7 +57,7 @@ private void handleTaskChanged(@NonNull final LongRunningTask task) { } } - @NonNull + @Nonnull public List getTasks() { return registry.values().stream().map(LongRunningTaskStatus::new).toList(); } diff --git a/src/main/java/cz/cvut/kbss/termit/util/throttle/CacheableFuture.java b/src/main/java/cz/cvut/kbss/termit/util/throttle/CacheableFuture.java index 6af5651d5..f1dd254a5 100644 --- a/src/main/java/cz/cvut/kbss/termit/util/throttle/CacheableFuture.java +++ b/src/main/java/cz/cvut/kbss/termit/util/throttle/CacheableFuture.java @@ -1,7 +1,7 @@ package cz.cvut.kbss.termit.util.throttle; import cz.cvut.kbss.termit.exception.TermItException; -import org.springframework.lang.Nullable; +import jakarta.annotation.Nullable; import java.util.Optional; import java.util.concurrent.ExecutionException; diff --git a/src/main/java/cz/cvut/kbss/termit/util/throttle/SynchronousTransactionExecutor.java b/src/main/java/cz/cvut/kbss/termit/util/throttle/SynchronousTransactionExecutor.java index 74b31b905..a127f9a52 100644 --- a/src/main/java/cz/cvut/kbss/termit/util/throttle/SynchronousTransactionExecutor.java +++ b/src/main/java/cz/cvut/kbss/termit/util/throttle/SynchronousTransactionExecutor.java @@ -1,6 +1,6 @@ package cz.cvut.kbss.termit.util.throttle; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; @@ -16,7 +16,7 @@ public class SynchronousTransactionExecutor implements Executor { @Transactional @Override - public void execute(@NonNull Runnable command) { + public void execute(@Nonnull Runnable command) { command.run(); } } diff --git a/src/main/java/cz/cvut/kbss/termit/util/throttle/Throttle.java b/src/main/java/cz/cvut/kbss/termit/util/throttle/Throttle.java index cc9c9080b..56451bf92 100644 --- a/src/main/java/cz/cvut/kbss/termit/util/throttle/Throttle.java +++ b/src/main/java/cz/cvut/kbss/termit/util/throttle/Throttle.java @@ -1,8 +1,8 @@ package cz.cvut.kbss.termit.util.throttle; import cz.cvut.kbss.termit.util.Constants; -import org.springframework.lang.NonNull; -import org.springframework.lang.Nullable; +import jakarta.annotation.Nonnull; +import jakarta.annotation.Nullable; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; @@ -69,7 +69,7 @@ * returning a List of Objects or a String which will be used to construct the unique identifier * for this throttled instance. */ - @NonNull String value() default ""; + @Nonnull String value() default ""; /** * The Spring-EL expression @@ -93,7 +93,7 @@ * Blank string disables any group processing. * @see String#compareTo(String) */ - @NonNull String group() default ""; + @Nonnull String group() default ""; /** * @return a key name of the task which is displayed on the frontend. diff --git a/src/main/java/cz/cvut/kbss/termit/util/throttle/ThrottleAspect.java b/src/main/java/cz/cvut/kbss/termit/util/throttle/ThrottleAspect.java index f86ab39d5..fdb1cfc99 100644 --- a/src/main/java/cz/cvut/kbss/termit/util/throttle/ThrottleAspect.java +++ b/src/main/java/cz/cvut/kbss/termit/util/throttle/ThrottleAspect.java @@ -7,6 +7,8 @@ import cz.cvut.kbss.termit.util.Pair; import cz.cvut.kbss.termit.util.longrunning.LongRunningTaskScheduler; import cz.cvut.kbss.termit.util.longrunning.LongRunningTasksRegistry; +import jakarta.annotation.Nonnull; +import jakarta.annotation.Nullable; import org.aspectj.lang.JoinPoint; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.reflect.MethodSignature; @@ -25,8 +27,6 @@ import org.springframework.expression.spel.support.DataBindingPropertyAccessor; import org.springframework.expression.spel.support.StandardEvaluationContext; import org.springframework.expression.spel.support.StandardTypeLocator; -import org.springframework.lang.NonNull; -import org.springframework.lang.Nullable; import org.springframework.scheduling.TaskScheduler; import org.springframework.security.core.context.SecurityContext; import org.springframework.security.core.context.SecurityContextHolder; @@ -189,8 +189,8 @@ private static StandardEvaluationContext makeDefaultContext() { * {@link Future} * @implNote Around advice configured in {@code spring-aop.xml} */ - public @Nullable Object throttleMethodCall(@NonNull ProceedingJoinPoint joinPoint, - @NonNull Throttle throttleAnnotation) throws Throwable { + public @Nullable Object throttleMethodCall(@Nonnull ProceedingJoinPoint joinPoint, + @Nonnull Throttle throttleAnnotation) throws Throwable { // if the current thread is already executing a throttled code, we want to skip further throttling if (throttledThreads.contains(Thread.currentThread().getId())) { @@ -207,8 +207,8 @@ private static StandardEvaluationContext makeDefaultContext() { return doThrottle(joinPoint, throttleAnnotation); } - private synchronized @Nullable Object doThrottle(@NonNull ProceedingJoinPoint joinPoint, - @NonNull Throttle throttleAnnotation) throws Throwable { + private synchronized @Nullable Object doThrottle(@Nonnull ProceedingJoinPoint joinPoint, + @Nonnull Throttle throttleAnnotation) throws Throwable { final MethodSignature signature = (MethodSignature) joinPoint.getSignature(); @@ -306,9 +306,9 @@ private EvaluationContext makeContext(JoinPoint joinPoint, Map p return context; } - private Pair> getFutureTask(@NonNull ProceedingJoinPoint joinPoint, - @NonNull Identifier identifier, - @NonNull ThrottledFuture future) + private Pair> getFutureTask(@Nonnull ProceedingJoinPoint joinPoint, + @Nonnull Identifier identifier, + @Nonnull ThrottledFuture future) throws Throwable { final MethodSignature methodSignature = (MethodSignature) joinPoint.getSignature(); @@ -546,7 +546,7 @@ private Identifier makeIdentifier(JoinPoint joinPoint, Throttle throttleAnnotati return new Identifier(groupIdentifier, joinPoint.getSignature().toShortString() + "-" + identifier); } - private @Nullable Object resultVoidOrFuture(@NonNull MethodSignature signature, ThrottledFuture future) + private @Nullable Object resultVoidOrFuture(@Nonnull MethodSignature signature, ThrottledFuture future) throws IllegalCallerException { Class returnType = signature.getReturnType(); if (returnType.isAssignableFrom(ThrottledFuture.class)) { @@ -561,7 +561,7 @@ private Identifier makeIdentifier(JoinPoint joinPoint, Throttle throttleAnnotati @SuppressWarnings({"unchecked"}) - private @NonNull String constructIdentifier(JoinPoint joinPoint, String expression) throws ThrottleAspectException { + private @Nonnull String constructIdentifier(JoinPoint joinPoint, String expression) throws ThrottleAspectException { if (expression == null || expression.isBlank()) { return ""; } @@ -612,7 +612,7 @@ public String getIdentifier() { return this.getSecond(); } - public boolean hasGroupPrefix(@NonNull String group) { + public boolean hasGroupPrefix(@Nonnull String group) { return this.getGroup().indexOf(group) == 0 && !this.getGroup().isBlank() && !group.isBlank(); } diff --git a/src/main/java/cz/cvut/kbss/termit/util/throttle/ThrottledFuture.java b/src/main/java/cz/cvut/kbss/termit/util/throttle/ThrottledFuture.java index 35947b403..e32f8ef40 100644 --- a/src/main/java/cz/cvut/kbss/termit/util/throttle/ThrottledFuture.java +++ b/src/main/java/cz/cvut/kbss/termit/util/throttle/ThrottledFuture.java @@ -3,8 +3,8 @@ import cz.cvut.kbss.termit.exception.TermItException; import cz.cvut.kbss.termit.util.Utils; import cz.cvut.kbss.termit.util.longrunning.LongRunningTask; -import org.springframework.lang.NonNull; -import org.springframework.lang.Nullable; +import jakarta.annotation.Nonnull; +import jakarta.annotation.Nullable; import java.time.Instant; import java.util.ArrayList; @@ -39,7 +39,7 @@ public class ThrottledFuture implements CacheableFuture, LongRunningTask { private @Nullable String name = null; - private ThrottledFuture(@NonNull final Supplier task) { + private ThrottledFuture(@Nonnull final Supplier task) { this.task = task; future = new CompletableFuture<>(); } @@ -48,11 +48,11 @@ protected ThrottledFuture() { future = new CompletableFuture<>(); } - public static ThrottledFuture of(@NonNull final Supplier supplier) { + public static ThrottledFuture of(@Nonnull final Supplier supplier) { return new ThrottledFuture<>(supplier); } - public static ThrottledFuture of(@NonNull final Runnable runnable) { + public static ThrottledFuture of(@Nonnull final Runnable runnable) { return new ThrottledFuture<>(() -> { runnable.run(); return null; @@ -115,7 +115,7 @@ public T get() throws InterruptedException, ExecutionException { * Does not execute the task, blocks the current thread until the result is available. */ @Override - public T get(long timeout, @NonNull TimeUnit unit) + public T get(long timeout, @Nonnull TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException { return future.get(timeout, unit); } @@ -124,7 +124,7 @@ public T get(long timeout, @NonNull TimeUnit unit) * @return If the current task is already running, was canceled or already completed, returns a new future for the given task. * Otherwise, replaces the current task and returns self. */ - protected ThrottledFuture update(Supplier task, @NonNull List> onCompletion) { + protected ThrottledFuture update(Supplier task, @Nonnull List> onCompletion) { boolean locked = false; try { locked = lock.tryLock(); @@ -232,12 +232,12 @@ public boolean isRunning() { } @Override - public @NonNull Optional startedAt() { + public @Nonnull Optional startedAt() { return Optional.ofNullable(startedAt.get()); } @Override - public @NonNull UUID getUuid() { + public @Nonnull UUID getUuid() { return uuid; } diff --git a/src/main/java/cz/cvut/kbss/termit/websocket/BaseWebSocketController.java b/src/main/java/cz/cvut/kbss/termit/websocket/BaseWebSocketController.java index 55f152033..d9dd71fe5 100644 --- a/src/main/java/cz/cvut/kbss/termit/websocket/BaseWebSocketController.java +++ b/src/main/java/cz/cvut/kbss/termit/websocket/BaseWebSocketController.java @@ -3,7 +3,7 @@ import cz.cvut.kbss.termit.rest.BaseController; import cz.cvut.kbss.termit.service.IdentifierResolver; import cz.cvut.kbss.termit.util.Configuration; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import org.springframework.messaging.MessageHeaders; import org.springframework.messaging.simp.SimpMessageHeaderAccessor; import org.springframework.messaging.simp.SimpMessagingTemplate; @@ -38,8 +38,8 @@ protected BaseWebSocketController(IdentifierResolver idResolver, Configuration c * @param replyHeaders native headers for the reply * @param sourceHeaders original headers containing session id or name of the user */ - protected void sendToSession(@NonNull String destination, @NonNull Object payload, - @NonNull Map replyHeaders, @NonNull MessageHeaders sourceHeaders) { + protected void sendToSession(@Nonnull String destination, @Nonnull Object payload, + @Nonnull Map replyHeaders, @Nonnull MessageHeaders sourceHeaders) { getSessionId(sourceHeaders) .ifPresentOrElse(sessionId -> { // session id present StompHeaderAccessor headerAccessor = StompHeaderAccessor.create(StompCommand.MESSAGE); @@ -60,11 +60,11 @@ protected void sendToSession(@NonNull String destination, @NonNull Object payloa * * @return name or session id, or empty when information is not available. */ - protected @NonNull Optional getUser(@NonNull MessageHeaders messageHeaders) { + protected @Nonnull Optional getUser(@Nonnull MessageHeaders messageHeaders) { return getUserName(messageHeaders).or(() -> getSessionId(messageHeaders)); } - private @NonNull Optional getSessionId(@NonNull MessageHeaders messageHeaders) { + private @Nonnull Optional getSessionId(@Nonnull MessageHeaders messageHeaders) { return Optional.ofNullable(SimpMessageHeaderAccessor.getSessionId(messageHeaders)); } @@ -73,7 +73,7 @@ protected void sendToSession(@NonNull String destination, @NonNull Object payloa * * @return the name or null */ - private @NonNull Optional getUserName(MessageHeaders headers) { + private @Nonnull Optional getUserName(MessageHeaders headers) { Principal principal = SimpMessageHeaderAccessor.getUser(headers); if (principal != null) { final String name = (principal instanceof DestinationUserNameProvider provider ? diff --git a/src/main/java/cz/cvut/kbss/termit/websocket/LongRunningTasksWebSocketController.java b/src/main/java/cz/cvut/kbss/termit/websocket/LongRunningTasksWebSocketController.java index f3d3ac18c..7c0bad94a 100644 --- a/src/main/java/cz/cvut/kbss/termit/websocket/LongRunningTasksWebSocketController.java +++ b/src/main/java/cz/cvut/kbss/termit/websocket/LongRunningTasksWebSocketController.java @@ -5,8 +5,8 @@ import cz.cvut.kbss.termit.service.IdentifierResolver; import cz.cvut.kbss.termit.util.Configuration; import cz.cvut.kbss.termit.util.longrunning.LongRunningTasksRegistry; +import jakarta.annotation.Nonnull; import org.springframework.context.event.EventListener; -import org.springframework.lang.NonNull; import org.springframework.messaging.MessageHeaders; import org.springframework.messaging.handler.annotation.MessageMapping; import org.springframework.messaging.simp.SimpMessagingTemplate; @@ -31,7 +31,7 @@ protected LongRunningTasksWebSocketController(IdentifierResolver idResolver, Con } @SubscribeMapping("/update") - public void tasksRequest(@NonNull MessageHeaders messageHeaders) { + public void tasksRequest(@Nonnull MessageHeaders messageHeaders) { sendToSession(WebSocketDestinations.LONG_RUNNING_TASKS_UPDATE, registry.getTasks(), Map.of(), messageHeaders); } diff --git a/src/main/java/cz/cvut/kbss/termit/websocket/VocabularySocketController.java b/src/main/java/cz/cvut/kbss/termit/websocket/VocabularySocketController.java index 57578f45b..00c2e8b83 100644 --- a/src/main/java/cz/cvut/kbss/termit/websocket/VocabularySocketController.java +++ b/src/main/java/cz/cvut/kbss/termit/websocket/VocabularySocketController.java @@ -12,8 +12,8 @@ import cz.cvut.kbss.termit.util.Configuration; import cz.cvut.kbss.termit.util.Constants; import cz.cvut.kbss.termit.util.throttle.CacheableFuture; +import jakarta.annotation.Nonnull; import org.springframework.context.event.EventListener; -import org.springframework.lang.NonNull; import org.springframework.messaging.MessageHeaders; import org.springframework.messaging.handler.annotation.DestinationVariable; import org.springframework.messaging.handler.annotation.Header; @@ -49,7 +49,7 @@ protected VocabularySocketController(IdentifierResolver idResolver, Configuratio public void validateVocabulary(@DestinationVariable String localName, @Header(name = Constants.QueryParams.NAMESPACE, required = false) Optional namespace, - @NonNull MessageHeaders messageHeaders) { + @Nonnull MessageHeaders messageHeaders) { final URI identifier = resolveIdentifier(namespace.orElse(config.getNamespace().getVocabulary()), localName); final Vocabulary vocabulary = vocabularyService.getReference(identifier); @@ -108,15 +108,15 @@ public void onTermDefinitionTextAnalysisFinished(TermDefinitionTextAnalysisFinis ); } - protected @NonNull Map getHeaders(@NonNull VocabularyEvent event) { + protected @Nonnull Map getHeaders(@Nonnull VocabularyEvent event) { return getHeaders(event.getVocabularyIri()); } - protected @NonNull Map getHeaders(@NonNull URI vocabularyUri) { + protected @Nonnull Map getHeaders(@Nonnull URI vocabularyUri) { return getHeaders(vocabularyUri, Map.of()); } - protected @NonNull Map getHeaders(@NonNull URI vocabularyUri, Map headers) { + protected @Nonnull Map getHeaders(@Nonnull URI vocabularyUri, Map headers) { final Map headersMap = new HashMap<>(headers); headersMap.put("vocabulary", vocabularyUri); return headersMap; diff --git a/src/main/java/cz/cvut/kbss/termit/websocket/handler/StompExceptionHandler.java b/src/main/java/cz/cvut/kbss/termit/websocket/handler/StompExceptionHandler.java index 4981eed7c..4aeeb1883 100644 --- a/src/main/java/cz/cvut/kbss/termit/websocket/handler/StompExceptionHandler.java +++ b/src/main/java/cz/cvut/kbss/termit/websocket/handler/StompExceptionHandler.java @@ -1,6 +1,6 @@ package cz.cvut.kbss.termit.websocket.handler; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.messaging.Message; @@ -25,8 +25,8 @@ public StompExceptionHandler(WebSocketExceptionHandler webSocketExceptionHandler } @Override - protected @NotNull Message handleInternal(@NotNull StompHeaderAccessor errorHeaderAccessor, - byte @NotNull [] errorPayload, Throwable cause, + protected @Nonnull Message handleInternal(@Nonnull StompHeaderAccessor errorHeaderAccessor, + @Nonnull byte[] errorPayload, Throwable cause, StompHeaderAccessor clientHeaderAccessor) { final Message message = MessageBuilder.withPayload(errorPayload).setHeaders(errorHeaderAccessor).build(); boolean handled = false; diff --git a/src/test/java/cz/cvut/kbss/termit/environment/Transaction.java b/src/test/java/cz/cvut/kbss/termit/environment/Transaction.java index 3ccb06545..f14ecf92f 100644 --- a/src/test/java/cz/cvut/kbss/termit/environment/Transaction.java +++ b/src/test/java/cz/cvut/kbss/termit/environment/Transaction.java @@ -17,7 +17,7 @@ */ package cz.cvut.kbss.termit.environment; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.springframework.transaction.PlatformTransactionManager; import org.springframework.transaction.TransactionStatus; import org.springframework.transaction.support.TransactionCallbackWithoutResult; @@ -48,7 +48,7 @@ public static void execute(PlatformTransactionManager txManager, Runnable proced new TransactionTemplate(txManager).execute(new TransactionCallbackWithoutResult() { @Override - protected void doInTransactionWithoutResult(@NotNull TransactionStatus transactionStatus) { + protected void doInTransactionWithoutResult(@Nonnull TransactionStatus transactionStatus) { procedure.run(); } }); @@ -67,7 +67,7 @@ public static void executeReadOnly(PlatformTransactionManager txManager, Runnabl transaction.setReadOnly(true); new TransactionTemplate(txManager).execute(new TransactionCallbackWithoutResult() { @Override - protected void doInTransactionWithoutResult(@NotNull TransactionStatus transactionStatus) { + protected void doInTransactionWithoutResult(@Nonnull TransactionStatus transactionStatus) { procedure.run(); } }); diff --git a/src/test/java/cz/cvut/kbss/termit/environment/config/TestWebSocketConfig.java b/src/test/java/cz/cvut/kbss/termit/environment/config/TestWebSocketConfig.java index 1ce9b63fd..a3f6cd2ed 100644 --- a/src/test/java/cz/cvut/kbss/termit/environment/config/TestWebSocketConfig.java +++ b/src/test/java/cz/cvut/kbss/termit/environment/config/TestWebSocketConfig.java @@ -6,7 +6,7 @@ import cz.cvut.kbss.termit.security.WebSocketJwtAuthorizationInterceptor; import cz.cvut.kbss.termit.util.Configuration; import cz.cvut.kbss.termit.websocket.util.ReturnValueCollectingSimpMessagingTemplate; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.boot.test.context.TestConfiguration; @@ -60,7 +60,7 @@ public TestWebSocketConfig(List channels, List assertEquals(AssetService.MASK, ra.getLabel())); } - @NotNull + @Nonnull private List generateRecentlyModifiedWithForbiddenTerms() { final List allExpected = generateRecentlyModifiedAssets(6); when(assetDao.findLastEdited(any(Pageable.class))).thenReturn(new PageImpl<>(allExpected)); diff --git a/src/test/java/cz/cvut/kbss/termit/service/business/VocabularyServiceTest.java b/src/test/java/cz/cvut/kbss/termit/service/business/VocabularyServiceTest.java index 277c26714..6cc2d505d 100644 --- a/src/test/java/cz/cvut/kbss/termit/service/business/VocabularyServiceTest.java +++ b/src/test/java/cz/cvut/kbss/termit/service/business/VocabularyServiceTest.java @@ -41,7 +41,7 @@ import cz.cvut.kbss.termit.service.security.authorization.VocabularyAuthorizationService; import cz.cvut.kbss.termit.util.Configuration; import cz.cvut.kbss.termit.util.TypeAwareResource; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; @@ -233,7 +233,7 @@ void addAccessControlRecordRetrievesACLForVocabularyAndAddsSpecifiedRecordToIt() verify(aclService).addRecord(acl, record); } - @NotNull + @Nonnull private UserAccessControlRecord generateAccessControlRecord() { final UserAccessControlRecord record = new UserAccessControlRecord(); record.setHolder(Generator.generateUserWithId()); diff --git a/src/test/java/cz/cvut/kbss/termit/util/throttle/MockedThrottle.java b/src/test/java/cz/cvut/kbss/termit/util/throttle/MockedThrottle.java index 398b435ca..8ab60d143 100644 --- a/src/test/java/cz/cvut/kbss/termit/util/throttle/MockedThrottle.java +++ b/src/test/java/cz/cvut/kbss/termit/util/throttle/MockedThrottle.java @@ -1,6 +1,6 @@ package cz.cvut.kbss.termit.util.throttle; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import java.lang.annotation.Annotation; @@ -13,18 +13,18 @@ public class MockedThrottle implements Throttle { private String group; - public MockedThrottle(@NonNull String value, @NonNull String group) { + public MockedThrottle(@Nonnull String value, @Nonnull String group) { this.value = value; this.group = group; } @Override - public @NonNull String value() { + public @Nonnull String value() { return value; } @Override - public @NonNull String group() { + public @Nonnull String group() { return group; } @@ -38,11 +38,11 @@ public Class annotationType() { return Throttle.class; } - public void setValue(@NonNull String value) { + public void setValue(@Nonnull String value) { this.value = value; } - public void setGroup(@NonNull String group) { + public void setGroup(@Nonnull String group) { this.group = group; } } diff --git a/src/test/java/cz/cvut/kbss/termit/util/throttle/ScheduledFutureTask.java b/src/test/java/cz/cvut/kbss/termit/util/throttle/ScheduledFutureTask.java index f48c43dbd..eb6bfb082 100644 --- a/src/test/java/cz/cvut/kbss/termit/util/throttle/ScheduledFutureTask.java +++ b/src/test/java/cz/cvut/kbss/termit/util/throttle/ScheduledFutureTask.java @@ -1,6 +1,6 @@ package cz.cvut.kbss.termit.util.throttle; -import org.springframework.lang.NonNull; +import jakarta.annotation.Nonnull; import java.util.concurrent.Callable; import java.util.concurrent.Delayed; @@ -10,21 +10,21 @@ public class ScheduledFutureTask extends FutureTask implements ScheduledFuture { - public ScheduledFutureTask(@NonNull Callable callable) { + public ScheduledFutureTask(@Nonnull Callable callable) { super(callable); } - public ScheduledFutureTask(@NonNull Runnable runnable, T result) { + public ScheduledFutureTask(@Nonnull Runnable runnable, T result) { super(runnable, result); } @Override - public long getDelay(@NonNull TimeUnit unit) { + public long getDelay(@Nonnull TimeUnit unit) { throw new UnsupportedOperationException("Not implemented"); } @Override - public int compareTo(@NonNull Delayed o) { + public int compareTo(@Nonnull Delayed o) { throw new UnsupportedOperationException("Not implemented"); } } diff --git a/src/test/java/cz/cvut/kbss/termit/websocket/BaseWebSocketIntegrationTestRunner.java b/src/test/java/cz/cvut/kbss/termit/websocket/BaseWebSocketIntegrationTestRunner.java index a8cd731c5..fa9563fac 100644 --- a/src/test/java/cz/cvut/kbss/termit/websocket/BaseWebSocketIntegrationTestRunner.java +++ b/src/test/java/cz/cvut/kbss/termit/websocket/BaseWebSocketIntegrationTestRunner.java @@ -16,7 +16,7 @@ import cz.cvut.kbss.termit.util.longrunning.LongRunningTasksRegistry; import cz.cvut.kbss.termit.websocket.handler.StompExceptionHandler; import cz.cvut.kbss.termit.websocket.handler.WebSocketExceptionHandler; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.extension.ExtendWith; @@ -150,22 +150,22 @@ public void afterConnected(StompSession session, StompHeaders connectedHeaders) } @Override - public void handleFrame(@NotNull StompHeaders headers, Object payload) { + public void handleFrame(@Nonnull StompHeaders headers, Object payload) { super.handleFrame(headers, payload); exception.set(new Exception(headers.toString())); LOG.error("STOMP frame: {}", headers); } @Override - public void handleException(@NotNull StompSession session, StompCommand command, @NotNull StompHeaders headers, - byte @NotNull [] payload, @NotNull Throwable exception) { + public void handleException(@Nonnull StompSession session, StompCommand command, @Nonnull StompHeaders headers, + @Nonnull byte[] payload, @Nonnull Throwable exception) { super.handleException(session, command, headers, payload, exception); this.exception.set(exception); LOG.error("STOMP exception", exception); } @Override - public void handleTransportError(@NotNull StompSession session, @NotNull Throwable exception) { + public void handleTransportError(@Nonnull StompSession session, @Nonnull Throwable exception) { super.handleTransportError(session, exception); this.exception.set(exception); LOG.error("STOMP transport error", exception); diff --git a/src/test/java/cz/cvut/kbss/termit/websocket/util/CachingChannelInterceptor.java b/src/test/java/cz/cvut/kbss/termit/websocket/util/CachingChannelInterceptor.java index 43a454b81..d98a3c1a6 100644 --- a/src/test/java/cz/cvut/kbss/termit/websocket/util/CachingChannelInterceptor.java +++ b/src/test/java/cz/cvut/kbss/termit/websocket/util/CachingChannelInterceptor.java @@ -1,6 +1,6 @@ package cz.cvut.kbss.termit.websocket.util; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.springframework.messaging.Message; import org.springframework.messaging.MessageChannel; import org.springframework.messaging.support.ChannelInterceptor; @@ -17,7 +17,7 @@ public class CachingChannelInterceptor implements ChannelInterceptor { private final BlockingQueue> messages = new ArrayBlockingQueue<>(100); @Override - public Message preSend(@NotNull Message message, @NotNull MessageChannel channel) { + public Message preSend(@Nonnull Message message, @Nonnull MessageChannel channel) { this.messages.add(message); return message; } diff --git a/src/test/java/cz/cvut/kbss/termit/websocket/util/ReturnValueCollectingSimpMessagingTemplate.java b/src/test/java/cz/cvut/kbss/termit/websocket/util/ReturnValueCollectingSimpMessagingTemplate.java index 6a9dd91a5..ea6ee4004 100644 --- a/src/test/java/cz/cvut/kbss/termit/websocket/util/ReturnValueCollectingSimpMessagingTemplate.java +++ b/src/test/java/cz/cvut/kbss/termit/websocket/util/ReturnValueCollectingSimpMessagingTemplate.java @@ -1,6 +1,6 @@ package cz.cvut.kbss.termit.websocket.util; -import org.jetbrains.annotations.NotNull; +import jakarta.annotation.Nonnull; import org.springframework.messaging.Message; import org.springframework.messaging.MessageChannel; import org.springframework.messaging.core.MessagePostProcessor; @@ -28,7 +28,7 @@ public ReturnValueCollectingSimpMessagingTemplate(MessageChannel messageChannel, } @Override - protected @NotNull Message doConvert(@NotNull Object payload, Map headers, + protected @Nonnull Message doConvert(@Nonnull Object payload, Map headers, MessagePostProcessor postProcessor) { final Message converted = super.doConvert(payload, headers, postProcessor);