├── .codecov.yml ├── .gitattributes ├── .github ├── keys │ ├── cloudrepo.properties.gpg │ ├── deploy_key_rsa.gpg │ ├── firebase-sa.json.gpg │ ├── gcs-auth-key.json.gpg │ ├── gradle-plugin-portal.secret.properties.gpg │ └── maven-publisher.json.gpg └── workflows │ ├── build-on-ubuntu.yml │ ├── build-on-windows.yml │ ├── ensure-reports-updated.yml │ ├── gradle-wrapper-validation.yml │ ├── increment-guard.yml │ ├── publish.yml │ └── remove-obsolete-artifacts-from-packages.yaml ├── .gitignore ├── .gitmodules ├── .idea ├── codeStyleSettings.xml ├── codeStyles │ ├── Project.xml │ └── codeStyleConfig.xml ├── copyright │ ├── TeamDev_Open_Source.xml │ └── profiles_settings.xml ├── dictionaries │ └── common.xml ├── filetypes │ └── Google Protobuf.xml ├── inspectionProfiles │ └── Project_Default.xml ├── live-templates │ ├── README.md │ ├── Spine.xml │ └── User.xml └── misc.xml ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── build.gradle.kts ├── buildSrc ├── aus.weis ├── build.gradle.kts └── src │ └── main │ ├── kotlin │ ├── BuildExtensions.kt │ ├── BuildSettings.kt │ ├── DependencyResolution.kt │ ├── DocumentationSettings.kt │ ├── DokkaExts.kt │ ├── LicenseSettings.kt │ ├── Strings.kt │ ├── compile-protobuf.gradle.kts │ ├── config-tester.gradle.kts │ ├── detekt-code-analysis.gradle.kts │ ├── dokka-for-java.gradle.kts │ ├── dokka-for-kotlin.gradle.kts │ ├── io │ │ └── spine │ │ │ ├── dependency │ │ │ ├── Dependency.kt │ │ │ ├── boms │ │ │ │ ├── Boms.kt │ │ │ │ └── BomsPlugin.kt │ │ │ ├── build │ │ │ │ ├── AnimalSniffer.kt │ │ │ │ ├── CheckStyle.kt │ │ │ │ ├── CheckerFramework.kt │ │ │ │ ├── Dokka.kt │ │ │ │ ├── ErrorProne.kt │ │ │ │ ├── FindBugs.kt │ │ │ │ ├── GradleDoctor.kt │ │ │ │ ├── JSpecify.kt │ │ │ │ ├── Ksp.kt │ │ │ │ ├── LicenseReport.kt │ │ │ │ ├── OsDetector.kt │ │ │ │ ├── PluginPublishPlugin.kt │ │ │ │ └── Pmd.kt │ │ │ ├── kotlinx │ │ │ │ ├── Coroutines.kt │ │ │ │ ├── KotlinX.kt │ │ │ │ └── Serialization.kt │ │ │ ├── lib │ │ │ │ ├── Aedile.kt │ │ │ │ ├── ApacheHttp.kt │ │ │ │ ├── AppEngine.kt │ │ │ │ ├── Asm.kt │ │ │ │ ├── Auto.kt │ │ │ │ ├── BouncyCastle.kt │ │ │ │ ├── Caffeine.kt │ │ │ │ ├── Clikt.kt │ │ │ │ ├── CommonsCli.kt │ │ │ │ ├── CommonsCodec.kt │ │ │ │ ├── CommonsLogging.kt │ │ │ │ ├── Coroutines.kt │ │ │ │ ├── Firebase.kt │ │ │ │ ├── Flogger.kt │ │ │ │ ├── GoogleApis.kt │ │ │ │ ├── GoogleCloud.kt │ │ │ │ ├── Grpc.kt │ │ │ │ ├── GrpcKotlin.kt │ │ │ │ ├── Gson.kt │ │ │ │ ├── Guava.kt │ │ │ │ ├── HttpClient.kt │ │ │ │ ├── IntelliJ.kt │ │ │ │ ├── J2ObjC.kt │ │ │ │ ├── Jackson.kt │ │ │ │ ├── JavaDiffUtils.kt │ │ │ │ ├── JavaJwt.kt │ │ │ │ ├── JavaPoet.kt │ │ │ │ ├── JavaX.kt │ │ │ │ ├── Klaxon.kt │ │ │ │ ├── Kotlin.kt │ │ │ │ ├── KotlinPoet.kt │ │ │ │ ├── KotlinSemver.kt │ │ │ │ ├── KotlinX.kt │ │ │ │ ├── Log4j2.kt │ │ │ │ ├── Netty.kt │ │ │ │ ├── Okio.kt │ │ │ │ ├── Plexus.kt │ │ │ │ ├── Protobuf.kt │ │ │ │ ├── Roaster.kt │ │ │ │ └── Slf4J.kt │ │ │ ├── local │ │ │ │ ├── ArtifactVersion.kt │ │ │ │ ├── Base.kt │ │ │ │ ├── BaseTypes.kt │ │ │ │ ├── Change.kt │ │ │ │ ├── CoreJava.kt │ │ │ │ ├── Logging.kt │ │ │ │ ├── McJava.kt │ │ │ │ ├── ModelCompiler.kt │ │ │ │ ├── ProtoData.kt │ │ │ │ ├── ProtoTap.kt │ │ │ │ ├── Reflect.kt │ │ │ │ ├── Spine.kt │ │ │ │ ├── TestLib.kt │ │ │ │ ├── Text.kt │ │ │ │ ├── Time.kt │ │ │ │ ├── ToolBase.kt │ │ │ │ └── Validation.kt │ │ │ └── test │ │ │ │ ├── AssertK.kt │ │ │ │ ├── Hamcrest.kt │ │ │ │ ├── JUnit.kt │ │ │ │ ├── Jacoco.kt │ │ │ │ ├── Kotest.kt │ │ │ │ ├── KotlinCompileTesting.kt │ │ │ │ ├── Kover.kt │ │ │ │ ├── OpenTest4J.kt │ │ │ │ ├── SystemLambda.kt │ │ │ │ ├── TestKitTruth.kt │ │ │ │ └── Truth.kt │ │ │ ├── docs │ │ │ └── MarkdownDocument.kt │ │ │ └── gradle │ │ │ ├── Build.kt │ │ │ ├── Clean.kt │ │ │ ├── ConfigTester.kt │ │ │ ├── ProjectExtensions.kt │ │ │ ├── RunBuild.kt │ │ │ ├── RunGradle.kt │ │ │ ├── Runtime.kt │ │ │ ├── StringExtensions.kt │ │ │ ├── TaskName.kt │ │ │ ├── VersionWriter.kt │ │ │ ├── base │ │ │ └── Tasks.kt │ │ │ ├── checkstyle │ │ │ └── CheckStyleConfig.kt │ │ │ ├── dart │ │ │ ├── DartContext.kt │ │ │ ├── DartEnvironment.kt │ │ │ ├── DartExtension.kt │ │ │ ├── plugin │ │ │ │ ├── DartPlugins.kt │ │ │ │ └── Protobuf.kt │ │ │ └── task │ │ │ │ ├── Build.kt │ │ │ │ ├── DartTasks.kt │ │ │ │ ├── IntegrationTest.kt │ │ │ │ └── Publish.kt │ │ │ ├── dokka │ │ │ ├── DokkaExtensions.kt │ │ │ └── TaskContainerExtensions.kt │ │ │ ├── fs │ │ │ └── LazyTempPath.kt │ │ │ ├── git │ │ │ ├── Branch.kt │ │ │ ├── Repository.kt │ │ │ └── UserInfo.kt │ │ │ ├── github │ │ │ └── pages │ │ │ │ ├── AuthorEmail.kt │ │ │ │ ├── RepositoryExtensions.kt │ │ │ │ ├── SshKey.kt │ │ │ │ ├── TaskName.kt │ │ │ │ ├── Update.kt │ │ │ │ ├── UpdateGitHubPages.kt │ │ │ │ └── UpdateGitHubPagesExtension.kt │ │ │ ├── java │ │ │ └── Tasks.kt │ │ │ ├── javac │ │ │ ├── ErrorProne.kt │ │ │ └── Javac.kt │ │ │ ├── javadoc │ │ │ ├── Encoding.kt │ │ │ ├── ExcludeInternalDoclet.kt │ │ │ ├── JavadocConfig.kt │ │ │ └── JavadocTag.kt │ │ │ ├── javascript │ │ │ ├── JsContext.kt │ │ │ ├── JsEnvironment.kt │ │ │ ├── JsExtension.kt │ │ │ ├── plugin │ │ │ │ ├── Idea.kt │ │ │ │ ├── JsPlugins.kt │ │ │ │ ├── McJs.kt │ │ │ │ └── Protobuf.kt │ │ │ └── task │ │ │ │ ├── Assemble.kt │ │ │ │ ├── Check.kt │ │ │ │ ├── Clean.kt │ │ │ │ ├── IntegrationTest.kt │ │ │ │ ├── JsTasks.kt │ │ │ │ ├── LicenseReport.kt │ │ │ │ ├── Publish.kt │ │ │ │ └── Webpack.kt │ │ │ ├── kotlin │ │ │ └── KotlinConfig.kt │ │ │ ├── protobuf │ │ │ └── ProtoTaskExtensions.kt │ │ │ ├── publish │ │ │ ├── CheckVersionIncrement.kt │ │ │ ├── CloudArtifactRegistry.kt │ │ │ ├── CloudRepo.kt │ │ │ ├── CustomPublicationHandler.kt │ │ │ ├── GitHubPackages.kt │ │ │ ├── IncrementGuard.kt │ │ │ ├── JarDsl.kt │ │ │ ├── ProtoExts.kt │ │ │ ├── PublicationHandler.kt │ │ │ ├── PublishingExts.kt │ │ │ ├── PublishingRepos.kt │ │ │ ├── SpinePublishing.kt │ │ │ └── StandardJavaPublicationHandler.kt │ │ │ ├── repo │ │ │ ├── Credentials.kt │ │ │ ├── RepoSlug.kt │ │ │ ├── Repositories.kt │ │ │ └── Repository.kt │ │ │ ├── report │ │ │ ├── coverage │ │ │ │ ├── CodebaseFilter.kt │ │ │ │ ├── FileExtension.kt │ │ │ │ ├── FileExtensions.kt │ │ │ │ ├── FileFilter.kt │ │ │ │ ├── JacocoConfig.kt │ │ │ │ ├── PathMarker.kt │ │ │ │ └── TaskName.kt │ │ │ ├── license │ │ │ │ ├── Configuration.kt │ │ │ │ ├── LicenseReporter.kt │ │ │ │ ├── MarkdownReportRenderer.kt │ │ │ │ ├── ModuleDataExtensions.kt │ │ │ │ ├── Paths.kt │ │ │ │ ├── ProjectDependencies.kt │ │ │ │ ├── Tasks.kt │ │ │ │ └── Template.kt │ │ │ └── pom │ │ │ │ ├── DependencyScope.kt │ │ │ │ ├── DependencyWriter.kt │ │ │ │ ├── InceptionYear.kt │ │ │ │ ├── MarkupExtensions.kt │ │ │ │ ├── ModuleDependency.kt │ │ │ │ ├── PomFormatting.kt │ │ │ │ ├── PomGenerator.kt │ │ │ │ ├── PomXmlWriter.kt │ │ │ │ ├── ProjectMetadata.kt │ │ │ │ ├── ScopedDependency.kt │ │ │ │ └── SpineLicense.kt │ │ │ └── testing │ │ │ ├── Logging.kt │ │ │ ├── Multiproject.kt │ │ │ └── Tasks.kt │ ├── jacoco-kmm-jvm.gradle.kts │ ├── jacoco-kotlin-jvm.gradle.kts │ ├── jvm-module.gradle.kts │ ├── module-testing.gradle.kts │ ├── pmd-settings.gradle.kts │ └── write-manifest.gradle.kts │ └── resources │ └── dokka │ ├── assets │ └── logo-icon.svg │ └── styles │ └── custom-styles.css ├── client ├── build.gradle.kts └── src │ ├── main │ ├── java │ │ └── io │ │ │ └── spine │ │ │ ├── client │ │ │ ├── ActorRequestFactory.java │ │ │ ├── ArchivedColumn.java │ │ │ ├── Client.java │ │ │ ├── ClientRequest.java │ │ │ ├── ClientRequestBase.java │ │ │ ├── CommandFactory.java │ │ │ ├── CommandRequest.java │ │ │ ├── CompositeEntityStateFilter.java │ │ │ ├── CompositeEventFilter.java │ │ │ ├── CompositeFilterMixin.java │ │ │ ├── CompositeMessageFilter.java │ │ │ ├── CompositeQueryFilter.java │ │ │ ├── ConsumerErrorHandler.java │ │ │ ├── Consumers.java │ │ │ ├── DelegatingConsumer.java │ │ │ ├── DeletedColumn.java │ │ │ ├── DeliveringMultiEventObserver.java │ │ │ ├── EntityLifecycleColumn.java │ │ │ ├── EntityQueryToProto.java │ │ │ ├── EntityStateFilter.java │ │ │ ├── ErrorHandler.java │ │ │ ├── EventConsumer.java │ │ │ ├── EventConsumers.java │ │ │ ├── EventFilter.java │ │ │ ├── EventSubscriptionRequest.java │ │ │ ├── EventsAfterCommand.java │ │ │ ├── FilterMixin.java │ │ │ ├── FilteringField.java │ │ │ ├── FilteringRequest.java │ │ │ ├── Filters.java │ │ │ ├── LoggingConsumerErrorHandler.java │ │ │ ├── LoggingErrorHandler.java │ │ │ ├── LoggingHandler.java │ │ │ ├── LoggingHandlerWithType.java │ │ │ ├── LoggingServerErrorHandler.java │ │ │ ├── LoggingTypeErrorHandler.java │ │ │ ├── MessageConsumer.java │ │ │ ├── MessageFilter.java │ │ │ ├── MultiEventConsumers.java │ │ │ ├── NoLongerMatchingConsumer.java │ │ │ ├── NoLongerMatchingFilter.java │ │ │ ├── OperatorEvaluator.java │ │ │ ├── QueryBuilder.java │ │ │ ├── QueryFactory.java │ │ │ ├── QueryFilter.java │ │ │ ├── QueryMixin.java │ │ │ ├── QueryRequest.java │ │ │ ├── QueryResponseMixin.java │ │ │ ├── ResponseFormats.java │ │ │ ├── ServerErrorHandler.java │ │ │ ├── StateConsumer.java │ │ │ ├── StateConsumers.java │ │ │ ├── SubscribingRequest.java │ │ │ ├── SubscriptionMixin.java │ │ │ ├── SubscriptionObserver.java │ │ │ ├── SubscriptionRequest.java │ │ │ ├── SubscriptionUpdateMixin.java │ │ │ ├── Subscriptions.java │ │ │ ├── TargetBuilder.java │ │ │ ├── TargetMixin.java │ │ │ ├── Targets.java │ │ │ ├── ThreadSafeObserver.java │ │ │ ├── Timeout.java │ │ │ ├── TopicBuilder.java │ │ │ ├── TopicFactory.java │ │ │ ├── TypedCompositeFilter.java │ │ │ ├── TypedFilter.java │ │ │ ├── VersionColumn.java │ │ │ └── package-info.java │ │ │ └── grpc │ │ │ ├── CompositeObserver.java │ │ │ ├── DelegatingObserver.java │ │ │ ├── MemoizingObserver.java │ │ │ ├── MetadataConverter.java │ │ │ ├── StreamObservers.java │ │ │ └── package-info.java │ ├── kotlin │ │ └── io │ │ │ └── spine │ │ │ └── client │ │ │ └── ClientExts.kt │ └── proto │ │ └── spine │ │ └── client │ │ ├── command_service.proto │ │ ├── entities.proto │ │ ├── filters.proto │ │ ├── query.proto │ │ ├── query_service.proto │ │ ├── subscription.proto │ │ └── subscription_service.proto │ └── test │ ├── java │ └── io │ │ └── spine │ │ ├── client │ │ ├── EntityQueryToProtoTest.java │ │ ├── EntityStateFilterTest.java │ │ ├── EventFilterTest.java │ │ ├── FilterMixinTest.java │ │ ├── FiltersTest.java │ │ ├── OperatorAssertions.java │ │ ├── OperatorEvaluatorTest.java │ │ ├── QueryBuilderSpec.kt │ │ ├── QueryFactoryTest.java │ │ ├── QueryFilterTest.java │ │ ├── QueryTest.java │ │ ├── ResponseFormatsTest.java │ │ ├── SubscriptionsTest.java │ │ ├── TargetMixinTest.java │ │ ├── TargetsTest.java │ │ ├── ThreadSafeObserverTest.java │ │ ├── TimeoutTest.java │ │ ├── TopicBuilderTest.java │ │ ├── TopicFactoryTest.java │ │ ├── given │ │ │ ├── CommandFactoryTestEnv.java │ │ │ ├── QueryBuilderTestEnv.java │ │ │ ├── QueryFactoryTestEnv.java │ │ │ ├── TargetsTestEnv.java │ │ │ ├── TestEntities.java │ │ │ ├── TopicFactoryTestEnv.java │ │ │ └── package-info.java │ │ └── package-info.java │ │ └── grpc │ │ ├── CompositeObserverTest.java │ │ ├── MetadataConverterTest.java │ │ └── StreamObserversTest.java │ ├── kotlin │ └── io │ │ └── spine │ │ ├── client │ │ ├── ActorRequestFactorySpec.kt │ │ └── CommandFactorySpec.kt │ │ └── core │ │ ├── CommandSpec.kt │ │ └── CommandsSpec.kt │ └── proto │ └── spine │ └── test │ ├── commands │ ├── command_factory_test_commands.proto │ └── commands.proto │ ├── events │ └── events.proto │ └── queries │ ├── client_requests.proto │ └── identifiers.proto ├── core ├── build.gradle.kts └── src │ ├── main │ ├── java │ │ └── io │ │ │ └── spine │ │ │ └── core │ │ │ ├── AcceptsContracts.java │ │ │ ├── AcceptsExternal.java │ │ │ ├── AcceptsFilters.java │ │ │ ├── Acks.java │ │ │ ├── BoundedContext.java │ │ │ ├── BoundedContextNameMixin.java │ │ │ ├── BoundedContextNames.java │ │ │ ├── CommandContextMixin.java │ │ │ ├── CommandIdMixin.java │ │ │ ├── CommandMixin.java │ │ │ ├── Commands.java │ │ │ ├── EnrichableMessageContext.java │ │ │ ├── Enrichments.java │ │ │ ├── EventContextField.java │ │ │ ├── EventContextMixin.java │ │ │ ├── EventField.java │ │ │ ├── EventIdMixin.java │ │ │ ├── EventMixin.java │ │ │ ├── Events.java │ │ │ ├── External.java │ │ │ ├── MessageIdMixin.java │ │ │ ├── OriginMixin.java │ │ │ ├── ResponseMixin.java │ │ │ ├── Responses.java │ │ │ ├── Signal.java │ │ │ ├── SignalContext.java │ │ │ ├── SignalId.java │ │ │ ├── Subscribe.java │ │ │ ├── VersionMixin.java │ │ │ ├── Versions.java │ │ │ ├── WithActor.java │ │ │ ├── WithTime.java │ │ │ └── package-info.java │ ├── kotlin │ │ └── io │ │ │ └── spine │ │ │ └── core │ │ │ ├── ContractFor.kt │ │ │ └── Where.kt │ └── proto │ │ └── spine │ │ └── core │ │ ├── ack.proto │ │ ├── actor_context.proto │ │ ├── bounded_context.proto │ │ ├── command.proto │ │ ├── diagnostics.proto │ │ ├── empty_context.proto │ │ ├── enrichment.proto │ │ ├── event.proto │ │ ├── response.proto │ │ ├── tenant_id.proto │ │ ├── user_id.proto │ │ └── version.proto │ └── test │ ├── kotlin │ └── io │ │ └── spine │ │ └── core │ │ ├── AcksTest.kt │ │ ├── ResponsesTest.kt │ │ ├── SignalTest.kt │ │ └── VersionsTest.kt │ └── proto │ └── spine │ └── test │ └── core │ ├── events.proto │ ├── project.proto │ └── task.proto ├── credentials.tar.enc ├── dependencies.md ├── gcs.properties ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── pom.xml ├── pull ├── scripts ├── dependent-repositories │ ├── gae-update-core-version.sh │ ├── jdbc-update-core-version.sh │ ├── update-dependency-version.sh │ └── update-dependent-repositories.sh ├── report-coverage.sh └── request-package-names.sh ├── server ├── build.gradle.kts └── src │ ├── main │ ├── docs │ │ └── io │ │ │ └── spine │ │ │ └── server │ │ │ └── delivery │ │ │ └── doc-files │ │ │ └── sharding-commands-flow.png │ ├── java │ │ └── io │ │ │ └── spine │ │ │ ├── server │ │ │ ├── AbstractServiceBuilder.java │ │ │ ├── BoundedContext.java │ │ │ ├── BoundedContextBuilder.java │ │ │ ├── Closeable.java │ │ │ ├── CommandService.java │ │ │ ├── ConnectionBuilder.java │ │ │ ├── ContextAware.java │ │ │ ├── ContextSpec.java │ │ │ ├── DefaultRepository.java │ │ │ ├── DeploymentDetector.java │ │ │ ├── DomainContext.java │ │ │ ├── EnvSetting.java │ │ │ ├── EventProducer.java │ │ │ ├── GrpcContainer.java │ │ │ ├── Identity.java │ │ │ ├── Ignored.java │ │ │ ├── MessageError.java │ │ │ ├── MessageInvalid.java │ │ │ ├── QueryService.java │ │ │ ├── Server.java │ │ │ ├── ServerEnvironment.java │ │ │ ├── ServiceDelegate.java │ │ │ ├── SubscriptionService.java │ │ │ ├── TypeDictionary.java │ │ │ ├── VisibilityGuard.java │ │ │ ├── aggregate │ │ │ │ ├── Aggregate.java │ │ │ │ ├── AggregateCommandEndpoint.java │ │ │ │ ├── AggregateEndpoint.java │ │ │ │ ├── AggregateEventEndpoint.java │ │ │ │ ├── AggregateEventReactionEndpoint.java │ │ │ │ ├── AggregateEventRecordColumn.java │ │ │ │ ├── AggregateEventStorage.java │ │ │ │ ├── AggregatePart.java │ │ │ │ ├── AggregatePartRepository.java │ │ │ │ ├── AggregateRecords.java │ │ │ │ ├── AggregateRepository.java │ │ │ │ ├── AggregateRoot.java │ │ │ │ ├── AggregateRootDirectory.java │ │ │ │ ├── AggregateStorage.java │ │ │ │ ├── AggregateTransaction.java │ │ │ │ ├── ApplierWatcher.java │ │ │ │ ├── Apply.java │ │ │ │ ├── DefaultAggregatePartRepository.java │ │ │ │ ├── DefaultAggregateRepository.java │ │ │ │ ├── EventImportDispatcher.java │ │ │ │ ├── EventImportEndpoint.java │ │ │ │ ├── HistoryBackwardOperation.java │ │ │ │ ├── IdempotencyGuard.java │ │ │ │ ├── ImportBus.java │ │ │ │ ├── ImportValidator.java │ │ │ │ ├── InMemoryRootDirectory.java │ │ │ │ ├── ReadOperation.java │ │ │ │ ├── TruncateOperation.java │ │ │ │ ├── UncommittedEvents.java │ │ │ │ ├── UncommittedHistory.java │ │ │ │ ├── UnsupportedImportEventException.java │ │ │ │ ├── VersionSequence.java │ │ │ │ ├── model │ │ │ │ │ ├── AggregateClass.java │ │ │ │ │ ├── AggregatePartClass.java │ │ │ │ │ ├── AllowImportAttribute.java │ │ │ │ │ ├── Applier.java │ │ │ │ │ ├── EventApplierSignature.java │ │ │ │ │ ├── PartFactory.java │ │ │ │ │ └── package-info.java │ │ │ │ └── package-info.java │ │ │ ├── bus │ │ │ │ ├── Bus.java │ │ │ │ ├── BusBuilder.java │ │ │ │ ├── BusFilter.java │ │ │ │ ├── DeadMessageFilter.java │ │ │ │ ├── DeadMessageHandler.java │ │ │ │ ├── DelegatingDispatcher.java │ │ │ │ ├── DispatcherDelegate.java │ │ │ │ ├── DispatcherRegistry.java │ │ │ │ ├── EnvelopeValidator.java │ │ │ │ ├── FilterChain.java │ │ │ │ ├── Listener.java │ │ │ │ ├── Listeners.java │ │ │ │ ├── MessageDispatcher.java │ │ │ │ ├── MessageUnhandled.java │ │ │ │ ├── MulticastBus.java │ │ │ │ ├── MulticastDispatchListener.java │ │ │ │ ├── MulticastDispatcher.java │ │ │ │ ├── UnicastBus.java │ │ │ │ ├── UnicastDispatcher.java │ │ │ │ ├── ValidatingFilter.java │ │ │ │ └── package-info.java │ │ │ ├── command │ │ │ │ ├── AbstractAssignee.java │ │ │ │ ├── AbstractCommandDispatcher.java │ │ │ │ ├── AbstractCommander.java │ │ │ │ ├── Assign.java │ │ │ │ ├── Assignee.java │ │ │ │ ├── AssigneeEntity.java │ │ │ │ ├── Command.java │ │ │ │ ├── CommandReceiver.java │ │ │ │ ├── Commander.java │ │ │ │ ├── DispatchCommand.java │ │ │ │ ├── model │ │ │ │ │ ├── AbstractCommandHandlingClass.java │ │ │ │ │ ├── AssigneeClass.java │ │ │ │ │ ├── AssigneeReceptor.java │ │ │ │ │ ├── AssigneeSignature.java │ │ │ │ │ ├── CommandAcceptingSignature.java │ │ │ │ │ ├── CommandHandlingClass.java │ │ │ │ │ ├── CommandReactionSignature.java │ │ │ │ │ ├── CommandReceptor.java │ │ │ │ │ ├── CommandSubstituteSignature.java │ │ │ │ │ ├── CommandSubstituter.java │ │ │ │ │ ├── CommanderClass.java │ │ │ │ │ ├── CommandingClass.java │ │ │ │ │ ├── CommandingMethod.java │ │ │ │ │ ├── CommandingReaction.java │ │ │ │ │ ├── DuplicateHandlerCheck.java │ │ │ │ │ └── package-info.java │ │ │ │ └── package-info.java │ │ │ ├── commandbus │ │ │ │ ├── AckRejectionPublisher.java │ │ │ │ ├── CommandAckMonitor.java │ │ │ │ ├── CommandBus.java │ │ │ │ ├── CommandDispatcher.java │ │ │ │ ├── CommandDispatcherDelegate.java │ │ │ │ ├── CommandDispatcherRegistry.java │ │ │ │ ├── CommandException.java │ │ │ │ ├── CommandFilter.java │ │ │ │ ├── CommandFlowWatcher.java │ │ │ │ ├── CommandReceivedTap.java │ │ │ │ ├── CommandScheduler.java │ │ │ │ ├── CommandValidator.java │ │ │ │ ├── DeadCommandHandler.java │ │ │ │ ├── DelegatingCommandDispatcher.java │ │ │ │ ├── ExecutorCommandScheduler.java │ │ │ │ ├── FlightRecorder.java │ │ │ │ ├── InvalidCommandException.java │ │ │ │ ├── UnsupportedCommandException.java │ │ │ │ └── package-info.java │ │ │ ├── delivery │ │ │ │ ├── AbstractMessageEndpoint.java │ │ │ │ ├── AbstractWorkRegistry.java │ │ │ │ ├── AlreadyPickedUp.java │ │ │ │ ├── BatchDeliveryListener.java │ │ │ │ ├── CatchUpAlreadyStartedException.java │ │ │ │ ├── CatchUpColumn.java │ │ │ │ ├── CatchUpEventFactory.java │ │ │ │ ├── CatchUpMessageComparator.java │ │ │ │ ├── CatchUpMessages.java │ │ │ │ ├── CatchUpMixin.java │ │ │ │ ├── CatchUpProcess.java │ │ │ │ ├── CatchUpProcessBuilder.java │ │ │ │ ├── CatchUpRepositories.java │ │ │ │ ├── CatchUpSignal.java │ │ │ │ ├── CatchUpStarter.java │ │ │ │ ├── CatchUpStation.java │ │ │ │ ├── CatchUpStorage.java │ │ │ │ ├── CleanupStation.java │ │ │ │ ├── CommandEndpoint.java │ │ │ │ ├── Conveyor.java │ │ │ │ ├── ConveyorJob.java │ │ │ │ ├── DeliveredMessagesCache.java │ │ │ │ ├── Delivery.java │ │ │ │ ├── DeliveryAction.java │ │ │ │ ├── DeliveryBuilder.java │ │ │ │ ├── DeliveryDispatchListener.java │ │ │ │ ├── DeliveryErrors.java │ │ │ │ ├── DeliveryMonitor.java │ │ │ │ ├── DeliveryStats.java │ │ │ │ ├── DeliveryStrategy.java │ │ │ │ ├── DispatchingId.java │ │ │ │ ├── Endpoints.java │ │ │ │ ├── EventEndpoint.java │ │ │ │ ├── FailedPickUp.java │ │ │ │ ├── FailedReception.java │ │ │ │ ├── GroupByTargetAndDeliver.java │ │ │ │ ├── Inbox.java │ │ │ │ ├── InboxColumn.java │ │ │ │ ├── InboxDeliveries.java │ │ │ │ ├── InboxIds.java │ │ │ │ ├── InboxMessageComparator.java │ │ │ │ ├── InboxMessageMixin.java │ │ │ │ ├── InboxOfCommands.java │ │ │ │ ├── InboxOfEvents.java │ │ │ │ ├── InboxPage.java │ │ │ │ ├── InboxPart.java │ │ │ │ ├── InboxStorage.java │ │ │ │ ├── InboxWriter.java │ │ │ │ ├── LabelNotFoundException.java │ │ │ │ ├── LazyEndpoint.java │ │ │ │ ├── LiveDeliveryStation.java │ │ │ │ ├── LocalDispatchingObserver.java │ │ │ │ ├── MaintenanceStation.java │ │ │ │ ├── MessageEndpoint.java │ │ │ │ ├── NoOpInboxStorage.java │ │ │ │ ├── NotifyingWriter.java │ │ │ │ ├── Page.java │ │ │ │ ├── PickUpOutcomeMixin.java │ │ │ │ ├── RepeatDispatching.java │ │ │ │ ├── RunResult.java │ │ │ │ ├── RuntimeFailure.java │ │ │ │ ├── Segment.java │ │ │ │ ├── ShardEvent.java │ │ │ │ ├── ShardMaintenanceProcess.java │ │ │ │ ├── ShardObserver.java │ │ │ │ ├── ShardProcessingSession.java │ │ │ │ ├── ShardedMessageDelivery.java │ │ │ │ ├── ShardedRecord.java │ │ │ │ ├── ShardedWorkRegistry.java │ │ │ │ ├── Station.java │ │ │ │ ├── TargetDelivery.java │ │ │ │ ├── Turbulence.java │ │ │ │ ├── UniformAcrossAllShards.java │ │ │ │ ├── UpdateShardProcessingEvents.java │ │ │ │ ├── VersionCounter.java │ │ │ │ ├── memory │ │ │ │ │ ├── InMemoryShardedWorkRegistry.java │ │ │ │ │ └── package-info.java │ │ │ │ └── package-info.java │ │ │ ├── dispatch │ │ │ │ ├── BatchDispatchOutcomeMixin.java │ │ │ │ ├── DispatchOutcomeHandler.java │ │ │ │ ├── DispatchOutcomeMixin.java │ │ │ │ ├── DispatchOutcomes.java │ │ │ │ ├── IgnoreMixin.java │ │ │ │ ├── InterruptionMixin.java │ │ │ │ ├── OutcomeHandler.java │ │ │ │ ├── ProducedCommandsMixin.java │ │ │ │ ├── ProducedEventsMixin.java │ │ │ │ ├── SuccessMixin.java │ │ │ │ └── package-info.java │ │ │ ├── enrich │ │ │ │ ├── CompositeFn.java │ │ │ │ ├── Enricher.java │ │ │ │ ├── EnricherBuilder.java │ │ │ │ ├── EnrichmentFn.java │ │ │ │ ├── EnrichmentService.java │ │ │ │ ├── EventEnrichmentFn.java │ │ │ │ ├── Schema.java │ │ │ │ ├── SchemaFn.java │ │ │ │ ├── SingularFn.java │ │ │ │ └── package-info.java │ │ │ ├── entity │ │ │ │ ├── AbstractEntity.java │ │ │ │ ├── BatchDispatch.java │ │ │ │ ├── CommandDispatchingPhase.java │ │ │ │ ├── CompositeEventFilter.java │ │ │ │ ├── DefaultConverter.java │ │ │ │ ├── DefaultEntityFactory.java │ │ │ │ ├── DefaultRecordBasedRepository.java │ │ │ │ ├── Entity.java │ │ │ │ ├── EntityFactory.java │ │ │ │ ├── EntityLifecycle.java │ │ │ │ ├── EntityLifecycleMonitor.java │ │ │ │ ├── EntityMessageEndpoint.java │ │ │ │ ├── EntityStateChangedFilter.java │ │ │ │ ├── EventBlackList.java │ │ │ │ ├── EventDispatchingPhase.java │ │ │ │ ├── EventDispatchingRepository.java │ │ │ │ ├── EventFieldFilter.java │ │ │ │ ├── EventFilter.java │ │ │ │ ├── EventPlayer.java │ │ │ │ ├── EventPlayingTransaction.java │ │ │ │ ├── EventProducingRepository.java │ │ │ │ ├── EventWhiteList.java │ │ │ │ ├── FieldMasks.java │ │ │ │ ├── HasLifecycleColumns.java │ │ │ │ ├── HasVersionColumn.java │ │ │ │ ├── IdField.java │ │ │ │ ├── InvalidEntityStateException.java │ │ │ │ ├── Migration.java │ │ │ │ ├── NoOpEventFilter.java │ │ │ │ ├── Phase.java │ │ │ │ ├── QueryableRepository.java │ │ │ │ ├── RecentHistory.java │ │ │ │ ├── RecordBasedRepository.java │ │ │ │ ├── Repository.java │ │ │ │ ├── RepositoryCache.java │ │ │ │ ├── SilentWitness.java │ │ │ │ ├── StorageConverter.java │ │ │ │ ├── Transaction.java │ │ │ │ ├── TransactionListener.java │ │ │ │ ├── TransactionalEntity.java │ │ │ │ ├── TransactionalEventPlayer.java │ │ │ │ ├── VersionIncrement.java │ │ │ │ ├── WithLifecycle.java │ │ │ │ ├── model │ │ │ │ │ ├── AbstractEntityFactory.java │ │ │ │ │ ├── AssigneeEntityClass.java │ │ │ │ │ ├── EntityClass.java │ │ │ │ │ ├── StateClass.java │ │ │ │ │ ├── StateSubscribingClass.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── package-info.java │ │ │ │ ├── rejection │ │ │ │ │ ├── StandardRejection.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── status │ │ │ │ │ └── package-info.java │ │ │ │ └── storage │ │ │ │ │ ├── AsEntityRecordColumn.java │ │ │ │ │ ├── EntityColumns.java │ │ │ │ │ ├── EntityRecordColumn.java │ │ │ │ │ ├── EntityRecordStorage.java │ │ │ │ │ ├── SpecScanner.java │ │ │ │ │ ├── StateColumns.java │ │ │ │ │ ├── ToEntityRecordQuery.java │ │ │ │ │ └── package-info.java │ │ │ ├── event │ │ │ │ ├── AbstractEventReactor.java │ │ │ │ ├── AbstractEventSubscriber.java │ │ │ │ ├── AbstractStatefulReactor.java │ │ │ │ ├── DeadEventTap.java │ │ │ │ ├── DelegatingEventDispatcher.java │ │ │ │ ├── EventBus.java │ │ │ │ ├── EventComparator.java │ │ │ │ ├── EventDispatch.java │ │ │ │ ├── EventDispatcher.java │ │ │ │ ├── EventDispatcherDelegate.java │ │ │ │ ├── EventDispatcherRegistry.java │ │ │ │ ├── EventEnricher.java │ │ │ │ ├── EventException.java │ │ │ │ ├── EventFactory.java │ │ │ │ ├── EventOrigin.java │ │ │ │ ├── EventReactor.java │ │ │ │ ├── EventReceiver.java │ │ │ │ ├── EventStore.java │ │ │ │ ├── EventStreamQueryMixin.java │ │ │ │ ├── EventSubscriber.java │ │ │ │ ├── EventValidator.java │ │ │ │ ├── InvalidEventException.java │ │ │ │ ├── React.java │ │ │ │ ├── UnsupportedEventException.java │ │ │ │ ├── model │ │ │ │ │ ├── EventAcceptingMethodParams.java │ │ │ │ │ ├── EventAcceptingSignature.java │ │ │ │ │ ├── EventReactorClass.java │ │ │ │ │ ├── EventReactorMethod.java │ │ │ │ │ ├── EventReactorSignature.java │ │ │ │ │ ├── EventReceiverClass.java │ │ │ │ │ ├── EventReceivingClassDelegate.java │ │ │ │ │ ├── EventReceptor.java │ │ │ │ │ ├── EventSubscriberClass.java │ │ │ │ │ ├── EventSubscriberMethod.java │ │ │ │ │ ├── InsufficientVisibilityError.java │ │ │ │ │ ├── ReactingClass.java │ │ │ │ │ ├── ReactorClassDelegate.java │ │ │ │ │ ├── RejectionDispatchKeys.java │ │ │ │ │ ├── RejectionHandler.java │ │ │ │ │ ├── StateSubscriberMethod.java │ │ │ │ │ ├── StateSubscriberSpec.java │ │ │ │ │ ├── SubscriberMethod.java │ │ │ │ │ ├── SubscriberSignature.java │ │ │ │ │ ├── SubscribingClass.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── package-info.java │ │ │ │ ├── storage │ │ │ │ │ └── package-info.java │ │ │ │ └── store │ │ │ │ │ ├── DefaultEventStore.java │ │ │ │ │ ├── EmptyEventStore.java │ │ │ │ │ ├── EventColumn.java │ │ │ │ │ ├── MatchFilter.java │ │ │ │ │ ├── MatchesStreamQuery.java │ │ │ │ │ ├── Queries.java │ │ │ │ │ └── package-info.java │ │ │ ├── integration │ │ │ │ ├── AbstractChannelObserver.java │ │ │ │ ├── AbstractExchange.java │ │ │ │ ├── BroadcastWantedEvents.java │ │ │ │ ├── BusAdapter.java │ │ │ │ ├── ConfigExchange.java │ │ │ │ ├── DomesticEventPublisher.java │ │ │ │ ├── EventsExchange.java │ │ │ │ ├── ExternalEventTypeMixin.java │ │ │ │ ├── ExternalMessages.java │ │ │ │ ├── IncomingEventObserver.java │ │ │ │ ├── IntegrationBroker.java │ │ │ │ ├── ObserveWantedEvents.java │ │ │ │ ├── SingleChannelExchange.java │ │ │ │ ├── StatusExchange.java │ │ │ │ ├── ThirdPartyContext.java │ │ │ │ ├── TransportLink.java │ │ │ │ ├── grpc │ │ │ │ │ └── package-info.java │ │ │ │ └── package-info.java │ │ │ ├── log │ │ │ │ ├── ReceptorLifecycle.java │ │ │ │ ├── ReceptorSite.java │ │ │ │ └── package-info.java │ │ │ ├── migration │ │ │ │ └── mirror │ │ │ │ │ ├── MirrorMigration.java │ │ │ │ │ ├── MirrorMigrationMonitor.java │ │ │ │ │ ├── MirrorStorage.java │ │ │ │ │ ├── MirrorToEntityRecord.java │ │ │ │ │ └── package-info.java │ │ │ ├── model │ │ │ │ ├── AbstractReceptor.java │ │ │ │ ├── AccessModifier.java │ │ │ │ ├── AllowedParams.java │ │ │ │ ├── ArgumentFilter.java │ │ │ │ ├── Attribute.java │ │ │ │ ├── ClassMap.java │ │ │ │ ├── CommandEmitter.java │ │ │ │ ├── DispatchKey.java │ │ │ │ ├── DuplicateCommandReceptorError.java │ │ │ │ ├── DuplicateReceptorError.java │ │ │ │ ├── EventEmitter.java │ │ │ │ ├── ExternalAttribute.java │ │ │ │ ├── ExternalCommandReceiverMethodError.java │ │ │ │ ├── ExtractedArguments.java │ │ │ │ ├── HandlerFieldFilterClashError.java │ │ │ │ ├── IllegalOutcomeException.java │ │ │ │ ├── MatchCriterion.java │ │ │ │ ├── MethodAccessChecker.java │ │ │ │ ├── MethodExceptionCheck.java │ │ │ │ ├── MethodParams.java │ │ │ │ ├── MethodResult.java │ │ │ │ ├── MethodResults.java │ │ │ │ ├── Model.java │ │ │ │ ├── ModelClass.java │ │ │ │ ├── ModelError.java │ │ │ │ ├── ParameterSpec.java │ │ │ │ ├── Receptor.java │ │ │ │ ├── ReceptorMap.java │ │ │ │ ├── ReceptorScan.java │ │ │ │ ├── ReceptorSignature.java │ │ │ │ ├── ReturnTypes.java │ │ │ │ ├── SignalOriginMismatchError.java │ │ │ │ ├── SignatureMismatch.java │ │ │ │ ├── SignatureMismatchException.java │ │ │ │ ├── TypeMatcher.java │ │ │ │ ├── UnknownEntityStateTypeException.java │ │ │ │ ├── VoidMethod.java │ │ │ │ └── package-info.java │ │ │ ├── package-info.java │ │ │ ├── procman │ │ │ │ ├── DefaultProcessManagerRepository.java │ │ │ │ ├── PmCommandEndpoint.java │ │ │ │ ├── PmEndpoint.java │ │ │ │ ├── PmEventEndpoint.java │ │ │ │ ├── PmTransaction.java │ │ │ │ ├── ProcessManager.java │ │ │ │ ├── ProcessManagerMigration.java │ │ │ │ ├── ProcessManagerRepository.java │ │ │ │ ├── migration │ │ │ │ │ ├── MarkPmArchived.java │ │ │ │ │ ├── MarkPmDeleted.java │ │ │ │ │ ├── RemovePmFromStorage.java │ │ │ │ │ ├── UpdatePmState.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── model │ │ │ │ │ ├── ProcessManagerClass.java │ │ │ │ │ └── package-info.java │ │ │ │ └── package-info.java │ │ │ ├── projection │ │ │ │ ├── CatchUpEndpoint.java │ │ │ │ ├── DefaultProjectionRepository.java │ │ │ │ ├── Projection.java │ │ │ │ ├── ProjectionEndpoint.java │ │ │ │ ├── ProjectionMigration.java │ │ │ │ ├── ProjectionRepository.java │ │ │ │ ├── ProjectionTransaction.java │ │ │ │ ├── migration │ │ │ │ │ ├── MarkProjectionArchived.java │ │ │ │ │ ├── MarkProjectionDeleted.java │ │ │ │ │ ├── RemoveProjectionFromStorage.java │ │ │ │ │ ├── UpdateProjectionState.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── model │ │ │ │ │ ├── ProjectionClass.java │ │ │ │ │ └── package-info.java │ │ │ │ └── package-info.java │ │ │ ├── route │ │ │ │ ├── Route.java │ │ │ │ └── package-info.java │ │ │ ├── stand │ │ │ │ ├── AbstractEntityUpdateHandler.java │ │ │ │ ├── AbstractTargetValidator.java │ │ │ │ ├── EntityArchivalHandler.java │ │ │ │ ├── EntityChangeHandler.java │ │ │ │ ├── EntityDeletionHandler.java │ │ │ │ ├── EntityQueryProcessor.java │ │ │ │ ├── EntityRestorationHandler.java │ │ │ │ ├── EntityUnarchivalHandler.java │ │ │ │ ├── EventRegistry.java │ │ │ │ ├── EventTap.java │ │ │ │ ├── EventUpdateHandler.java │ │ │ │ ├── InMemoryEventRegistry.java │ │ │ │ ├── InMemoryTypeRegistry.java │ │ │ │ ├── InvalidQueryException.java │ │ │ │ ├── InvalidRequestException.java │ │ │ │ ├── InvalidSubscriptionException.java │ │ │ │ ├── InvalidTopicException.java │ │ │ │ ├── MultitenantSubscriptionRegistry.java │ │ │ │ ├── NoLongerMatchingHandler.java │ │ │ │ ├── NoOpQueryProcessor.java │ │ │ │ ├── QueryProcessor.java │ │ │ │ ├── QueryValidator.java │ │ │ │ ├── RequestValidator.java │ │ │ │ ├── ResurrectionHandler.java │ │ │ │ ├── Stand.java │ │ │ │ ├── SubscriptionCallback.java │ │ │ │ ├── SubscriptionRecord.java │ │ │ │ ├── SubscriptionRegistry.java │ │ │ │ ├── SubscriptionValidator.java │ │ │ │ ├── TenantSubscriptionRegistry.java │ │ │ │ ├── TopicValidator.java │ │ │ │ ├── TypeRegistry.java │ │ │ │ ├── UpdateHandler.java │ │ │ │ └── package-info.java │ │ │ ├── storage │ │ │ │ ├── AbstractColumnMapping.java │ │ │ │ ├── AbstractStorage.java │ │ │ │ ├── ColumnMapping.java │ │ │ │ ├── ColumnTypeMapping.java │ │ │ │ ├── DefaultColumnMapping.java │ │ │ │ ├── FieldMaskApplier.java │ │ │ │ ├── KnownMappings.java │ │ │ │ ├── MessageStorage.java │ │ │ │ ├── QueryConverter.java │ │ │ │ ├── RecordSpec.java │ │ │ │ ├── RecordStorage.java │ │ │ │ ├── RecordStorageDelegate.java │ │ │ │ ├── RecordWithColumns.java │ │ │ │ ├── Storage.java │ │ │ │ ├── StorageFactory.java │ │ │ │ ├── memory │ │ │ │ │ ├── InMemoryRecordStorage.java │ │ │ │ │ ├── InMemoryStorageFactory.java │ │ │ │ │ ├── MultitenantStorage.java │ │ │ │ │ ├── RecordComparator.java │ │ │ │ │ ├── RecordQueryMatcher.java │ │ │ │ │ ├── StorageSpec.java │ │ │ │ │ ├── TenantDataStorage.java │ │ │ │ │ ├── TenantRecords.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── package-info.java │ │ │ │ └── system │ │ │ │ │ ├── SystemAwareStorageFactory.java │ │ │ │ │ └── package-info.java │ │ │ ├── tenant │ │ │ │ ├── ActorRequestOperation.java │ │ │ │ ├── CurrentTenant.java │ │ │ │ ├── DefaultTenantStorage.java │ │ │ │ ├── EventOperation.java │ │ │ │ ├── IdInTenant.java │ │ │ │ ├── QueryOperation.java │ │ │ │ ├── SingleTenantIndex.java │ │ │ │ ├── SubscriptionOperation.java │ │ │ │ ├── TenantAware.java │ │ │ │ ├── TenantAwareFunction.java │ │ │ │ ├── TenantAwareFunction0.java │ │ │ │ ├── TenantAwareOperation.java │ │ │ │ ├── TenantAwareRunner.java │ │ │ │ ├── TenantAwareTestSupport.java │ │ │ │ ├── TenantFunction.java │ │ │ │ ├── TenantIndex.java │ │ │ │ ├── TenantStorage.java │ │ │ │ └── package-info.java │ │ │ ├── trace │ │ │ │ ├── AbstractTracer.java │ │ │ │ ├── Tracer.java │ │ │ │ ├── TracerFactory.java │ │ │ │ └── package-info.java │ │ │ ├── transport │ │ │ │ ├── AbstractChannel.java │ │ │ │ ├── ChannelHub.java │ │ │ │ ├── MessageChannel.java │ │ │ │ ├── Publisher.java │ │ │ │ ├── PublisherHub.java │ │ │ │ ├── Statuses.java │ │ │ │ ├── Subscriber.java │ │ │ │ ├── SubscriberHub.java │ │ │ │ ├── TransportFactory.java │ │ │ │ ├── memory │ │ │ │ │ ├── InMemoryPublisher.java │ │ │ │ │ ├── InMemorySubscriber.java │ │ │ │ │ ├── InMemoryTransportFactory.java │ │ │ │ │ ├── SingleThreadInMemSubscriber.java │ │ │ │ │ ├── SingleThreadInMemTransportFactory.java │ │ │ │ │ └── package-info.java │ │ │ │ └── package-info.java │ │ │ ├── tuple │ │ │ │ ├── Either.java │ │ │ │ ├── EitherOf2.java │ │ │ │ ├── EitherOf3.java │ │ │ │ ├── EitherOf4.java │ │ │ │ ├── EitherOf5.java │ │ │ │ ├── Element.java │ │ │ │ ├── IndexOf.java │ │ │ │ ├── Pair.java │ │ │ │ ├── Quartet.java │ │ │ │ ├── Quintet.java │ │ │ │ ├── Triplet.java │ │ │ │ ├── Tuple.java │ │ │ │ └── package-info.java │ │ │ └── type │ │ │ │ ├── AbstractMessageEnvelope.java │ │ │ │ ├── CommandClass.java │ │ │ │ ├── CommandEnvelope.java │ │ │ │ ├── EmptyClass.java │ │ │ │ ├── EnrichableMessageEnvelope.java │ │ │ │ ├── EnvelopeWithOrigin.java │ │ │ │ ├── EventClass.java │ │ │ │ ├── EventEnvelope.java │ │ │ │ ├── MessageEnvelope.java │ │ │ │ ├── SignalEnvelope.java │ │ │ │ └── package-info.java │ │ │ └── system │ │ │ └── server │ │ │ ├── CannotDispatchDuplicate.java │ │ │ ├── CommandLogProjection.java │ │ │ ├── CommandLogRepository.java │ │ │ ├── DefaultSystemClient.java │ │ │ ├── DefaultSystemReadSide.java │ │ │ ├── DefaultSystemWriteSide.java │ │ │ ├── DiagnosticEvent.java │ │ │ ├── NoOpSystemClient.java │ │ │ ├── NoOpSystemReadSide.java │ │ │ ├── NoOpSystemWriteSide.java │ │ │ ├── ScheduledCommand.java │ │ │ ├── ScheduledCommandRepository.java │ │ │ ├── SystemClient.java │ │ │ ├── SystemConfig.java │ │ │ ├── SystemContext.java │ │ │ ├── SystemEnricher.java │ │ │ ├── SystemEventFactory.java │ │ │ ├── SystemFeatures.java │ │ │ ├── SystemReadSide.java │ │ │ ├── SystemRequestFactory.java │ │ │ ├── SystemSettings.java │ │ │ ├── SystemWriteSide.java │ │ │ ├── TenantAwareSystemWriteSide.java │ │ │ ├── TraceEventObserver.java │ │ │ ├── WriteSideFunction.java │ │ │ ├── event │ │ │ ├── CommandDispatchedMixin.java │ │ │ ├── EntityLifecycleEvent.java │ │ │ ├── EventDispatchedMixin.java │ │ │ ├── SignalDispatchedMixin.java │ │ │ └── package-info.java │ │ │ └── package-info.java │ ├── kotlin │ │ └── io │ │ │ └── spine │ │ │ └── server │ │ │ ├── Contexts.kt │ │ │ ├── ServerEnvironmentExts.kt │ │ │ ├── bus │ │ │ └── MessageIdExtensions.kt │ │ │ ├── command │ │ │ └── SingleCommandAssignee.kt │ │ │ ├── entity │ │ │ ├── EntityVisibility.kt │ │ │ └── TransactionalEntityExts.kt │ │ │ ├── event │ │ │ ├── EventFactoryBase.kt │ │ │ ├── EventMessageExts.kt │ │ │ ├── Just.kt │ │ │ ├── Policy.kt │ │ │ ├── RFactory.kt │ │ │ └── model │ │ │ │ └── RejectionEnvelope.kt │ │ │ ├── model │ │ │ ├── EventExts.kt │ │ │ └── MethodExts.kt │ │ │ ├── query │ │ │ ├── Querying.kt │ │ │ └── QueryingClient.kt │ │ │ ├── route │ │ │ ├── ByFirstEventField.kt │ │ │ ├── ByFirstField.kt │ │ │ ├── ByProducerId.kt │ │ │ ├── CommandRoute.kt │ │ │ ├── CommandRouting.kt │ │ │ ├── DefaultCommandRoute.kt │ │ │ ├── DefaultStateRoute.kt │ │ │ ├── EventRoute.kt │ │ │ ├── EventRouting.kt │ │ │ ├── MessageRouting.kt │ │ │ ├── Multicast.kt │ │ │ ├── MulticastRouting.kt │ │ │ ├── RouteFn.kt │ │ │ ├── RoutingMap.kt │ │ │ ├── RoutingMethod.kt │ │ │ ├── StateUpdateRoute.kt │ │ │ ├── StateUpdateRouting.kt │ │ │ ├── Unicast.kt │ │ │ └── setup │ │ │ │ ├── CommandRoutingSetup.kt │ │ │ │ ├── EventRoutingSetup.kt │ │ │ │ ├── RoutingSetup.kt │ │ │ │ ├── RoutingSetupRegistry.kt │ │ │ │ └── StateRoutingSetup.kt │ │ │ └── security │ │ │ └── Security.kt │ └── proto │ │ └── spine │ │ ├── server │ │ ├── aggregate │ │ │ └── aggregate.proto │ │ ├── catchup │ │ │ ├── catch_up.proto │ │ │ └── catch_up_events.proto │ │ ├── command │ │ │ └── standard_commands.proto │ │ ├── delivery │ │ │ ├── delivery.proto │ │ │ ├── delivery_events.proto │ │ │ └── inbox.proto │ │ ├── dispatch │ │ │ └── dispatching.proto │ │ ├── entity │ │ │ ├── entity.proto │ │ │ └── standard_rejections.proto │ │ ├── event │ │ │ ├── event_filter.proto │ │ │ ├── event_stream_query.proto │ │ │ └── standard_events.proto │ │ ├── integration │ │ │ └── broker.proto │ │ ├── migration │ │ │ └── mirror │ │ │ │ └── mirror_migration.proto │ │ ├── model │ │ │ ├── standard_commands.proto │ │ │ └── standard_events.proto │ │ ├── server_environment.proto │ │ ├── tenant │ │ │ ├── events.proto │ │ │ └── tenant.proto │ │ └── transport │ │ │ └── transport.proto │ │ └── system │ │ └── server │ │ ├── command_log.proto │ │ ├── command_log_events.proto │ │ ├── diagnostic_events.proto │ │ ├── entity_log_events.proto │ │ ├── entity_type.proto │ │ ├── event_lifecycle_events.proto │ │ ├── mirror.proto │ │ └── scheduled_command.proto │ ├── test │ ├── java │ │ └── io │ │ │ └── spine │ │ │ ├── client │ │ │ ├── AbstractClientTest.java │ │ │ ├── ClientBuilderTest.java │ │ │ ├── ClientEndToEndTest.java │ │ │ ├── ClientErrorHandlersTest.java │ │ │ ├── ClientRequestTest.java │ │ │ ├── ClientSubscriptionsTest.java │ │ │ ├── CommandRequestTest.java │ │ │ ├── ConsumerCallCounter.java │ │ │ ├── EventSubscriptionRequestTest.java │ │ │ └── package-info.java │ │ │ ├── core │ │ │ ├── CoreMixinsTest.java │ │ │ ├── EnrichmentsTest.java │ │ │ ├── EventContextTest.java │ │ │ ├── EventTest.java │ │ │ ├── EventsTest.java │ │ │ └── SignalTest.java │ │ │ ├── server │ │ │ ├── BoundedContextBuilderTest.java │ │ │ ├── BoundedContextSpec.kt │ │ │ ├── CommandServiceTest.java │ │ │ ├── EnvSettingTest.java │ │ │ ├── GrpcContainerTest.java │ │ │ ├── IdentityTest.java │ │ │ ├── IgnoredTest.java │ │ │ ├── QueryServiceTest.java │ │ │ ├── ServerEnvironmentConfigTest.java │ │ │ ├── ServerEnvironmentTest.java │ │ │ ├── ServerTest.java │ │ │ ├── StatusesTest.java │ │ │ ├── SubscriptionServiceTest.java │ │ │ ├── VisibilityGuardTest.java │ │ │ ├── aggregate │ │ │ │ ├── AggregateCommandEndpointTest.java │ │ │ │ ├── AggregateHistoryTruncationTest.java │ │ │ │ ├── AggregatePartTest.java │ │ │ │ ├── AggregateQueryingTest.java │ │ │ │ ├── AggregateRepositoryTest.java │ │ │ │ ├── AggregateRepositoryViewsTest.java │ │ │ │ ├── AggregateRootTest.java │ │ │ │ ├── AggregateStorageTest.java │ │ │ │ ├── AggregateTest.java │ │ │ │ ├── AggregateTransactionTest.java │ │ │ │ ├── ApplyAllowImportTest.java │ │ │ │ ├── EventImportTest.java │ │ │ │ ├── IdempotencyGuardTest.java │ │ │ │ ├── InMemoryRootDirectoryTest.java │ │ │ │ ├── ReadOperationTest.java │ │ │ │ ├── TestAggregateStorage.java │ │ │ │ └── model │ │ │ │ │ ├── AggregateClassTest.java │ │ │ │ │ ├── AggregatePartClassTest.java │ │ │ │ │ └── ApplierTest.java │ │ │ ├── bus │ │ │ │ ├── BusBuilderTest.java │ │ │ │ ├── BusFilterTest.java │ │ │ │ ├── DispatchingQueueSynchronisationTest.java │ │ │ │ └── FilterChainTest.java │ │ │ ├── command │ │ │ │ ├── AbstractCommanderTest.java │ │ │ │ ├── AssigneeEntityTest.java │ │ │ │ ├── AssigneeSignatureTest.java │ │ │ │ └── model │ │ │ │ │ ├── AssigneeReceptorTest.java │ │ │ │ │ ├── CommandReactionSignatureTest.java │ │ │ │ │ ├── CommandSubstituteSignatureTest.java │ │ │ │ │ ├── CommanderClassTest.java │ │ │ │ │ └── CommandingReactionTest.java │ │ │ ├── commandbus │ │ │ │ ├── AbstractCommandBusTestSuite.java │ │ │ │ ├── AckRejectionPublisherTest.java │ │ │ │ ├── AssigneeTest.java │ │ │ │ ├── CommandAckMonitorTest.java │ │ │ │ ├── CommandBusBuilderTest.java │ │ │ │ ├── CommandDispatcherRegistryTest.java │ │ │ │ ├── CommandReceivedTapTest.java │ │ │ │ ├── CommandSchedulingTest.java │ │ │ │ ├── CommandValidatorViolationCheckTest.java │ │ │ │ ├── ExecutorCommandSchedulerTest.java │ │ │ │ ├── MultiTenantCommandBusTest.java │ │ │ │ ├── RejectionInFilterTest.java │ │ │ │ └── SingleTenantCommandBusTest.java │ │ │ ├── delivery │ │ │ │ ├── AbstractDeliveryTest.java │ │ │ │ ├── AbstractStationTest.java │ │ │ │ ├── CatchUpMessagesTest.java │ │ │ │ ├── CatchUpStationTest.java │ │ │ │ ├── CatchUpTest.java │ │ │ │ ├── CleanupStationTest.java │ │ │ │ ├── DeliveryBuilderTest.java │ │ │ │ ├── DeliveryDefaultsTest.java │ │ │ │ ├── DeliveryErrorsTest.java │ │ │ │ ├── DeliveryFactoryTest.java │ │ │ │ ├── DeliveryTest.java │ │ │ │ ├── DispatchOutcomesTest.java │ │ │ │ ├── DispatchingIdTest.java │ │ │ │ ├── EndpointsTest.java │ │ │ │ ├── InMemoryShardedWorkRegistryTest.java │ │ │ │ ├── InboxIdsTest.java │ │ │ │ ├── InboxStorageTest.java │ │ │ │ ├── LiveDeliveryStationTest.java │ │ │ │ ├── ReceptionFailureTest.java │ │ │ │ ├── ShardedWorkRegistryTest.java │ │ │ │ ├── TurbulenceTest.java │ │ │ │ └── UniformStrategyTest.java │ │ │ ├── dispatch │ │ │ │ ├── DispatchMixinsTest.java │ │ │ │ └── DispatchOutcomeHandlerTest.java │ │ │ ├── enrich │ │ │ │ ├── EnricherBuilderTest.java │ │ │ │ └── SingularFnTest.java │ │ │ ├── entity │ │ │ │ ├── AbstractEntityTest.java │ │ │ │ ├── AbstractEventSubscriberTest.java │ │ │ │ ├── CompositeEventFilterTest.java │ │ │ │ ├── DefaultCommandRouteTest.java │ │ │ │ ├── DefaultConverterTest.java │ │ │ │ ├── DefaultEntityFactoryTest.java │ │ │ │ ├── EntityIdFunctionTest.java │ │ │ │ ├── EntityLifecycleTest.java │ │ │ │ ├── EntityTest.java │ │ │ │ ├── EntityVisibilityTest.java │ │ │ │ ├── EventBlackListTest.java │ │ │ │ ├── EventFieldFilterTest.java │ │ │ │ ├── EventWhiteListTest.java │ │ │ │ ├── FieldMasksTest.java │ │ │ │ ├── InvalidEntityStateExceptionTest.java │ │ │ │ ├── NoOpEventFilterTest.java │ │ │ │ ├── RecordBasedRepositoryTest.java │ │ │ │ ├── RepositoryTest.java │ │ │ │ ├── StubTransaction.java │ │ │ │ ├── TestEntity.java │ │ │ │ ├── TransactionTest.java │ │ │ │ ├── TransactionalEntityTest.java │ │ │ │ ├── TransactionalEventPlayerTest.java │ │ │ │ ├── model │ │ │ │ │ └── EntityClassTest.java │ │ │ │ └── storage │ │ │ │ │ ├── AssertColumns.java │ │ │ │ │ └── SpecScannerTest.java │ │ │ ├── event │ │ │ │ ├── AbstractEventReactorTest.java │ │ │ │ ├── DelegatingEventDispatcherTest.java │ │ │ │ ├── EventBusBuilderTest.java │ │ │ │ ├── EventBusEnrichmentTest.java │ │ │ │ ├── EventBusTest.java │ │ │ │ ├── EventEnricherIntegrationTest.java │ │ │ │ ├── EventFactoryTest.java │ │ │ │ ├── EventRootMessageIdTest.java │ │ │ │ ├── EventSubscriberTest.java │ │ │ │ ├── EventValidatorTest.java │ │ │ │ ├── InvalidEventExceptionTest.java │ │ │ │ ├── UnsupportedEventExceptionTest.java │ │ │ │ ├── model │ │ │ │ │ ├── EventReactorClassTest.java │ │ │ │ │ ├── EventReactorMethodTest.java │ │ │ │ │ ├── EventReactorSignatureTest.java │ │ │ │ │ ├── EventReactorSignatures.java │ │ │ │ │ ├── EventSubscriberClassTest.java │ │ │ │ │ ├── EventSubscriberMethodTest.java │ │ │ │ │ ├── EventSubscriberSignatureTest.java │ │ │ │ │ ├── MethodOutcomeTest.java │ │ │ │ │ ├── RejectionDispatchKeysTest.java │ │ │ │ │ └── ValidTwoParams.java │ │ │ │ └── store │ │ │ │ │ ├── DefaultEventStoreTest.java │ │ │ │ │ ├── EmptyEventStoreTest.java │ │ │ │ │ ├── MatchFilterTest.java │ │ │ │ │ ├── MatchesStreamQueryTest.java │ │ │ │ │ └── QueriesTest.java │ │ │ ├── integration │ │ │ │ ├── DomesticEventPublisherTest.java │ │ │ │ ├── ExternalMessagesTest.java │ │ │ │ ├── IntegrationBrokerTest.java │ │ │ │ └── ThirdPartyContextTest.java │ │ │ ├── log │ │ │ │ └── AbstractEntityLoggingTest.java │ │ │ ├── migration │ │ │ │ └── mirror │ │ │ │ │ ├── MirrorMigrationTest.java │ │ │ │ │ └── MirrorToEntityRecordTest.java │ │ │ ├── model │ │ │ │ ├── AllowedParamsTest.java │ │ │ │ ├── ArgumentFilterTest.java │ │ │ │ ├── CommandOnRejectionTest.java │ │ │ │ ├── ExternalAttributeTest.java │ │ │ │ ├── FilterTest.java │ │ │ │ ├── MethodAccessCheckerTest.java │ │ │ │ ├── MethodExceptionCheckTest.java │ │ │ │ ├── MethodParamsTest.java │ │ │ │ ├── MethodResultsTest.java │ │ │ │ ├── ModelTest.java │ │ │ │ ├── ModifiersInSignatureTest.java │ │ │ │ ├── ReceptorMapTest.java │ │ │ │ ├── ReceptorScanTest.java │ │ │ │ ├── ReceptorSignatureTest.java │ │ │ │ ├── ReceptorTest.java │ │ │ │ ├── TypeMatcherTest.java │ │ │ │ ├── contexts │ │ │ │ │ ├── TwoBoundedContextsTest.java │ │ │ │ │ └── package-info.java │ │ │ │ └── handler │ │ │ │ │ ├── MessageInterfaceResultTest.java │ │ │ │ │ └── package-info.java │ │ │ ├── package-info.java │ │ │ ├── procman │ │ │ │ ├── PmTransactionTest.java │ │ │ │ ├── ProcessManagerRepositoryTest.java │ │ │ │ └── model │ │ │ │ │ └── ProcessManagerClassTest.java │ │ │ ├── projection │ │ │ │ ├── ProjectionColumnTest.java │ │ │ │ ├── ProjectionRepositoryTest.java │ │ │ │ ├── ProjectionTest.java │ │ │ │ ├── ProjectionTransactionTest.java │ │ │ │ ├── StateRoutingTest.java │ │ │ │ ├── e2e │ │ │ │ │ ├── ProjectionEndToEndTest.java │ │ │ │ │ └── package-info.java │ │ │ │ └── model │ │ │ │ │ └── ProjectionClassTest.java │ │ │ ├── route │ │ │ │ ├── CommandRoutingRejectionTest.java │ │ │ │ └── StateUpdateRoutingTest.java │ │ │ ├── security │ │ │ │ └── SecurityTest.java │ │ │ ├── stand │ │ │ │ ├── EntityQueryProcessorTest.java │ │ │ │ ├── MultitenantStandTest.java │ │ │ │ ├── QueryValidatorTest.java │ │ │ │ ├── StandTest.java │ │ │ │ └── SubscriptionRecordTest.java │ │ │ ├── storage │ │ │ │ ├── AbstractColumnMappingTest.java │ │ │ │ ├── AbstractStorageTest.java │ │ │ │ ├── EntityRecordStorageTest.java │ │ │ │ ├── RecordSpecTest.java │ │ │ │ ├── RecordStorageDelegateTest.java │ │ │ │ ├── RecordWithColumnsTest.java │ │ │ │ ├── memory │ │ │ │ │ ├── InMemoryAggregateHistoryTruncationTest.java │ │ │ │ │ ├── InMemoryStorageFactoryTest.java │ │ │ │ │ ├── MultitenantStorageTest.java │ │ │ │ │ ├── RecordQueryMatcherTest.java │ │ │ │ │ └── StorageSpecTest.java │ │ │ │ └── system │ │ │ │ │ └── SystemAwareStorageFactoryTest.java │ │ │ ├── tenant │ │ │ │ ├── CurrentTenantTest.java │ │ │ │ ├── QueryOperationTest.java │ │ │ │ ├── SingleTenantIndexTest.java │ │ │ │ ├── TenantAwareFunction0Test.java │ │ │ │ ├── TenantAwareOperationTest.java │ │ │ │ ├── TenantIndexTest.java │ │ │ │ └── TenantStorageTest.java │ │ │ ├── trace │ │ │ │ └── TracingTest.java │ │ │ ├── transport │ │ │ │ └── memory │ │ │ │ │ ├── InMemoryTransportFactoryTest.java │ │ │ │ │ ├── SingleThreadInMemSubscriberTest.java │ │ │ │ │ └── SingleThreadInMemTransportFactoryTest.java │ │ │ ├── tuple │ │ │ │ ├── EitherOf2Test.java │ │ │ │ ├── EitherOf3Test.java │ │ │ │ ├── EitherOf4Test.java │ │ │ │ ├── EitherOf5Test.java │ │ │ │ ├── ElementTest.java │ │ │ │ ├── PairTest.java │ │ │ │ ├── QuartetTest.java │ │ │ │ ├── QuintetTest.java │ │ │ │ ├── TripletTest.java │ │ │ │ └── TupleTest.java │ │ │ └── type │ │ │ │ ├── CommandEnvelopeTest.java │ │ │ │ ├── EmptyClassTest.java │ │ │ │ ├── EventClassTest.java │ │ │ │ ├── EventEnvelopeTest.java │ │ │ │ ├── EventMessageTest.java │ │ │ │ └── MessageEnvelopeTest.java │ │ │ └── system │ │ │ └── server │ │ │ ├── CommandLogTest.java │ │ │ ├── ConstraintViolatedTest.java │ │ │ ├── DefaultSystemReadSideTest.java │ │ │ ├── DefaultSystemWriteSideTest.java │ │ │ ├── EntityEventsTest.java │ │ │ ├── ScheduledCommandTest.java │ │ │ ├── SystemContextSettingsTest.java │ │ │ ├── SystemSettingsTest.java │ │ │ └── TenantAwareSystemWriteSideTest.java │ └── kotlin │ │ └── io │ │ └── spine │ │ ├── client │ │ ├── ClientRequestPublishedLanguageSpec.kt │ │ └── ClientSpec.kt │ │ └── server │ │ ├── CommandServiceUnpublishedLanguageSpec.kt │ │ ├── ServerEnvironmentExtensionsSpec.kt │ │ ├── bus │ │ └── MessageIdExtensionsSpec.kt │ │ ├── entity │ │ └── TransactionalEntityExtensionsSpec.kt │ │ ├── event │ │ ├── JustSpec.kt │ │ └── PolicySpec.kt │ │ ├── model │ │ ├── AbstractReceptorSpec.kt │ │ └── KotlinSignatureSpec.kt │ │ ├── procman │ │ ├── ProcessManagerSpec.kt │ │ └── given │ │ │ └── pm │ │ │ ├── QuizGiven.kt │ │ │ └── QuizProcess.kt │ │ ├── query │ │ └── QueryingClientSpec.kt │ │ └── route │ │ ├── CommandRoutingSpec.kt │ │ ├── EventReactionRoutingSpec.kt │ │ ├── EventRoutingSpec.kt │ │ ├── StaticCommandRoutingITest.kt │ │ ├── StaticEventRoutingITest.kt │ │ └── StaticRoutingInheritanceITest.kt │ └── testFixtures │ ├── java │ ├── com │ │ └── example │ │ │ ├── ForeignClass.java │ │ │ ├── ForeignContextConfig.java │ │ │ └── package-info.java │ ├── io │ │ └── spine │ │ │ ├── client │ │ │ └── given │ │ │ │ ├── ClientTasksTestEnv.java │ │ │ │ ├── TaskAggregate.java │ │ │ │ └── package-info.java │ │ │ ├── core │ │ │ └── given │ │ │ │ ├── CoreMixinsTestEnv.java │ │ │ │ └── package-info.java │ │ │ ├── given │ │ │ ├── NonServerClass.java │ │ │ └── package-info.java │ │ │ ├── server │ │ │ ├── Given.java │ │ │ ├── aggregate │ │ │ │ └── given │ │ │ │ │ ├── AggregateCommandEndpointTestEnv.java │ │ │ │ │ ├── AggregateRootTestEnv.java │ │ │ │ │ ├── Given.java │ │ │ │ │ ├── IdempotencyGuardTestEnv.java │ │ │ │ │ ├── ReadOperationTestEnv.java │ │ │ │ │ ├── StorageRecords.java │ │ │ │ │ ├── aggregate │ │ │ │ │ ├── AbstractAggregateTestRepository.java │ │ │ │ │ ├── AggregatePartTestEnv.java │ │ │ │ │ ├── AggregateTestEnv.java │ │ │ │ │ ├── AggregateWithMissingApplier.java │ │ │ │ │ ├── AmishAggregate.java │ │ │ │ │ ├── FaultyAggregate.java │ │ │ │ │ ├── IgTestAggregate.java │ │ │ │ │ ├── IgTestAggregateRepository.java │ │ │ │ │ ├── IntAggregate.java │ │ │ │ │ ├── TaskAggregate.java │ │ │ │ │ ├── TaskAggregateRepository.java │ │ │ │ │ ├── TestAggregate.java │ │ │ │ │ ├── TestAggregateRepository.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── dispatch │ │ │ │ │ ├── AggregateBuilder.java │ │ │ │ │ ├── AggregateMessageDispatcher.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── fibonacci │ │ │ │ │ ├── FibonacciAggregate.java │ │ │ │ │ ├── FibonacciRepository.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── importado │ │ │ │ │ ├── Dot.java │ │ │ │ │ ├── DotSpace.java │ │ │ │ │ ├── MoveMessages.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── klasse │ │ │ │ │ ├── EngineAggregate.java │ │ │ │ │ ├── EngineRepository.java │ │ │ │ │ ├── IndecisiveEngineAggregate.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ ├── part │ │ │ │ │ ├── AnAggregatePart.java │ │ │ │ │ ├── AnAggregateRoot.java │ │ │ │ │ ├── TaskCommentsPart.java │ │ │ │ │ ├── TaskCommentsRepository.java │ │ │ │ │ ├── TaskPart.java │ │ │ │ │ ├── TaskRepository.java │ │ │ │ │ ├── TaskRoot.java │ │ │ │ │ ├── WrongAggregatePart.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── query │ │ │ │ │ ├── AggregateQueryingTestEnv.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── repo │ │ │ │ │ ├── AggregateRepositoryTestEnv.java │ │ │ │ │ ├── AggregateWithLifecycle.java │ │ │ │ │ ├── AnemicAggregate.java │ │ │ │ │ ├── AnemicAggregateRepository.java │ │ │ │ │ ├── EventDiscardingAggregateRepository.java │ │ │ │ │ ├── FailingAggregate.java │ │ │ │ │ ├── FailingAggregateRepository.java │ │ │ │ │ ├── GivenAggregate.java │ │ │ │ │ ├── ProjectAggregate.java │ │ │ │ │ ├── ProjectAggregateRepository.java │ │ │ │ │ ├── ReactingAggregate.java │ │ │ │ │ ├── ReactingRepository.java │ │ │ │ │ ├── RejectingAggregate.java │ │ │ │ │ ├── RejectingRepository.java │ │ │ │ │ ├── RejectionReactingAggregate.java │ │ │ │ │ ├── RejectionReactingRepository.java │ │ │ │ │ ├── RepoOfAggregateWithLifecycle.java │ │ │ │ │ └── package-info.java │ │ │ │ │ └── thermometer │ │ │ │ │ ├── SafeThermometer.java │ │ │ │ │ ├── SafeThermometerRepo.java │ │ │ │ │ └── package-info.java │ │ │ ├── bc │ │ │ │ ├── given │ │ │ │ │ ├── AnotherProjectAggregate.java │ │ │ │ │ ├── FinishedProjectProjection.java │ │ │ │ │ ├── Given.java │ │ │ │ │ ├── ProjectAggregate.java │ │ │ │ │ ├── ProjectAggregateRepository.java │ │ │ │ │ ├── ProjectCreationProcman.java │ │ │ │ │ ├── ProjectCreationRepository.java │ │ │ │ │ ├── ProjectProcessManager.java │ │ │ │ │ ├── ProjectProjection.java │ │ │ │ │ ├── ProjectRemovalProcman.java │ │ │ │ │ ├── ProjectReport.java │ │ │ │ │ ├── SecretProjectAggregate.java │ │ │ │ │ ├── SecretProjectRepository.java │ │ │ │ │ ├── TestEventSubscriber.java │ │ │ │ │ └── package-info.java │ │ │ │ └── package-info.java │ │ │ ├── bus │ │ │ │ └── given │ │ │ │ │ ├── BusFilters.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ └── stock │ │ │ │ │ ├── JowDonsIndex.java │ │ │ │ │ ├── ShareAggregate.java │ │ │ │ │ └── package-info.java │ │ │ ├── command │ │ │ │ ├── CommandHistory.java │ │ │ │ ├── CommandInterceptor.java │ │ │ │ ├── given │ │ │ │ │ ├── AssigneeEntityTestEnv.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── model │ │ │ │ │ └── given │ │ │ │ │ │ ├── commander │ │ │ │ │ │ ├── InvalidCommander.java │ │ │ │ │ │ ├── SampleCommander.java │ │ │ │ │ │ ├── TestCommandMessage.java │ │ │ │ │ │ ├── ValidCommander.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ │ ├── handler │ │ │ │ │ │ ├── AssigneeReturnsEmptyList.java │ │ │ │ │ │ ├── AssigneeReturnsNothing.java │ │ │ │ │ │ ├── EventMessages.java │ │ │ │ │ │ ├── InvalidAssignee.java │ │ │ │ │ │ ├── InvalidAssigneeNoAnnotation.java │ │ │ │ │ │ ├── ProcessManagerDoingNothing.java │ │ │ │ │ │ ├── RejectingAggregate.java │ │ │ │ │ │ ├── RejectingAssignee.java │ │ │ │ │ │ ├── TestCommandAssignee.java │ │ │ │ │ │ ├── ValidAssignee.java │ │ │ │ │ │ ├── ValidAssigneeOneParam.java │ │ │ │ │ │ ├── ValidAssigneeOneParamReturnsList.java │ │ │ │ │ │ ├── ValidAssigneeTwoParams.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ │ └── reaction │ │ │ │ │ │ ├── EventMessages.java │ │ │ │ │ │ ├── InvalidCommander.java │ │ │ │ │ │ ├── ReEitherWithNothing.java │ │ │ │ │ │ ├── ReOneParam.java │ │ │ │ │ │ ├── ReOptionalResult.java │ │ │ │ │ │ ├── ReTwoParams.java │ │ │ │ │ │ ├── TestCommandReactor.java │ │ │ │ │ │ ├── ValidCommander.java │ │ │ │ │ │ └── package-info.java │ │ │ │ └── package-info.java │ │ │ ├── commandbus │ │ │ │ ├── Given.java │ │ │ │ └── given │ │ │ │ │ ├── CommandDispatcherRegistryTestEnv.java │ │ │ │ │ ├── CommandHandlerTestEnv.java │ │ │ │ │ ├── DirectScheduledExecutor.java │ │ │ │ │ ├── MemoizingCommandFlowWatcher.java │ │ │ │ │ ├── MultitenantCommandBusTestEnv.java │ │ │ │ │ ├── SingleTenantCommandBusTestEnv.java │ │ │ │ │ ├── ThrowingScheduledExecutor.java │ │ │ │ │ ├── caffetteria │ │ │ │ │ ├── BeachCustomerFilter.java │ │ │ │ │ ├── CaffetteriaStats.java │ │ │ │ │ ├── CaffetteriaStatsRepository.java │ │ │ │ │ ├── OrderAggregate.java │ │ │ │ │ └── package-info.java │ │ │ │ │ └── package-info.java │ │ │ ├── delivery │ │ │ │ ├── InboxContents.java │ │ │ │ ├── MemoizingAction.java │ │ │ │ ├── NastyClient.java │ │ │ │ ├── TestRoutines.java │ │ │ │ └── given │ │ │ │ │ ├── CalcAggregate.java │ │ │ │ │ ├── CalculatorSignal.java │ │ │ │ │ ├── ConsecutiveNumberProcess.java │ │ │ │ │ ├── ConsecutiveProjection.java │ │ │ │ │ ├── CounterCatchUp.java │ │ │ │ │ ├── CounterView.java │ │ │ │ │ ├── DeliveryTestEnv.java │ │ │ │ │ ├── FixedShardStrategy.java │ │ │ │ │ ├── MemoizingDeliveryMonitor.java │ │ │ │ │ ├── NoOpEndpoint.java │ │ │ │ │ ├── ReceptionFailureTestEnv.java │ │ │ │ │ ├── ReceptionistAggregate.java │ │ │ │ │ ├── TaskAggregate.java │ │ │ │ │ ├── TaskAssignment.java │ │ │ │ │ ├── TaskView.java │ │ │ │ │ ├── TestCatchUpJobs.java │ │ │ │ │ ├── TestInboxMessages.java │ │ │ │ │ ├── ThrowingWorkRegistry.java │ │ │ │ │ ├── WhatToCatchUp.java │ │ │ │ │ └── package-info.java │ │ │ ├── dispatch │ │ │ │ └── given │ │ │ │ │ ├── Given.java │ │ │ │ │ └── package-info.java │ │ │ ├── enrich │ │ │ │ └── given │ │ │ │ │ ├── EitEnricherSetup.java │ │ │ │ │ ├── EitProjectAggregate.java │ │ │ │ │ ├── EitProjectRepository.java │ │ │ │ │ ├── EitTaskAggregate.java │ │ │ │ │ ├── EitTaskRepository.java │ │ │ │ │ ├── EitUserAggregate.java │ │ │ │ │ ├── EitUserRepository.java │ │ │ │ │ ├── event │ │ │ │ │ ├── EbtOrderEvent.java │ │ │ │ │ ├── SfnTestEvent.java │ │ │ │ │ └── package-info.java │ │ │ │ │ └── package-info.java │ │ │ ├── entity │ │ │ │ ├── EntityBuilder.java │ │ │ │ ├── TestTransaction.java │ │ │ │ ├── given │ │ │ │ │ ├── DefaultEntityFactoryTestEnv.java │ │ │ │ │ ├── FieldMasksTestEnv.java │ │ │ │ │ ├── Given.java │ │ │ │ │ ├── MemoizingTransactionListener.java │ │ │ │ │ ├── RecordBasedRepositoryTestEnv.java │ │ │ │ │ ├── TeEntity.java │ │ │ │ │ ├── VisibilityGuardTestEnv.java │ │ │ │ │ ├── entity │ │ │ │ │ │ ├── AnEntity.java │ │ │ │ │ │ ├── EntityWithMessageId.java │ │ │ │ │ │ ├── NaturalNumberEntity.java │ │ │ │ │ │ ├── TestAggregate.java │ │ │ │ │ │ ├── TestEntityWithIdInteger.java │ │ │ │ │ │ ├── TestEntityWithIdLong.java │ │ │ │ │ │ ├── TestEntityWithIdMessage.java │ │ │ │ │ │ ├── TestEntityWithIdString.java │ │ │ │ │ │ ├── UserAggregate.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ ├── repository │ │ │ │ │ │ ├── GivenLifecycleFlags.java │ │ │ │ │ │ ├── ProjectEntity.java │ │ │ │ │ │ ├── TestRepo.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ └── tx │ │ │ │ │ │ ├── TxAggregate.java │ │ │ │ │ │ ├── TxProcessManager.java │ │ │ │ │ │ ├── TxProjection.java │ │ │ │ │ │ └── package-info.java │ │ │ │ └── storage │ │ │ │ │ └── given │ │ │ │ │ ├── EntityWithoutCustomColumns.java │ │ │ │ │ ├── TaskListViewProjection.java │ │ │ │ │ ├── TaskViewProjection.java │ │ │ │ │ ├── TestEntity.java │ │ │ │ │ └── package-info.java │ │ │ ├── event │ │ │ │ ├── given │ │ │ │ │ ├── AbstractReactorTestEnv.java │ │ │ │ │ ├── DelegatingEventDispatcherTestEnv.java │ │ │ │ │ ├── EventRootCommandIdTestEnv.java │ │ │ │ │ ├── EventStoreTestEnv.java │ │ │ │ │ ├── EventSubscriberTestEnv.java │ │ │ │ │ ├── InvalidReactor.java │ │ │ │ │ ├── ValidReactor.java │ │ │ │ │ ├── bus │ │ │ │ │ │ ├── BareDispatcher.java │ │ │ │ │ │ ├── EBExternalTaskAddedSubscriber.java │ │ │ │ │ │ ├── EBProjectArchivedSubscriber.java │ │ │ │ │ │ ├── EBProjectCreatedNoOpSubscriber.java │ │ │ │ │ │ ├── EBTaskAddedNoOpSubscriber.java │ │ │ │ │ │ ├── EventBusTestEnv.java │ │ │ │ │ │ ├── GivenEvent.java │ │ │ │ │ │ ├── GivenEventMessage.java │ │ │ │ │ │ ├── ProjectAggregate.java │ │ │ │ │ │ ├── RememberingSubscriber.java │ │ │ │ │ │ ├── TaskCreatedFilter.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ └── package-info.java │ │ │ │ └── model │ │ │ │ │ └── given │ │ │ │ │ ├── classes │ │ │ │ │ ├── ConferenceProgram.java │ │ │ │ │ ├── ConferenceSetup.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ ├── reactor │ │ │ │ │ ├── RcHandlerFailedSubscriber.java │ │ │ │ │ ├── RcIterableReturn.java │ │ │ │ │ ├── RcOneParam.java │ │ │ │ │ ├── RcReactWithRejection.java │ │ │ │ │ ├── RcReturnOptional.java │ │ │ │ │ ├── RcReturnOptionalRejection.java │ │ │ │ │ ├── RcReturnPair.java │ │ │ │ │ ├── RcReturnRejection.java │ │ │ │ │ ├── RcReturnRejectionIterable.java │ │ │ │ │ ├── RcTwoParams.java │ │ │ │ │ ├── RcWrongAnnotation.java │ │ │ │ │ ├── RcWrongFirstParam.java │ │ │ │ │ ├── RcWrongNoAnnotation.java │ │ │ │ │ ├── RcWrongNoParam.java │ │ │ │ │ ├── RcWrongSecondParam.java │ │ │ │ │ ├── TestEventReactor.java │ │ │ │ │ └── package-info.java │ │ │ │ │ └── subscriber │ │ │ │ │ ├── ExternalSubscriber.java │ │ │ │ │ ├── InvalidNoAnnotation.java │ │ │ │ │ ├── InvalidSubscriber.java │ │ │ │ │ ├── RejectionSubscriber.java │ │ │ │ │ ├── TestEventSubscriber.java │ │ │ │ │ ├── ValidOneParam.java │ │ │ │ │ ├── ValidSubscriber.java │ │ │ │ │ └── package-info.java │ │ │ ├── given │ │ │ │ ├── context │ │ │ │ │ └── drawing │ │ │ │ │ │ └── event │ │ │ │ │ │ ├── LineEvent.java │ │ │ │ │ │ ├── LineInitEvent.java │ │ │ │ │ │ ├── LineLifecycleEvent.java │ │ │ │ │ │ ├── LineLocationEvent.java │ │ │ │ │ │ └── package-info.java │ │ │ │ ├── environment │ │ │ │ │ ├── Local.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── groups │ │ │ │ │ ├── FilteredStateSubscriber.java │ │ │ │ │ ├── GroupNameProjection.java │ │ │ │ │ ├── GroupProjection.java │ │ │ │ │ ├── HiddenEntitySubscriber.java │ │ │ │ │ ├── TestSubscriber.java │ │ │ │ │ ├── WronglyDomesticSubscriber.java │ │ │ │ │ ├── WronglyExternalSubscriber.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── organizations │ │ │ │ │ ├── OrganizationProjection.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── package-info.java │ │ │ │ ├── service │ │ │ │ │ ├── GivenCommandService.java │ │ │ │ │ ├── StatusCheckService.java │ │ │ │ │ └── package-info.java │ │ │ │ └── transport │ │ │ │ │ ├── TestGrpcServer.java │ │ │ │ │ └── package-info.java │ │ │ ├── integration │ │ │ │ └── given │ │ │ │ │ ├── DocumentAggregate.java │ │ │ │ │ ├── DocumentRepository.java │ │ │ │ │ ├── EditHistoryProjection.java │ │ │ │ │ ├── EditHistoryRepository.java │ │ │ │ │ ├── ExternalMismatchSubscriber.java │ │ │ │ │ ├── broker │ │ │ │ │ ├── BillingAggregate.java │ │ │ │ │ ├── IntegrationBrokerTestEnv.java │ │ │ │ │ ├── PhotosAggregate.java │ │ │ │ │ ├── SubscribedBillingAggregate.java │ │ │ │ │ ├── SubscribedPhotosAggregate.java │ │ │ │ │ ├── SubscribedStatisticsAggregate.java │ │ │ │ │ ├── SubscribedWarehouseAggregate.java │ │ │ │ │ └── package-info.java │ │ │ │ │ └── package-info.java │ │ │ ├── log │ │ │ │ └── given │ │ │ │ │ ├── Books.java │ │ │ │ │ ├── CardAggregate.java │ │ │ │ │ └── package-info.java │ │ │ ├── migration │ │ │ │ └── mirror │ │ │ │ │ └── given │ │ │ │ │ ├── CourierAgg.java │ │ │ │ │ ├── DeliveryService.java │ │ │ │ │ ├── FetchedEntityRecords.java │ │ │ │ │ ├── MemoizingMonitor.java │ │ │ │ │ ├── MirrorMigrationTestEnv.java │ │ │ │ │ ├── MirrorToEntityRecordTestEnv.java │ │ │ │ │ ├── ParcelAgg.java │ │ │ │ │ ├── PreparedMirrorStorage.java │ │ │ │ │ ├── PreparedStorageFactory.java │ │ │ │ │ └── package-info.java │ │ │ ├── model │ │ │ │ ├── contexts │ │ │ │ │ ├── orders │ │ │ │ │ │ ├── OrderAggregate.java │ │ │ │ │ │ ├── OrdersContext.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── projects │ │ │ │ │ │ └── package-info.java │ │ │ │ │ └── tasks │ │ │ │ │ │ ├── CreationRetry.java │ │ │ │ │ │ ├── TaskAggregate.java │ │ │ │ │ │ ├── TasksContext.java │ │ │ │ │ │ └── package-info.java │ │ │ │ ├── given │ │ │ │ │ ├── Given.java │ │ │ │ │ ├── HandlerReturnTypeTestEnv.java │ │ │ │ │ ├── MethodAccessCheckerTestEnv.java │ │ │ │ │ ├── MethodParamsTestEnv.java │ │ │ │ │ ├── ModelTestEnv.java │ │ │ │ │ ├── SignatureTestCommand.java │ │ │ │ │ ├── SignatureTestEvent.java │ │ │ │ │ ├── StubMethodContainer.java │ │ │ │ │ ├── external │ │ │ │ │ │ ├── TestCommander.java │ │ │ │ │ │ ├── TestReactor.java │ │ │ │ │ │ ├── TestSubscriber.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── filter │ │ │ │ │ │ ├── Bucket.java │ │ │ │ │ │ ├── CreateProjectCommander.java │ │ │ │ │ │ ├── CreateProjectEventCommander.java │ │ │ │ │ │ ├── ModSplitAggregate.java │ │ │ │ │ │ ├── ModSplitEventAggregate.java │ │ │ │ │ │ ├── ProjectCreatedReactor.java │ │ │ │ │ │ ├── ProjectCreatedSubscriber.java │ │ │ │ │ │ ├── ProjectTasksProjection.java │ │ │ │ │ │ ├── ProjectTasksRepository.java │ │ │ │ │ │ ├── ProjectTasksSubscriber.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── map │ │ │ │ │ │ ├── ARejectionSubscriber.java │ │ │ │ │ │ ├── CompletionWatch.java │ │ │ │ │ │ ├── DupEventFilterValue.java │ │ │ │ │ │ ├── DuplicateCommandHandlers.java │ │ │ │ │ │ ├── FilteredSubscription.java │ │ │ │ │ │ ├── Int32ImportedTypedSubscriber.java │ │ │ │ │ │ ├── ProjectAgg.java │ │ │ │ │ │ ├── TwoFieldsInSubscription.java │ │ │ │ │ │ ├── TypedSubscriber.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── method │ │ │ │ │ │ ├── OneParamMethod.java │ │ │ │ │ │ ├── OneParamSignature.java │ │ │ │ │ │ ├── OneParamSpec.java │ │ │ │ │ │ ├── StubHandler.java │ │ │ │ │ │ ├── TwoParamMethod.java │ │ │ │ │ │ ├── TwoParamSpec.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ └── storage │ │ │ │ │ │ ├── ModelTestStorageFactory.java │ │ │ │ │ │ ├── NeverForgettingStorage.java │ │ │ │ │ │ └── package-info.java │ │ │ │ └── handler │ │ │ │ │ └── given │ │ │ │ │ ├── CovariantReactor.java │ │ │ │ │ ├── InvalidContractSubscriber.java │ │ │ │ │ ├── InvalidProtectedSubscriber.java │ │ │ │ │ ├── MismatchedProtectedSubscriber.java │ │ │ │ │ ├── RougeProtectedSubscriber.java │ │ │ │ │ ├── RoverBot.java │ │ │ │ │ ├── TestContractReactor.java │ │ │ │ │ ├── TestContractSubscriber.java │ │ │ │ │ ├── TestGenericContractReactor.java │ │ │ │ │ ├── ValidProtectedSubscriber.java │ │ │ │ │ ├── event │ │ │ │ │ ├── MovingEvent.java │ │ │ │ │ └── package-info.java │ │ │ │ │ └── package-info.java │ │ │ ├── procman │ │ │ │ └── given │ │ │ │ │ ├── delivery │ │ │ │ │ ├── GivenMessage.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── dispatch │ │ │ │ │ ├── PmDispatcher.java │ │ │ │ │ ├── ProcessManagerBuilder.java │ │ │ │ │ ├── TestPmTransaction.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ ├── pm │ │ │ │ │ ├── GivenMessages.java │ │ │ │ │ ├── LastSignalMemo.java │ │ │ │ │ ├── LastSignalMemoRepo.java │ │ │ │ │ └── package-info.java │ │ │ │ │ └── repo │ │ │ │ │ ├── EventDiscardingProcManRepository.java │ │ │ │ │ ├── GivenCommandMessage.java │ │ │ │ │ ├── ProjectCompletion.java │ │ │ │ │ ├── RandomFillProcess.java │ │ │ │ │ ├── RememberingSubscriber.java │ │ │ │ │ ├── SensoryDeprivedPmRepository.java │ │ │ │ │ ├── SensoryDeprivedProcessManager.java │ │ │ │ │ ├── SetTestProcessId.java │ │ │ │ │ ├── SetTestProcessName.java │ │ │ │ │ ├── TestProcessManager.java │ │ │ │ │ ├── TestProcessManagerRepository.java │ │ │ │ │ └── package-info.java │ │ │ ├── projection │ │ │ │ └── given │ │ │ │ │ ├── EntitySubscriberProjection.java │ │ │ │ │ ├── NoDefaultOptionProjection.java │ │ │ │ │ ├── ProjectionRepositoryTestEnv.java │ │ │ │ │ ├── RandomFillProjection.java │ │ │ │ │ ├── SavingProjection.java │ │ │ │ │ ├── SetTestProjectionId.java │ │ │ │ │ ├── SetTestProjectionName.java │ │ │ │ │ ├── TestProjection.java │ │ │ │ │ ├── cls │ │ │ │ │ ├── Calcumulator.java │ │ │ │ │ ├── DifferentFieldSubscription.java │ │ │ │ │ ├── DuplicateValueSubscription.java │ │ │ │ │ ├── FilteringProjection.java │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── dispatch │ │ │ │ │ ├── ProjectionBuilder.java │ │ │ │ │ ├── ProjectionEventDispatcher.java │ │ │ │ │ └── package-info.java │ │ │ │ │ └── package-info.java │ │ │ ├── route │ │ │ │ └── given │ │ │ │ │ ├── package-info.java │ │ │ │ │ ├── sur │ │ │ │ │ ├── ArtistMoodProjection.java │ │ │ │ │ ├── ArtistMoodRepo.java │ │ │ │ │ ├── Gallery.java │ │ │ │ │ ├── MagazineAggregate.java │ │ │ │ │ ├── PieceOfArtProjection.java │ │ │ │ │ ├── Surrealism.java │ │ │ │ │ ├── WorksProjection.java │ │ │ │ │ └── package-info.java │ │ │ │ │ └── switchman │ │ │ │ │ └── package-info.java │ │ │ ├── security │ │ │ │ └── GivenRestrictedApi.java │ │ │ ├── stand │ │ │ │ └── given │ │ │ │ │ ├── AloneWaiter.java │ │ │ │ │ ├── Given.java │ │ │ │ │ ├── MenuProjection.java │ │ │ │ │ ├── MenuRepository.java │ │ │ │ │ ├── StandTestEnv.java │ │ │ │ │ ├── SubscriptionRecordTestEnv.java │ │ │ │ │ └── package-info.java │ │ │ ├── storage │ │ │ │ ├── RecordStorageUnderTest.java │ │ │ │ ├── given │ │ │ │ │ ├── EntityRecordStorageTestEnv.java │ │ │ │ │ ├── Given.java │ │ │ │ │ ├── GivenStorageProject.java │ │ │ │ │ ├── IntIdentifier.java │ │ │ │ │ ├── RecordStorageDelegateTestEnv.java │ │ │ │ │ ├── StgProjectStorage.java │ │ │ │ │ ├── TestColumnMapping.java │ │ │ │ │ └── package-info.java │ │ │ │ ├── memory │ │ │ │ │ └── given │ │ │ │ │ │ ├── RecordQueryMatcherTestEnv.java │ │ │ │ │ │ └── package-info.java │ │ │ │ └── system │ │ │ │ │ └── given │ │ │ │ │ ├── MemoizingStorageFactory.java │ │ │ │ │ ├── TestAggregate.java │ │ │ │ │ └── package-info.java │ │ │ ├── trace │ │ │ │ └── given │ │ │ │ │ ├── MemoizingTracer.java │ │ │ │ │ ├── MemoizingTracerFactory.java │ │ │ │ │ ├── TracingTestEnv.java │ │ │ │ │ ├── airport │ │ │ │ │ ├── AirportContext.java │ │ │ │ │ ├── BoardingProcman.java │ │ │ │ │ ├── FlightAggregate.java │ │ │ │ │ ├── FlightRepository.java │ │ │ │ │ ├── TimetableProjection.java │ │ │ │ │ ├── TimetableRepository.java │ │ │ │ │ └── package-info.java │ │ │ │ │ └── package-info.java │ │ │ ├── transport │ │ │ │ └── memory │ │ │ │ │ └── given │ │ │ │ │ ├── ThrowingObserver.java │ │ │ │ │ └── package-info.java │ │ │ ├── tuple │ │ │ │ └── given │ │ │ │ │ ├── QuintetTestEnv.java │ │ │ │ │ └── package-info.java │ │ │ └── type │ │ │ │ └── given │ │ │ │ ├── EventEnvelopeTestEnv.java │ │ │ │ ├── EventsTestEnv.java │ │ │ │ ├── GivenEvent.java │ │ │ │ └── package-info.java │ │ │ ├── system │ │ │ └── server │ │ │ │ ├── DiagnosticMonitor.java │ │ │ │ ├── MemoizedSystemMessage.java │ │ │ │ ├── MemoizingWriteSide.java │ │ │ │ ├── ModelInfo.java │ │ │ │ ├── SystemBoundedContexts.java │ │ │ │ └── given │ │ │ │ ├── AbstractEventAccumulator.java │ │ │ │ ├── SystemConfig.java │ │ │ │ ├── SystemContextSettingsTestEnv.java │ │ │ │ ├── client │ │ │ │ ├── MealOrderProjection.java │ │ │ │ ├── MealOrderRepository.java │ │ │ │ ├── SystemClientTestEnv.java │ │ │ │ └── package-info.java │ │ │ │ ├── command │ │ │ │ ├── CommandLifecycleWatcher.java │ │ │ │ ├── CompanyAggregate.java │ │ │ │ ├── CompanyNameProcman.java │ │ │ │ ├── CompanyNameProcmanRepo.java │ │ │ │ └── package-info.java │ │ │ │ ├── diagnostics │ │ │ │ ├── ValidatedAggregate.java │ │ │ │ ├── VerificationProcman.java │ │ │ │ ├── ViolationsWatch.java │ │ │ │ └── package-info.java │ │ │ │ ├── entity │ │ │ │ ├── HistoryEventWatcher.java │ │ │ │ ├── PersonAggregate.java │ │ │ │ ├── PersonNamePart.java │ │ │ │ ├── PersonProcman.java │ │ │ │ ├── PersonProcmanRepository.java │ │ │ │ ├── PersonProjection.java │ │ │ │ ├── PersonRoot.java │ │ │ │ └── package-info.java │ │ │ │ ├── package-info.java │ │ │ │ └── schedule │ │ │ │ ├── TestCommandScheduler.java │ │ │ │ └── package-info.java │ │ │ ├── test │ │ │ ├── client │ │ │ │ ├── ActiveUsersProjection.java │ │ │ │ ├── ClientTestContext.java │ │ │ │ ├── LoginProcess.java │ │ │ │ └── package-info.java │ │ │ └── route │ │ │ │ ├── LoginEvent.java │ │ │ │ ├── UserAccountEvent.java │ │ │ │ ├── UserEvent.java │ │ │ │ └── package-info.java │ │ │ └── testdata │ │ │ ├── Sample.java │ │ │ └── package-info.java │ ├── tres │ │ └── quattro │ │ │ ├── Counter.java │ │ │ └── package-info.java │ └── uno │ │ └── dos │ │ ├── Encounter.java │ │ └── package-info.java │ ├── kotlin │ └── io │ │ └── spine │ │ └── server │ │ ├── aggregate │ │ └── AggregateTestSupport.kt │ │ └── given │ │ └── context │ │ ├── counting │ │ └── CountingContext.kt │ │ ├── drawing │ │ └── DrawingContext.kt │ │ ├── fizzbuzz │ │ └── FizzBuzzContext.kt │ │ ├── sorting │ │ └── SortingContext.kt │ │ ├── switchman │ │ ├── Log.kt │ │ ├── Switchman.kt │ │ └── SwitchmanBureau.kt │ │ └── users │ │ └── UsersContext.kt │ └── proto │ └── spine │ ├── server │ └── given │ │ ├── context │ │ ├── counting │ │ │ ├── commands.proto │ │ │ ├── entities.proto │ │ │ ├── events.proto │ │ │ └── range.proto │ │ ├── drawing │ │ │ ├── events.proto │ │ │ ├── log.proto │ │ │ └── objects.proto │ │ ├── fizzbuzz │ │ │ ├── commands.proto │ │ │ ├── entities.proto │ │ │ ├── events.proto │ │ │ └── qualifier.proto │ │ ├── sorting │ │ │ ├── commands.proto │ │ │ ├── events.proto │ │ │ ├── figure.proto │ │ │ └── sorter.proto │ │ ├── switchman │ │ │ ├── commands.proto │ │ │ ├── events.proto │ │ │ ├── rejections.proto │ │ │ └── switchman.proto │ │ └── users │ │ │ ├── entities.proto │ │ │ └── events.proto │ │ └── model │ │ └── signature │ │ └── events.proto │ └── test │ ├── aggregate │ ├── cli │ │ ├── commands.proto │ │ └── events.proto │ ├── commands.proto │ ├── events.proto │ ├── fibonacci │ │ ├── commands.proto │ │ ├── events.proto │ │ └── fibonacci.proto │ ├── importado │ │ ├── commands.proto │ │ ├── events.proto │ │ └── movement.proto │ ├── klasse │ │ ├── commands.proto │ │ ├── events.proto │ │ ├── motor.proto │ │ └── rejections.proto │ ├── log.proto │ ├── number │ │ ├── commands.proto │ │ └── events.proto │ ├── project.proto │ ├── query │ │ ├── media.proto │ │ ├── media_commands.proto │ │ └── media_events.proto │ ├── rejections.proto │ ├── task.proto │ └── thermometer │ │ ├── events.proto │ │ └── thermometer.proto │ ├── bc │ ├── commands.proto │ ├── events.proto │ └── project.proto │ ├── bus │ └── stock │ │ ├── commands.proto │ │ ├── events.proto │ │ ├── index.proto │ │ ├── rejections.proto │ │ └── share.proto │ ├── client │ ├── billing │ │ └── events.proto │ ├── tasks │ │ ├── commands.proto │ │ ├── events.proto │ │ └── task.proto │ └── users │ │ ├── README.md │ │ ├── active_users.proto │ │ ├── commands.proto │ │ ├── events.proto │ │ ├── login.proto │ │ ├── rejections.proto │ │ └── user_account.proto │ ├── command │ ├── commands.proto │ ├── events.proto │ └── project.proto │ ├── commandbus │ ├── caffetteria.proto │ ├── caffetteria_commands.proto │ ├── caffetteria_events.proto │ ├── caffetteria_rejections.proto │ ├── commands.proto │ ├── events.proto │ └── project.proto │ ├── commandservice │ ├── commands.proto │ ├── customer │ │ ├── commands.proto │ │ ├── customer.proto │ │ └── events.proto │ ├── events.proto │ ├── project.proto │ └── unknown_commands.proto │ ├── core │ └── given │ │ ├── commands.proto │ │ └── enrichments_test_events.proto │ ├── delivery │ ├── calc.proto │ ├── consecutive_number.proto │ ├── counter.proto │ ├── delivery_commands.proto │ ├── delivery_events.proto │ ├── receptionist.proto │ ├── receptionist_commands.proto │ ├── receptionist_events.proto │ └── task.proto │ ├── diagnostics │ ├── commands.proto │ ├── events.proto │ ├── validated.proto │ ├── verification.proto │ └── violations.proto │ ├── dispatch │ ├── dispatch_commands.proto │ ├── dispatch_entities.proto │ ├── dispatch_events.proto │ └── dispatch_rejections.proto │ ├── enrichment │ ├── enrichment_builder_test_events.proto │ ├── enrichment_test_commands.proto │ ├── enrichment_test_entities.proto │ ├── enrichment_test_events.proto │ ├── enrichment_test_identifiers.proto │ └── schema_fn_tests_events.proto │ ├── entity │ ├── commands.proto │ ├── events.proto │ ├── groups │ │ ├── group.proto │ │ └── hidden_participant.proto │ ├── natural_number.proto │ ├── organizations │ │ ├── events.proto │ │ └── organization.proto │ ├── project.proto │ ├── task_view.proto │ ├── user.proto │ ├── user_commands.proto │ ├── user_events.proto │ ├── visibility_guard_test.proto │ └── visibility_test.proto │ ├── event │ ├── charity_events.proto │ ├── commands.proto │ ├── control_events.proto │ ├── events.proto │ ├── model │ │ ├── conference.proto │ │ └── events.proto │ ├── project.proto │ ├── rejections.proto │ ├── restaurant.proto │ ├── restaurant_events.proto │ └── team.proto │ ├── integration │ ├── billing_events.proto │ ├── broker │ │ ├── commands.proto │ │ ├── entities.proto │ │ └── events.proto │ ├── commands.proto │ ├── doc_commands.proto │ ├── doc_events.proto │ ├── docs.proto │ ├── entities.proto │ ├── events.proto │ ├── identifiers.proto │ ├── integration_rejections.proto │ ├── photos_commands.proto │ ├── photos_events.proto │ └── project.proto │ ├── library │ ├── card.proto │ ├── commands.proto │ ├── events.proto │ └── rejections.proto │ ├── migration │ └── mirror │ │ ├── aggregates.proto │ │ ├── events.proto │ │ └── identifiers.proto │ ├── mixin │ └── mixin_commands.proto │ ├── model │ ├── commands.proto │ ├── contexts │ │ ├── orders │ │ │ ├── order.proto │ │ │ ├── order_commands.proto │ │ │ └── order_events.proto │ │ ├── projects │ │ │ ├── commands.proto │ │ │ ├── events.proto │ │ │ ├── project.proto │ │ │ └── rejections.proto │ │ └── tasks │ │ │ ├── task.proto │ │ │ ├── task_commands.proto │ │ │ ├── task_events.proto │ │ │ └── task_rejections.proto │ ├── events.proto │ ├── external │ │ └── events.proto │ ├── filter │ │ ├── argument_filter_test_events.proto │ │ └── project.proto │ ├── handler │ │ ├── commands.proto │ │ ├── events.proto │ │ └── moving_bot.proto │ └── rejections.proto │ ├── procman │ ├── cmd_routing_test.proto │ ├── commands.proto │ ├── events.proto │ ├── project.proto │ ├── quiz │ │ ├── commands.proto │ │ ├── events.proto │ │ └── quiz.proto │ ├── rejections.proto │ └── unknown_commands.proto │ ├── projection │ ├── commands.proto │ ├── events.proto │ ├── project.proto │ └── projection_test_env.proto │ ├── reflect │ ├── commands.proto │ ├── events.proto │ ├── field_test.proto │ ├── project.proto │ └── reflect_rejections.proto │ ├── rejection │ └── test_rejections.proto │ ├── route │ ├── commands.proto │ ├── events.proto │ └── state │ │ ├── README.md │ │ ├── commands.proto │ │ ├── events.proto │ │ └── surrealism.proto │ ├── server │ ├── envelope │ │ ├── events.proto │ │ ├── project.proto │ │ └── task.proto │ └── status_check.proto │ ├── shared_events.proto │ ├── shared_types.proto │ ├── stand │ ├── cafeteria.proto │ └── cafeteria_events.proto │ ├── storage │ ├── commands.proto │ ├── events.proto │ ├── imports │ │ └── events.proto │ └── project.proto │ ├── subscriptionservice │ ├── report.proto │ ├── report_commands.proto │ └── report_events.proto │ ├── system │ └── server │ │ ├── bus_test_events.proto │ │ ├── command_lifecycle_test.proto │ │ ├── command_lifecycle_test_commands.proto │ │ ├── command_lifecycle_test_events.proto │ │ ├── command_lifecycle_test_rejections.proto │ │ ├── entity_history_test.proto │ │ ├── entity_history_test_commands.proto │ │ ├── entity_history_test_events.proto │ │ ├── meal_events.proto │ │ ├── meal_order.proto │ │ └── system_features.proto │ ├── trace │ ├── airport.proto │ ├── airport_commands.proto │ ├── airport_events.proto │ ├── boarding.proto │ └── timetable.proto │ ├── tuple │ ├── quartet.proto │ └── quintet.proto │ ├── tx │ ├── README.md │ ├── tx_commands.proto │ ├── tx_entities.proto │ └── tx_events.proto │ └── unpublished │ ├── commands.proto │ ├── events.proto │ └── locomotive.proto ├── settings.gradle.kts ├── testutil-client ├── build.gradle.kts └── src │ ├── main │ ├── java │ │ └── io │ │ │ └── spine │ │ │ └── testing │ │ │ └── client │ │ │ ├── TestActorRequestFactory.java │ │ │ ├── grpc │ │ │ ├── TestClient.java │ │ │ └── package-info.java │ │ │ └── package-info.java │ └── proto │ │ └── spine │ │ └── testing │ │ └── client │ │ └── commands.proto │ └── test │ ├── kotlin │ └── TestActorRequestFactorySpec.kt │ └── proto │ └── spine │ └── testing │ └── client │ └── blackbox │ ├── commands.proto │ ├── events.proto │ ├── project.proto │ ├── rejections.proto │ └── report.proto ├── testutil-core ├── build.gradle.kts └── src │ ├── main │ └── java │ │ └── io │ │ └── spine │ │ └── testing │ │ └── core │ │ └── given │ │ ├── GivenCommandContext.java │ │ ├── GivenEnrichment.java │ │ ├── GivenTenantId.java │ │ ├── GivenUserId.java │ │ ├── GivenVersion.java │ │ └── package-info.java │ └── test │ └── java │ └── io │ └── spine │ └── testing │ └── core │ └── given │ ├── GivenCommandContextTest.java │ ├── GivenEnrichmentTest.java │ ├── GivenTenantIdTest.java │ ├── GivenUserIdTest.java │ └── GivenVersionTest.java ├── testutil-server ├── build.gradle.kts └── src │ ├── main │ ├── java │ │ └── io │ │ │ └── spine │ │ │ └── testing │ │ │ └── server │ │ │ ├── Assertions.java │ │ │ ├── CommandSubject.java │ │ │ ├── EmittedMessageSubject.java │ │ │ ├── EventSubject.java │ │ │ ├── NoOpLifecycle.java │ │ │ ├── TestEventFactory.java │ │ │ ├── blackbox │ │ │ ├── Actor.java │ │ │ ├── BlackBox.java │ │ │ ├── BlackBoxClients.java │ │ │ ├── BlackBoxSetup.java │ │ │ ├── ClientFactory.java │ │ │ ├── ContextAwareTest.java │ │ │ ├── MtBlackBox.java │ │ │ ├── StBlackBox.java │ │ │ ├── SubscriptionFixture.java │ │ │ ├── package-info.java │ │ │ └── probe │ │ │ │ ├── BlackboxProbe.java │ │ │ │ ├── CommandCollector.java │ │ │ │ ├── DiagnosticLog.java │ │ │ │ ├── DiagnosticLogging.java │ │ │ │ ├── EventCollector.java │ │ │ │ ├── FailedHandlerGuard.java │ │ │ │ ├── HandlerFailureTolerance.java │ │ │ │ ├── MessageCollector.java │ │ │ │ ├── UnsupportedCommandGuard.java │ │ │ │ └── package-info.java │ │ │ ├── entity │ │ │ ├── EntitySubject.java │ │ │ ├── EntityVersionSubject.java │ │ │ ├── IterableEntityVersionSubject.java │ │ │ └── package-info.java │ │ │ ├── model │ │ │ ├── ModelTests.java │ │ │ └── package-info.java │ │ │ ├── package-info.java │ │ │ ├── query │ │ │ ├── QueryResultSubject.java │ │ │ ├── ResponseStatusSubject.java │ │ │ └── package-info.java │ │ │ └── tenant │ │ │ ├── TenantAwareTest.java │ │ │ └── package-info.java │ ├── kotlin │ │ └── io │ │ │ └── spine │ │ │ └── testing │ │ │ └── server │ │ │ └── blackbox │ │ │ └── BlackBoxExts.kt │ └── proto │ │ └── spine │ │ └── testing │ │ └── server │ │ └── black_box.proto │ └── test │ ├── java │ └── io │ │ └── spine │ │ └── testing │ │ ├── client │ │ └── grpc │ │ │ ├── README.md │ │ │ ├── TestClientTest.java │ │ │ └── given │ │ │ ├── GameProcess.java │ │ │ ├── GameRepository.java │ │ │ └── package-info.java │ │ └── server │ │ ├── CommandSubjectTest.java │ │ ├── EmittedMessageSubjectTest.java │ │ ├── EventSubjectTest.java │ │ ├── blackbox │ │ ├── BlackBoxTest.java │ │ ├── ContextAwareTestTest.java │ │ ├── MtBlackBoxTest.java │ │ ├── StBlackBoxTest.java │ │ ├── given │ │ │ ├── BbCommandDispatcher.java │ │ │ ├── BbEventDispatcher.java │ │ │ ├── BbInitProcess.java │ │ │ ├── BbProjectAggregate.java │ │ │ ├── BbProjectFailerProcess.java │ │ │ ├── BbProjectRepository.java │ │ │ ├── BbProjectViewProjection.java │ │ │ ├── BbReportAggregate.java │ │ │ ├── BbReportRepository.java │ │ │ ├── Given.java │ │ │ ├── GivenCommandError.java │ │ │ ├── RepositoryThrowingExceptionOnClose.java │ │ │ ├── StubTenantIndex.java │ │ │ └── package-info.java │ │ └── probe │ │ │ ├── DiagnosticLogTest.java │ │ │ ├── DiagnosticLoggingTest.java │ │ │ └── FailedHandlerGuardTest.java │ │ ├── entity │ │ ├── EntitySubjectTest.java │ │ ├── EntityVersionSubjectTest.java │ │ ├── HasVersionColumnTest.java │ │ ├── IterableEntityVersionSubjectTest.java │ │ └── given │ │ │ ├── GivenEntityVersion.java │ │ │ ├── TestEntity.java │ │ │ └── package-info.java │ │ ├── given │ │ └── package-info.java │ │ ├── model │ │ ├── ModelTestsTest.java │ │ └── given │ │ │ ├── ModelTestsTestEnv.java │ │ │ └── package-info.java │ │ ├── query │ │ ├── GivenResponseStatus.java │ │ ├── QueryResultSubjectTest.java │ │ ├── QueryResultSubjectTestEnv.java │ │ └── ResponseStatusSubjectTest.java │ │ └── tenant │ │ └── TenantAwareTestTest.java │ ├── kotlin │ └── io │ │ └── spine │ │ └── testing │ │ └── server │ │ └── blackbox │ │ └── probe │ │ └── UnsupportedCommandGuardSpec.kt │ └── proto │ └── spine │ └── testing │ ├── client │ └── ping │ │ ├── README.md │ │ ├── commands.proto │ │ ├── events.proto │ │ └── table.proto │ └── server │ ├── blackbox │ ├── commands.proto │ ├── entities.proto │ ├── events.proto │ ├── rejections.proto │ └── report.proto │ ├── commands.proto │ ├── entities.proto │ ├── events.proto │ ├── log │ ├── commands.proto │ ├── events.proto │ └── external_events.proto │ ├── rejections.proto │ └── user.proto └── version.gradle.kts /.codecov.yml: -------------------------------------------------------------------------------- 1 | # 2 | # See default configuration here: https://github.com/codecov/support/blob/master/codecov.yml 3 | # 4 | # For more options see: https://gist.github.com/stevepeak/53bee7b2c326b24a9b4a 5 | # 6 | # Codecov documentation is available here: https://codecov.io/docs 7 | 8 | coverage: 9 | ignore: 10 | - "**/generated/**/*" 11 | - "**/examples/**/*" 12 | - "**/test/**/*" 13 | status: 14 | # https://docs.codecov.com/docs/github-checks#yaml-configuration-for-github-checks-and-codecov 15 | patch: false 16 | # https://docs.codecov.com/docs/commit-status 17 | project: 18 | default: 19 | target: auto 20 | threshold: 0.05% 21 | base: auto 22 | paths: 23 | - "src" 24 | if_ci_failed: error 25 | informational: false 26 | only_pulls: true 27 | 28 | comment: 29 | layout: "header, diff, changes, uncovered" 30 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Set the default behavior, in case people don't have core.autocrlf set. 2 | * text=auto 3 | 4 | # Explicitly declare text files you want to always be normalized and converted 5 | # to native line endings on checkout. 6 | 7 | # Common formats 8 | *.html text 9 | *.xml text 10 | *.css text 11 | *.scss text 12 | *.js text 13 | *.properties text 14 | *.rtf text 15 | *.yaml text 16 | *.yml text 17 | *.md text 18 | 19 | LICENSE text 20 | 21 | # SQL scripts 22 | *.sql text 23 | 24 | # Java sources 25 | *.java text 26 | 27 | # Python sources 28 | *.py text 29 | 30 | # Gradle build files 31 | *.gradle text 32 | 33 | # Google protocol buffers 34 | *.proto text 35 | 36 | # Miscellaneous 37 | *.rb text 38 | 39 | # Declare files that will always have CRLF line endings on checkout. 40 | *.bat text eol=crlf 41 | 42 | # Declare files that will always have LF line endings on checkout. 43 | *.sh text eol=lf 44 | gradlew text eol=lf 45 | pull text eol=lf 46 | 47 | # Denote all files that are truly binary and should not be modified. 48 | *.png binary 49 | *.jpg binary 50 | *.gif binary 51 | *.swf binary 52 | *.jar binary 53 | *.desc binary 54 | 55 | *.scpt binary 56 | *.scssc binary 57 | 58 | # Encrypted files 59 | *.enc binary 60 | *.gpg binary 61 | *.weis binary 62 | -------------------------------------------------------------------------------- /.github/keys/cloudrepo.properties.gpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SpineEventEngine/core-java/696462168a4f00aafcee97f4553b23e78519fc8c/.github/keys/cloudrepo.properties.gpg -------------------------------------------------------------------------------- /.github/keys/deploy_key_rsa.gpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SpineEventEngine/core-java/696462168a4f00aafcee97f4553b23e78519fc8c/.github/keys/deploy_key_rsa.gpg -------------------------------------------------------------------------------- /.github/keys/firebase-sa.json.gpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SpineEventEngine/core-java/696462168a4f00aafcee97f4553b23e78519fc8c/.github/keys/firebase-sa.json.gpg -------------------------------------------------------------------------------- /.github/keys/gcs-auth-key.json.gpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SpineEventEngine/core-java/696462168a4f00aafcee97f4553b23e78519fc8c/.github/keys/gcs-auth-key.json.gpg -------------------------------------------------------------------------------- /.github/keys/gradle-plugin-portal.secret.properties.gpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SpineEventEngine/core-java/696462168a4f00aafcee97f4553b23e78519fc8c/.github/keys/gradle-plugin-portal.secret.properties.gpg -------------------------------------------------------------------------------- /.github/keys/maven-publisher.json.gpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SpineEventEngine/core-java/696462168a4f00aafcee97f4553b23e78519fc8c/.github/keys/maven-publisher.json.gpg -------------------------------------------------------------------------------- /.github/workflows/build-on-ubuntu.yml: -------------------------------------------------------------------------------- 1 | name: Build under Ubuntu 2 | 3 | on: push 4 | 5 | jobs: 6 | build: 7 | name: Build under Ubuntu 8 | runs-on: ubuntu-latest 9 | 10 | steps: 11 | - uses: actions/checkout@v4 12 | with: 13 | submodules: 'true' 14 | 15 | - uses: actions/setup-java@v4 16 | with: 17 | java-version: 17 18 | distribution: zulu 19 | cache: gradle 20 | 21 | - name: Build project and run tests 22 | shell: bash 23 | run: ./gradlew build --stacktrace 24 | 25 | # See: https://github.com/marketplace/actions/junit-report-action 26 | - name: Publish Test Report 27 | uses: mikepenz/action-junit-report@v4.0.3 28 | if: always() # always run even if the previous step fails 29 | with: 30 | report_paths: '**/build/test-results/**/TEST-*.xml' 31 | require_tests: true # will fail workflow if test reports not found 32 | 33 | - name: Upload code coverage report 34 | uses: codecov/codecov-action@v4 35 | with: 36 | token: ${{ secrets.CODECOV_TOKEN }} 37 | fail_ci_if_error: false 38 | verbose: true 39 | -------------------------------------------------------------------------------- /.github/workflows/build-on-windows.yml: -------------------------------------------------------------------------------- 1 | name: Build under Windows 2 | 3 | on: pull_request 4 | 5 | jobs: 6 | build: 7 | name: Build under Windows 8 | runs-on: windows-latest 9 | 10 | steps: 11 | - uses: actions/checkout@v4 12 | with: 13 | submodules: 'true' 14 | 15 | - uses: actions/setup-java@v4 16 | with: 17 | java-version: 17 18 | distribution: zulu 19 | cache: gradle 20 | 21 | # See: https://github.com/al-cheb/configure-pagefile-action 22 | - name: Configure Pagefile 23 | uses: al-cheb/configure-pagefile-action@v1.3 24 | 25 | - name: Build project and run tests 26 | shell: cmd 27 | # For the reason on `--no-daemon` see https://github.com/actions/cache/issues/454 28 | run: gradlew.bat build --stacktrace --no-daemon 29 | 30 | # See: https://github.com/marketplace/actions/junit-report-action 31 | - name: Publish Test Report 32 | uses: mikepenz/action-junit-report@v4.0.3 33 | if: always() # always run even if the previous step fails 34 | with: 35 | report_paths: '**/build/test-results/**/TEST-*.xml' 36 | require_tests: true # will fail workflow if test reports not found 37 | -------------------------------------------------------------------------------- /.github/workflows/ensure-reports-updated.yml: -------------------------------------------------------------------------------- 1 | # Ensures that the license report files were modified in this PR. 2 | 3 | name: Ensure license reports updated 4 | 5 | on: 6 | pull_request: 7 | branches: 8 | - '**' 9 | 10 | jobs: 11 | build: 12 | name: Ensure license reports updated 13 | runs-on: ubuntu-latest 14 | 15 | steps: 16 | - uses: actions/checkout@v4 17 | with: 18 | # Configure the checkout of all branches, so that it is possible to run the comparison. 19 | fetch-depth: 0 20 | # Check out the `config` submodule to fetch the required script file. 21 | submodules: true 22 | 23 | - name: Check that both `pom.xml` and license report files are modified 24 | shell: bash 25 | run: chmod +x ./config/scripts/ensure-reports-updated.sh && ./config/scripts/ensure-reports-updated.sh 26 | -------------------------------------------------------------------------------- /.github/workflows/gradle-wrapper-validation.yml: -------------------------------------------------------------------------------- 1 | name: Validate Gradle Wrapper 2 | on: 3 | push: 4 | branches: 5 | - main 6 | pull_request: 7 | branches: 8 | - '**' 9 | 10 | jobs: 11 | validation: 12 | name: Gradle Wrapper Validation 13 | runs-on: ubuntu-latest 14 | steps: 15 | - name: Checkout latest code 16 | uses: actions/checkout@v4 17 | 18 | - name: Validate Gradle Wrapper 19 | uses: gradle/actions/wrapper-validation@v4 20 | -------------------------------------------------------------------------------- /.github/workflows/increment-guard.yml: -------------------------------------------------------------------------------- 1 | # Ensures that the current lib version is not yet published but executing the Gradle 2 | # `checkVersionIncrement` task. 3 | 4 | name: Check version increment 5 | 6 | on: 7 | push: 8 | branches: 9 | - '**' 10 | 11 | jobs: 12 | build: 13 | name: Check version increment 14 | runs-on: ubuntu-latest 15 | 16 | steps: 17 | - uses: actions/checkout@v4 18 | with: 19 | submodules: 'true' 20 | 21 | - uses: actions/setup-java@v4 22 | with: 23 | java-version: 17 24 | distribution: zulu 25 | cache: gradle 26 | 27 | - name: Check version is not yet published 28 | shell: bash 29 | run: ./gradlew checkVersionIncrement --stacktrace 30 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "config"] 2 | path = config 3 | url = https://github.com/SpineEventEngine/config 4 | -------------------------------------------------------------------------------- /.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | -------------------------------------------------------------------------------- /.idea/copyright/TeamDev_Open_Source.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/filetypes/Google Protobuf.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /.idea/live-templates/README.md: -------------------------------------------------------------------------------- 1 | ### Live Templates 2 | 3 | This directory contains two live template groups: 4 | 5 | 1. `Spine.xml`: shortcuts for the repeated patterns used in the framework. 6 | 2. `User.xml`: a single shortcut to generate TODO comments. 7 | 8 | ### Instlallation 9 | 10 | Live templates are not picked up by IDEA automatically. They should be added manually. 11 | In order to add these templates, perform the following steps: 12 | 13 | 1. Copy `*.xml` files from this directory to `templates` directory in the IntelliJ IDEA 14 | [settings folder][settings_folder]. 15 | 2. Restart IntelliJ IDEA: `File -> Invalidate Caches -> Just restart`. 16 | 3. Go to `Preferences -> Editor -> Live Templates`. 17 | 4. Verify `User` and `Spine` template groups are present. 18 | 19 | [settings_folder]: https://www.jetbrains.com/help/idea/directories-used-by-the-ide-to-store-settings-caches-plugins-and-logs.html#config-directory 20 | 21 | ### Configuring `User.todo` template 22 | 23 | 1. Open the corresponding template: `Preferences -> Editor -> Live Templates -> User.todo`. 24 | 2. Click on `Edit variables`. 25 | 3. Set `USER` variable to your domain email address without `@teamdev.com` ending. For example, 26 | for `jack.sparrow@teamdev.com` use the follwoing expression `"jack.sparrow"`. 27 | 4. Verify that the template generates expected comments: `// TODO:2022-11-03:jack.sparrow: <...>`. 28 | -------------------------------------------------------------------------------- /.idea/live-templates/User.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | -------------------------------------------------------------------------------- /buildSrc/aus.weis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SpineEventEngine/core-java/696462168a4f00aafcee97f4553b23e78519fc8c/buildSrc/aus.weis -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/build/AnimalSniffer.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.dependency.build 28 | 29 | // https://www.mojohaus.org/animal-sniffer/animal-sniffer-maven-plugin/ 30 | @Suppress("unused", "ConstPropertyName") 31 | object AnimalSniffer { 32 | private const val version = "1.21" 33 | const val lib = "org.codehaus.mojo:animal-sniffer-annotations:$version" 34 | } 35 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/build/Pmd.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | @file:Suppress("MaxLineLength") 28 | 29 | package io.spine.dependency.build 30 | 31 | // https://github.com/pmd/pmd/releases 32 | @Suppress("unused", "ConstPropertyName") 33 | object Pmd { 34 | const val version = "7.12.0" 35 | } 36 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/kotlinx/KotlinX.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.dependency.kotlinx 28 | 29 | @Suppress("ConstPropertyName") // https://bit.ly/kotlin-prop-names 30 | object KotlinX { 31 | const val group = "org.jetbrains.kotlinx" 32 | } 33 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/lib/ApacheHttp.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.dependency.lib 28 | 29 | @Suppress("unused", "ConstPropertyName") 30 | object ApacheHttp { 31 | 32 | // https://hc.apache.org/downloads.cgi 33 | const val core = "org.apache.httpcomponents:httpcore:4.4.14" 34 | } 35 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/lib/BouncyCastle.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.dependency.lib 28 | 29 | // https://www.bouncycastle.org/java.html 30 | @Suppress("unused", "ConstPropertyName") 31 | object BouncyCastle { 32 | const val libPkcsJdk15 = "org.bouncycastle:bcpkix-jdk15on:1.68" 33 | } 34 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/lib/Clikt.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.dependency.lib 28 | 29 | // https://ajalt.github.io/clikt/ 30 | @Suppress("unused") 31 | object Clikt { 32 | private const val version = "3.5.2" 33 | const val lib = "com.github.ajalt.clikt:clikt:$version" 34 | } 35 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/lib/CommonsCodec.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.dependency.lib 28 | 29 | // https://commons.apache.org/proper/commons-codec/changes-report.html 30 | @Suppress("unused", "ConstPropertyName") 31 | object CommonsCodec { 32 | private const val version = "1.16.0" 33 | const val lib = "commons-codec:commons-codec:$version" 34 | } 35 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/lib/Firebase.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.dependency.lib 28 | 29 | // https://firebase.google.com/docs/admin/setup#java 30 | @Suppress("unused", "ConstPropertyName") 31 | object Firebase { 32 | private const val adminVersion = "8.1.0" 33 | const val admin = "com.google.firebase:firebase-admin:$adminVersion" 34 | } 35 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/lib/Klaxon.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.dependency.lib 28 | 29 | /** 30 | * A JSON parser in Kotlin. 31 | * 32 | * [Klaxon](https://github.com/cbeust/klaxon) 33 | */ 34 | @Suppress("unused", "ConstPropertyName") 35 | object Klaxon { 36 | private const val version = "5.6" 37 | const val lib = "com.beust:klaxon:$version" 38 | } 39 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/lib/KotlinPoet.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.dependency.lib 28 | 29 | // https://github.com/square/kotlinpoet 30 | @Suppress("unused", "ConstPropertyName") 31 | object KotlinPoet { 32 | private const val version = "2.0.0" 33 | const val lib = "com.squareup:kotlinpoet:$version" 34 | const val ksp = "com.squareup:kotlinpoet-ksp:$version" 35 | } 36 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/lib/KotlinSemver.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.dependency.lib 28 | 29 | // https://github.com/z4kn4fein/kotlin-semver 30 | @Suppress("unused", "ConstPropertyName") 31 | object KotlinSemver { 32 | private const val version = "2.0.0" 33 | const val lib = "io.github.z4kn4fein:semver:$version" 34 | } 35 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/test/Jacoco.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.dependency.test 28 | 29 | /** 30 | * Code coverage library for Java. 31 | * 32 | * @see Releases 33 | */ 34 | @Suppress("ConstPropertyName") 35 | object Jacoco { 36 | const val version = "0.8.13" 37 | } 38 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/test/Kover.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.dependency.test 28 | 29 | // https://github.com/Kotlin/kotlinx-kover 30 | @Suppress("unused", "ConstPropertyName") 31 | object Kover { 32 | const val version = "0.9.1" 33 | const val id = "org.jetbrains.kotlinx.kover" 34 | const val classpath = "org.jetbrains.kotlinx:kover-gradle-plugin:$version" 35 | } 36 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/dependency/test/SystemLambda.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.dependency.test 28 | 29 | // https://github.com/stefanbirkner/system-lambda 30 | @Suppress("unused", "ConstPropertyName") 31 | object SystemLambda { 32 | const val version = "1.2.1" 33 | const val group = "com.github.stefanbirkner" 34 | const val lib = "$group:system-lambda:$version" 35 | } 36 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/gradle/Build.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.gradle 28 | 29 | @Suppress("unused") 30 | object Build { 31 | val ci = "true".equals(System.getenv("CI")) 32 | } 33 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/gradle/RunBuild.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.gradle 28 | 29 | /** 30 | * Runs the `build` task via Gradle Wrapper. 31 | */ 32 | open class RunBuild : RunGradle() { 33 | 34 | init { 35 | task("clean", "build") 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/gradle/StringExtensions.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.gradle 28 | 29 | /** 30 | * Returns `true` if the version of a project contains `snapshot` (in any case), 31 | * `false` otherwise. 32 | */ 33 | fun String.isSnapshot(): Boolean { 34 | return contains("snapshot", ignoreCase = true) 35 | } 36 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/gradle/dokka/TaskContainerExtensions.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.gradle.dokka 28 | 29 | import org.gradle.api.tasks.TaskContainer 30 | import org.jetbrains.dokka.gradle.DokkaTask 31 | 32 | /** 33 | * Finds the `dokkaHtml` Gradle task. 34 | */ 35 | @Suppress("unused") 36 | fun TaskContainer.dokkaHtmlTask() = this.getByName("dokkaHtml") as DokkaTask 37 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/gradle/javadoc/Encoding.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.gradle.javadoc 28 | 29 | /** 30 | * The encoding to use in Javadoc processing. 31 | */ 32 | data class Encoding(val name: String) 33 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/gradle/javadoc/JavadocTag.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.gradle.javadoc 28 | 29 | /** 30 | * The Javadoc tag. 31 | */ 32 | class JavadocTag(val name: String, val title: String) { 33 | 34 | override fun toString(): String { 35 | return "${name}:a:${title}:" 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /buildSrc/src/main/kotlin/io/spine/gradle/repo/Credentials.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.gradle.repo 28 | 29 | /** 30 | * Password credentials for a Maven repository. 31 | */ 32 | data class Credentials( 33 | val username: String?, 34 | val password: String? 35 | ) 36 | -------------------------------------------------------------------------------- /client/src/main/java/io/spine/grpc/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package contains classes and interfaces related to gRPC. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.grpc; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /client/src/main/kotlin/io/spine/client/ClientExts.kt: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2023, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.client 28 | 29 | import io.spine.core.UserId 30 | 31 | /** 32 | * Creates a new instance of [ActorRequestFactory] with the passed actor. 33 | */ 34 | public fun actorRequestFactory(actor: UserId): ActorRequestFactory = 35 | ActorRequestFactory.newBuilder() 36 | .setActor(actor) 37 | .build() 38 | -------------------------------------------------------------------------------- /client/src/test/java/io/spine/client/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment for the {@link io.spine.client} package. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.client.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /core/src/test/proto/spine/test/core/project.proto: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | syntax = "proto3"; 27 | 28 | package spine.test.envelope; 29 | 30 | import "spine/options.proto"; 31 | 32 | option (type_url_prefix) = "type.spine.io"; 33 | option java_package="io.spine.test.core"; 34 | option java_multiple_files = true; 35 | 36 | 37 | message ProjectId { 38 | string id = 1; 39 | } 40 | -------------------------------------------------------------------------------- /core/src/test/proto/spine/test/core/task.proto: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | syntax = "proto3"; 27 | 28 | package spine.test.envelope; 29 | 30 | import "spine/options.proto"; 31 | 32 | option (type_url_prefix) = "type.spine.io"; 33 | option java_package="io.spine.test.core"; 34 | option java_multiple_files = true; 35 | 36 | message TaskId { 37 | string id = 1; 38 | } 39 | -------------------------------------------------------------------------------- /credentials.tar.enc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SpineEventEngine/core-java/696462168a4f00aafcee97f4553b23e78519fc8c/credentials.tar.enc -------------------------------------------------------------------------------- /gcs.properties: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright 2022, TeamDev. All rights reserved. 3 | # 4 | # Licensed under the Apache License, Version 2.0 (the "License"); 5 | # you may not use this file except in compliance with the License. 6 | # You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Redistribution and use in source and/or binary forms, with or without 11 | # modification, must retain the above copyright notice and the following 12 | # disclaimer. 13 | # 14 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | # 26 | 27 | # Google Cloud Storage properties. 28 | 29 | # Artifacts upload location. 30 | artifacts.bucket=spine-dev.appspot.com 31 | artifacts.folder=core-java/builds 32 | -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | org.gradle.parallel=true 2 | 3 | # Dokka plugin eats more memory than usual. Therefore, all builds should have enough. 4 | org.gradle.jvmargs=-Xmx4096m -XX:MaxMetaspaceSize=1024m -XX:+UseParallelGC 5 | 6 | # Enables the Dokka migration mode from v1 to v2. 7 | # For details please see: 8 | # https://kotlinlang.org/docs/dokka-migration.html#enable-migration-helpers 9 | org.jetbrains.dokka.experimental.gradle.pluginMode=V2EnabledWithHelpers 10 | 11 | # The below timeout settings aim to overcome the publishing issue with 12 | # the "409 conflict" error, which occurs when publishing to GitHub Packages. 13 | # 14 | # An example of failures in our builds: 15 | # https://github.com/SpineEventEngine/core-java/actions/runs/14887559425/job/41811135389 16 | # 17 | # More on the problem can be found here: 18 | # https://github.com/orgs/community/discussions/149386 19 | # 20 | # The advice on increasing the timeouts from the Gradle discussions: 21 | # https://discuss.gradle.org/t/maven-publish-plugin-to-github-repo/39503/7 22 | # 23 | # For the Gradle code details, please see 24 | # the `org.gradle.internal.resource.transport.http.JavaSystemPropertiesHttpTimeoutSettings` class. 25 | # 26 | # The default timeout values are 30 seconds (30000 ms). 27 | # 28 | org.gradle.internal.http.socketTimeout=60000 29 | org.gradle.internal.http.connectionTimeout=60000 30 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SpineEventEngine/core-java/696462168a4f00aafcee97f4553b23e78519fc8c/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip 4 | networkTimeout=10000 5 | validateDistributionUrl=true 6 | zipStoreBase=GRADLE_USER_HOME 7 | zipStorePath=wrapper/dists 8 | -------------------------------------------------------------------------------- /pull: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # 4 | # Copyright 2022, TeamDev. All rights reserved. 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Redistribution and use in source and/or binary forms, with or without 13 | # modification, must retain the above copyright notice and the following 14 | # disclaimer. 15 | # 16 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 17 | # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 18 | # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 19 | # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 20 | # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 21 | # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 22 | # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 | # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 | # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 26 | # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | # 28 | 29 | cd ./config || exit 30 | echo "Switching the pointer of the 'config' submodule to its 'master'." 31 | git checkout master 32 | git pull 33 | 34 | cd .. 35 | ./config/pull 36 | -------------------------------------------------------------------------------- /server/src/main/docs/io/spine/server/delivery/doc-files/sharding-commands-flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SpineEventEngine/core-java/696462168a4f00aafcee97f4553b23e78519fc8c/server/src/main/docs/io/spine/server/delivery/doc-files/sharding-commands-flow.png -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/aggregate/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | @CheckReturnValue 28 | @NullMarked 29 | package io.spine.server.aggregate; 30 | 31 | import com.google.errorprone.annotations.CheckReturnValue; 32 | 33 | import org.jspecify.annotations.NullMarked; 34 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/bus/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package contains classes and interfaces for abstract {@code Bus}. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.bus; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/command/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package provides classes and interfaces related to command processing at the server side. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.command; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/delivery/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package is devoted to message delivery mechanism. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.delivery; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/enrich/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package contains classes and interfaces related to enrichment of events. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.enrich; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/entity/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package contains classes and interfaces defining entity-oriented API and base functionality. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.entity; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/event/EventReceiver.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.server.event; 28 | 29 | /** 30 | * Common interface for objects receiving events. 31 | */ 32 | public interface EventReceiver { 33 | } 34 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/event/EventSubscriber.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.server.event; 28 | 29 | /** 30 | * Declares one or more methods, {@linkplain io.spine.core.Subscribe subscribed} to events. 31 | * 32 | * @see io.spine.core.Subscribe @Subscribe 33 | */ 34 | public interface EventSubscriber extends EventReceiver { 35 | } 36 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/event/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package provides classes for server-side event processing. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.event; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/event/store/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Provides default implementation of {@link io.spine.server.event.EventStore}. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.event.store; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/integration/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package contains classes and interfaces for communications between bounded contexts. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.integration; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/log/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Contains utilities which work with server-side logs. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.log; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/procman/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package provides classes related to Process Managers. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.procman; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/projection/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package provides classes for working with event stream projections. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.projection; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/route/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package contains classes and interfaces for obtaining entity identifiers. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.route; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/stand/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package provides classes for working with Stand. 29 | */ 30 | 31 | @SPI 32 | @CheckReturnValue 33 | @NullMarked 34 | package io.spine.server.stand; 35 | 36 | import com.google.errorprone.annotations.CheckReturnValue; 37 | import io.spine.annotation.SPI; 38 | 39 | import org.jspecify.annotations.NullMarked; 40 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/tenant/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package contains classes and interfaces for supporting multi-tenancy. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.tenant; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/server/type/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Provides classes and interfaces for server-side type information. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.type; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/system/server/event/CommandDispatchedMixin.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.system.server.event; 28 | 29 | import io.spine.core.Command; 30 | 31 | /** 32 | * A common interface for system events which state that a command has been dispatched. 33 | */ 34 | interface CommandDispatchedMixin extends SignalDispatchedMixin { 35 | } 36 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/system/server/event/EventDispatchedMixin.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.system.server.event; 28 | 29 | import io.spine.core.Event; 30 | 31 | /** 32 | * A common interface for system events which state that an event has been dispatched. 33 | */ 34 | interface EventDispatchedMixin extends SignalDispatchedMixin { 35 | } 36 | -------------------------------------------------------------------------------- /server/src/main/java/io/spine/system/server/event/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | @CheckReturnValue 28 | @NullMarked 29 | package io.spine.system.server.event; 30 | 31 | import com.google.errorprone.annotations.CheckReturnValue; 32 | 33 | import org.jspecify.annotations.NullMarked; 34 | -------------------------------------------------------------------------------- /server/src/test/java/io/spine/server/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | @CheckReturnValue 28 | @NullMarked 29 | package io.spine.server; 30 | 31 | import com.google.errorprone.annotations.CheckReturnValue; 32 | 33 | import org.jspecify.annotations.NullMarked; 34 | -------------------------------------------------------------------------------- /server/src/test/java/io/spine/server/projection/e2e/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * The end-to-end tests for projection-related scenarios. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.projection.e2e; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/com/example/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment classes for testing invocations from outside the framework package namespace. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package com.example; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/client/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Provides convenience API to create a desired test environment for Spine Client tests. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.client.given; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/core/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment classes for {@code core} tests. 29 | */ 30 | 31 | @NullMarked 32 | @CheckReturnValue 33 | package io.spine.core.given; 34 | 35 | import javax.annotation.CheckReturnValue; 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/aggregate/given/aggregate/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment classes for {@linkplain io.spine.server.aggregate.AggregateTest 29 | * Aggregate tests}. 30 | */ 31 | @NullMarked 32 | package io.spine.server.aggregate.given.aggregate; 33 | 34 | import org.jspecify.annotations.NullMarked; 35 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/aggregate/given/repo/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment classes for testing {@code AggregateRepository}. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.aggregate.given.repo; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/bc/given/AnotherProjectAggregate.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.server.bc.given; 28 | 29 | import io.spine.server.aggregate.Aggregate; 30 | import io.spine.test.bc.Project; 31 | import io.spine.test.bc.ProjectId; 32 | 33 | public final class AnotherProjectAggregate extends Aggregate { 34 | } 35 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/bc/given/SecretProjectRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.server.bc.given; 28 | 29 | import io.spine.server.aggregate.AggregateRepository; 30 | import io.spine.test.bc.SecretProject; 31 | 32 | public class SecretProjectRepository 33 | extends AggregateRepository { 34 | } 35 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/bc/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment for the {@link io.spine.server.bc} package. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.bc.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/bc/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package contains tests for {@link io.spine.server.BoundedContext BoundedContext}. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.bc; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/bus/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment for tests of the {@code io.spine.server.bus} package. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.bus.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/command/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment for tests of the {@code io.spine.server.command} package. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.command.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/command/model/given/commander/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test-environment classes for tests of {@link io.spine.server.command.Command Command}-ing 29 | * method signatures. 30 | */ 31 | package io.spine.server.command.model.given.commander; 32 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/command/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | @CheckReturnValue 28 | @NullMarked 29 | package io.spine.server.command; 30 | 31 | import com.google.errorprone.annotations.CheckReturnValue; 32 | 33 | import org.jspecify.annotations.NullMarked; 34 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/dispatch/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment for the {@link io.spine.base} package. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.dispatch.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/enrich/given/EitProjectRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.server.enrich.given; 28 | 29 | import io.spine.server.aggregate.AggregateRepository; 30 | 31 | public class EitProjectRepository 32 | extends AggregateRepository { 33 | } 34 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/enrich/given/EitTaskRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.server.enrich.given; 28 | 29 | import io.spine.server.aggregate.AggregateRepository; 30 | 31 | public class EitTaskRepository 32 | extends AggregateRepository { 33 | } 34 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/enrich/given/EitUserRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.server.enrich.given; 28 | 29 | import io.spine.core.UserId; 30 | import io.spine.server.aggregate.AggregateRepository; 31 | 32 | public class EitUserRepository 33 | extends AggregateRepository { 34 | } 35 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/enrich/given/event/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment events for testing enrichment. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.enrich.given.event; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/entity/given/entity/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment for testing entity classes. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.entity.given.entity; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/entity/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment classes for the {@code io.spine.server.entity} package. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.entity.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/event/given/bus/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment classes for testing {@code EventBus}. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.event.given.bus; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/event/model/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | @CheckReturnValue 28 | @NullMarked 29 | package io.spine.server.event.model.given; 30 | 31 | import com.google.errorprone.annotations.CheckReturnValue; 32 | 33 | import org.jspecify.annotations.NullMarked; 34 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/given/context/drawing/event/LineLifecycleEvent.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.server.given.context.drawing.event; 28 | 29 | /** 30 | * Events related to the creation and deletion of lines. 31 | */ 32 | public interface LineLifecycleEvent extends LineEvent { 33 | } 34 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/given/service/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Provides test-grade types and interfaces of gRPC services. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.given.service; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/given/transport/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * The test environment for tests that rely on Spine transport. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.given.transport; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/log/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Contains a small test domain and utilities for testing entity logs. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.log.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/migration/mirror/given/CourierAgg.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.server.migration.mirror.given; 28 | 29 | import io.spine.server.aggregate.Aggregate; 30 | 31 | public class CourierAgg extends Aggregate { 32 | 33 | } 34 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/model/given/map/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment for {@link io.spine.server.model.HandlerMapTest}. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.model.given.map; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/model/given/method/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment for testing handler methods. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.model.given.method; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/model/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment classes for tests of the {@code io.spine.server.model} package. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.server.model.given; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/model/handler/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | @CheckReturnValue 28 | @NullMarked 29 | @BoundedContext("MovingBot") 30 | package io.spine.server.model.handler.given; 31 | 32 | import com.google.errorprone.annotations.CheckReturnValue; 33 | import io.spine.core.BoundedContext; 34 | 35 | import org.jspecify.annotations.NullMarked; 36 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/route/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment for the {@code io.spine.server.route} package. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.route.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/stand/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment classes for the {@code io.spine.server.stand} package. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.stand.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/storage/given/IntIdentifier.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.server.storage.given; 28 | 29 | import com.google.protobuf.Message; 30 | 31 | public interface IntIdentifier extends Message { 32 | 33 | int getId(); 34 | } 35 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/storage/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment classes for the {@code io.spine.server.storage} package. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.storage.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/storage/system/given/TestAggregate.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.server.storage.system.given; 28 | 29 | import io.spine.server.aggregate.Aggregate; 30 | import io.spine.system.server.Company; 31 | import io.spine.system.server.CompanyId; 32 | 33 | public class TestAggregate extends Aggregate { 34 | } 35 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/trace/given/airport/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | @BoundedContext(AirportContext.NAME) 28 | @CheckReturnValue 29 | @NullMarked 30 | package io.spine.server.trace.given.airport; 31 | 32 | import com.google.errorprone.annotations.CheckReturnValue; 33 | import io.spine.core.BoundedContext; 34 | 35 | import org.jspecify.annotations.NullMarked; 36 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/trace/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | @CheckReturnValue 28 | @NullMarked 29 | package io.spine.server.trace.given; 30 | 31 | import com.google.errorprone.annotations.CheckReturnValue; 32 | 33 | import org.jspecify.annotations.NullMarked; 34 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/tuple/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment for the {@link io.spine.server.tuple}. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.tuple.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/server/type/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment for the {@link io.spine.base} package. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.server.type.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/system/server/given/client/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | @BoundedContext("_System") 28 | @CheckReturnValue 29 | @NullMarked 30 | package io.spine.system.server.given.client; 31 | 32 | import com.google.errorprone.annotations.CheckReturnValue; 33 | import io.spine.core.BoundedContext; 34 | 35 | import org.jspecify.annotations.NullMarked; 36 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/system/server/given/diagnostics/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | @CheckReturnValue 28 | @NullMarked 29 | package io.spine.system.server.given.diagnostics; 30 | 31 | import com.google.errorprone.annotations.CheckReturnValue; 32 | 33 | import org.jspecify.annotations.NullMarked; 34 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/system/server/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment for the {@code io.spine.server.system.server}. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.system.server.given; 34 | 35 | import javax.annotation.CheckReturnValue; 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/test/route/LoginEvent.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.test.route; 28 | 29 | import com.google.errorprone.annotations.Immutable; 30 | 31 | /** 32 | * Common interface for login events. 33 | */ 34 | @Immutable 35 | public interface LoginEvent extends UserEvent { 36 | } 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/test/route/UserAccountEvent.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.test.route; 28 | 29 | import com.google.errorprone.annotations.Immutable; 30 | 31 | /** 32 | * Common interface for account events. 33 | */ 34 | @Immutable 35 | public interface UserAccountEvent extends UserEvent { 36 | } 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/test/route/UserEvent.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.test.route; 28 | 29 | import com.google.errorprone.annotations.Immutable; 30 | import io.spine.base.EventMessage; 31 | 32 | @Immutable 33 | public interface UserEvent extends EventMessage { 34 | long getId(); 35 | } 36 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/test/route/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment events for {@link io.spine.server.route.EventRoutingTest}. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.test.route; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/io/spine/testdata/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package provides utilities for building test environments. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.testdata; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/tres/quattro/Counter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package tres.quattro; 28 | 29 | /** 30 | * This class is a part of test environment for 31 | * {@link io.spine.server.model.ModelTest#findBoundedContextAnnotation()}. 32 | */ 33 | @SuppressWarnings("unused") 34 | public class Counter { 35 | } 36 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/tres/quattro/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package is a part of the test environment for 29 | * {@link io.spine.server.model.ModelTest#findBoundedContextAnnotation()}. 30 | */ 31 | @BoundedContext("Counting") 32 | package tres.quattro; 33 | 34 | import io.spine.core.BoundedContext; 35 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/uno/dos/Encounter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package uno.dos; 28 | 29 | /** 30 | * This class is a part of test environment for 31 | * {@link io.spine.server.model.ModelTest#findBoundedContextAnnotation()}. 32 | */ 33 | @SuppressWarnings("unused") 34 | public class Encounter { 35 | } 36 | -------------------------------------------------------------------------------- /server/src/testFixtures/java/uno/dos/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package is a part of the test environment for 29 | * {@link io.spine.server.model.ModelTest#findBoundedContextAnnotation()}. 30 | */ 31 | @BoundedContext("Counting") 32 | package uno.dos; 33 | 34 | import io.spine.core.BoundedContext; 35 | -------------------------------------------------------------------------------- /server/src/testFixtures/proto/spine/test/aggregate/thermometer/thermometer.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | 3 | package spine.test.aggregate; 4 | 5 | import "spine/options.proto"; 6 | 7 | option (type_url_prefix) = "type.spine.io"; 8 | option java_package = "io.spine.server.aggregate.given.thermometer"; 9 | option java_multiple_files = true; 10 | 11 | 12 | // The unique factory-provided identifier of a thermometer. 13 | message ThermometerId { 14 | string uuid = 1 [(required) = true]; 15 | } 16 | 17 | // A US thermometer for mild-weather regions. 18 | // 19 | // This particular thermometer type is created for the mild-weather conditions and is not gonna 20 | // work in cold parts of the country while not being able to determine the cold temperature 21 | // under 0 ℉. 22 | // 23 | message Thermometer { 24 | option (entity).kind = AGGREGATE; 25 | 26 | ThermometerId id = 1 [(required) = true]; 27 | 28 | // The temperature in ℉. 29 | double fahrenheit = 2 [(min).value = "0.1", (max).value = "120.0"]; 30 | } 31 | 32 | // A change in the temperature. 33 | message TemperatureChange { 34 | 35 | // The previous temperature in ℉. 36 | double previous_value = 1; 37 | 38 | // The previous temperature in ℉. 39 | double new_value = 2; 40 | } 41 | -------------------------------------------------------------------------------- /server/src/testFixtures/proto/spine/test/client/users/README.md: -------------------------------------------------------------------------------- 1 | This proto package defines a simple User Management 2 | domain for the purpose of tests of the `io.spine.client` 3 | Java package. 4 | -------------------------------------------------------------------------------- /server/src/testFixtures/proto/spine/test/core/given/commands.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | 3 | package spine.test.core.given; 4 | 5 | import "spine/options.proto"; 6 | 7 | option (type_url_prefix) = "type.spine.io"; 8 | option java_package = "io.spine.test.core.given"; 9 | option java_outer_classname = "CommandsProto"; 10 | option java_multiple_files = true; 11 | 12 | // A simplest mock command message. 13 | message EtDoSomething { 14 | string id = 1; 15 | } 16 | -------------------------------------------------------------------------------- /server/src/testFixtures/proto/spine/test/dispatch/dispatch_entities.proto: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | syntax = "proto3"; 27 | 28 | package spine.test.dispatch; 29 | 30 | import "spine/options.proto"; 31 | 32 | option (type_url_prefix) = "type.spine.io"; 33 | option java_package = "io.spine.server.dispatch.given"; 34 | option java_multiple_files = true; 35 | 36 | message Id { 37 | string id = 1; 38 | } 39 | -------------------------------------------------------------------------------- /server/src/testFixtures/proto/spine/test/model/filter/project.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | 3 | package spine.test.model.filter; 4 | 5 | import "spine/options.proto"; 6 | 7 | option (type_url_prefix) = "type.spine.io"; 8 | option java_package = "io.spine.test.model.filter"; 9 | option java_outer_classname = "ProjectProto"; 10 | option java_multiple_files = true; 11 | 12 | message ModProjectTasks { 13 | option (entity).kind = PROJECTION; 14 | 15 | string project_id = 1; 16 | 17 | repeated string task_title = 2; 18 | } 19 | 20 | message ModProject { 21 | option (entity).kind = AGGREGATE; 22 | 23 | string project_id = 1; 24 | } 25 | -------------------------------------------------------------------------------- /server/src/testFixtures/proto/spine/test/route/state/README.md: -------------------------------------------------------------------------------- 1 | This test environment describes the story around 2 | [Surrealism Manifesto](https://en.wikipedia.org/wiki/Surrealist_Manifesto) 3 | in a surreal humour form. 4 | -------------------------------------------------------------------------------- /server/src/testFixtures/proto/spine/test/server/envelope/task.proto: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | syntax = "proto3"; 27 | 28 | package spine.test.server.envelope; 29 | 30 | import "spine/options.proto"; 31 | 32 | option (type_url_prefix) = "type.spine.io"; 33 | option java_package = "io.spine.test.server.envelope"; 34 | option java_multiple_files = true; 35 | 36 | message TaskId { 37 | string id = 1; 38 | } 39 | -------------------------------------------------------------------------------- /server/src/testFixtures/proto/spine/test/server/status_check.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | 3 | package spine.test.server; 4 | 5 | import "spine/options.proto"; 6 | 7 | option (type_url_prefix) = "type.spine.io"; 8 | option java_package = "io.spine.test.server"; 9 | option java_outer_classname = "StatusCheckProto"; 10 | option java_multiple_files = true; 11 | 12 | import "google/protobuf/empty.proto"; 13 | import "google/protobuf/timestamp.proto"; 14 | 15 | // A gRPC service for `io.spine.server.Server` tests. 16 | service StatusCheck { 17 | 18 | rpc check(google.protobuf.Empty) returns (Status); 19 | } 20 | 21 | message Status { 22 | 23 | ServerStatus status = 1; 24 | 25 | google.protobuf.Timestamp last_updated = 2; 26 | } 27 | 28 | enum ServerStatus { 29 | 30 | SERVER_STATUS_UNKNOWN = 0; 31 | 32 | OK = 1; 33 | STARTING = 2; 34 | SHUTTING_DOWN = 3; 35 | DOWN = 4; 36 | } 37 | -------------------------------------------------------------------------------- /server/src/testFixtures/proto/spine/test/tx/README.md: -------------------------------------------------------------------------------- 1 | This is test environment data for `io.spine.server.entity.TransactionTest` and derived test suites. 2 | 3 | The “domain” defined by these types is deliberately made abstract to highlight the nature of 4 | types (especially when specified as generic parameters) used down in the hierarchy of test suites. 5 | 6 | -------------------------------------------------------------------------------- /settings.gradle.kts: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | pluginManagement { 28 | repositories { 29 | mavenCentral() 30 | gradlePluginPortal() 31 | } 32 | } 33 | 34 | rootProject.name = "spine-core-java" 35 | 36 | include( 37 | "core", 38 | "client", 39 | "server", 40 | "testutil-core", 41 | "testutil-client", 42 | "testutil-server", 43 | ) 44 | -------------------------------------------------------------------------------- /testutil-client/src/main/java/io/spine/testing/client/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package provides utilities for testing client-side code. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.testing.client; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /testutil-core/build.gradle.kts: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2025, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | import io.spine.dependency.local.TestLib 28 | import io.spine.dependency.test.JUnit 29 | 30 | group = "io.spine.tools" 31 | 32 | plugins { 33 | `detekt-code-analysis` 34 | } 35 | 36 | dependencies { 37 | api(platform(JUnit.bom)) 38 | api(TestLib.lib) 39 | api(project(":client")) 40 | } 41 | -------------------------------------------------------------------------------- /testutil-core/src/main/java/io/spine/testing/core/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package provides testing environment utilities. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.testing.core.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /testutil-server/build.gradle.kts: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | import io.spine.dependency.lib.Grpc 28 | import io.spine.gradle.testing.exposeTestConfiguration 29 | 30 | group = "io.spine.tools" 31 | 32 | plugins { 33 | `detekt-code-analysis` 34 | } 35 | 36 | dependencies { 37 | api(project(":server")) 38 | api(project(":testutil-client")) 39 | testImplementation(Grpc.netty) 40 | } 41 | -------------------------------------------------------------------------------- /testutil-server/src/main/java/io/spine/testing/server/entity/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package contains utilities for building test instances of the entities. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.testing.server.entity; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /testutil-server/src/main/java/io/spine/testing/server/model/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | @CheckReturnValue 28 | @NullMarked 29 | package io.spine.testing.server.model; 30 | 31 | import com.google.errorprone.annotations.CheckReturnValue; 32 | 33 | import org.jspecify.annotations.NullMarked; 34 | -------------------------------------------------------------------------------- /testutil-server/src/main/java/io/spine/testing/server/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * This package provides test utilities for testing Spine entities. 29 | */ 30 | @CheckReturnValue 31 | @NullMarked 32 | package io.spine.testing.server; 33 | 34 | import com.google.errorprone.annotations.CheckReturnValue; 35 | 36 | import org.jspecify.annotations.NullMarked; 37 | -------------------------------------------------------------------------------- /testutil-server/src/main/java/io/spine/testing/server/tenant/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | @CheckReturnValue 28 | @NullMarked 29 | package io.spine.testing.server.tenant; 30 | 31 | import com.google.errorprone.annotations.CheckReturnValue; 32 | 33 | import org.jspecify.annotations.NullMarked; 34 | -------------------------------------------------------------------------------- /testutil-server/src/test/java/io/spine/testing/client/grpc/README.md: -------------------------------------------------------------------------------- 1 | This directory contains tests of the `io.spine.testing.client.grpc.TestClient`, which belongs to 2 | the `testutil-client` module. 3 | 4 | In order to test the gRPC client, we need a backend with the gRPC server backed by a Bounded 5 | Context with entities handling commands and queries. This in turn requires dependency on the 6 | `server` module, which — obviously — is not available in the `testutil-client` to which the 7 | `TestClient` belongs. 8 | 9 | That's why these tests belong to this module, rather to `testutil-client`. 10 | 11 | -------------------------------------------------------------------------------- /testutil-server/src/test/java/io/spine/testing/client/grpc/given/GameRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | package io.spine.testing.client.grpc.given; 28 | 29 | import io.spine.server.procman.ProcessManagerRepository; 30 | import io.spine.testing.client.grpc.Table; 31 | 32 | public final class GameRepository extends ProcessManagerRepository { 33 | } 34 | -------------------------------------------------------------------------------- /testutil-server/src/test/java/io/spine/testing/server/given/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2022, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * Test environment classes for the {@code io.spine.testing.server} package. 29 | */ 30 | 31 | @CheckReturnValue 32 | @NullMarked 33 | package io.spine.testing.server.given; 34 | 35 | import com.google.errorprone.annotations.CheckReturnValue; 36 | 37 | import org.jspecify.annotations.NullMarked; 38 | -------------------------------------------------------------------------------- /testutil-server/src/test/proto/spine/testing/client/ping/README.md: -------------------------------------------------------------------------------- 1 | This proto package defines a simple domain model for testing `TestClient`. 2 | 3 | The code of the test belongs to the `testutil-server` because for testing of gRPC-based 4 | communications we need the backend side, which requires dependency on the `server` module. 5 | 6 | -------------------------------------------------------------------------------- /version.gradle.kts: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2024, TeamDev. All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * https://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Redistribution and use in source and/or binary forms, with or without 11 | * modification, must retain the above copyright notice and the following 12 | * disclaimer. 13 | * 14 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 18 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 20 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 24 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | /** 28 | * The version of this library. 29 | * 30 | * For versions of Spine-based dependencies, please see [io.spine.dependency.local.Spine]. 31 | */ 32 | val versionToPublish: String by extra("2.0.0-SNAPSHOT.320") 33 | --------------------------------------------------------------------------------