├── .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 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/.idea/copyright/TeamDev_Open_Source.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/.idea/filetypes/Google Protobuf.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
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 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
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 |
--------------------------------------------------------------------------------