├── .config ├── checkstyle │ ├── checkstyle.xml │ └── suppressions.xml └── pmd │ └── ruleset.xml ├── .gitattributes ├── .github ├── .lycheeignore ├── ISSUE_TEMPLATE │ ├── bug_report.yml │ ├── config.yml │ ├── enhancement.yml │ └── question.yml ├── labels.yml └── workflows │ ├── antora-build.yml │ ├── broken-links.yml │ ├── check-build.yml │ ├── release.yml │ ├── sonar.yml │ ├── sync-labels.yml │ ├── test-deploy.yml │ └── update-from-template.yml ├── .gitignore ├── .idea ├── checkstyle-idea.xml ├── codeStyles │ ├── Project.xml │ └── codeStyleConfig.xml ├── externalDependencies.xml ├── inspectionProfiles │ └── Project_Default.xml └── saveactions_settings.xml ├── .mvn └── wrapper │ └── maven-wrapper.properties ├── .run ├── Run Benchmark.run.xml ├── Run Complex Demo.run.xml ├── Run Dual Storage Demo.run.xml ├── Run JPA Demo.run.xml └── Run Simple Demo.run.xml ├── CHANGELOG.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── SECURITY.md ├── assets ├── DependingClasses.drawio ├── Logo.png └── Spring-Data-Eclipse-Store-Repo.drawio ├── docs ├── antora-playbook.yml ├── antora.yml ├── modules │ └── ROOT │ │ ├── assets │ │ └── images │ │ │ ├── DependingClasses.svg │ │ │ ├── Logo.svg │ │ │ ├── WorkingCopy_1.svg │ │ │ └── WorkingCopy_2.svg │ │ ├── nav.adoc │ │ └── pages │ │ ├── configuration.adoc │ │ ├── features │ │ ├── features.adoc │ │ ├── ids.adoc │ │ ├── lazies.adoc │ │ ├── queries.adoc │ │ ├── rest-api.adoc │ │ ├── transactions.adoc │ │ ├── validation-constraints.adoc │ │ ├── versioned-migration.adoc │ │ └── versions.adoc │ │ ├── index.adoc │ │ ├── installation.adoc │ │ ├── known-issues.adoc │ │ ├── migration-from-eclipse-store.adoc │ │ ├── migration-from-jpa.adoc │ │ └── working-copies.adoc ├── package.json └── supplemental-ui │ ├── css │ └── site-extra.css │ ├── img │ ├── Favicon_16x16.png │ ├── Favicon_32x32.png │ └── Header_logo.svg │ └── partials │ ├── footer-content.hbs │ ├── head-meta.hbs │ └── header-content.hbs ├── mvnw ├── mvnw.cmd ├── pom.xml ├── renovate.json5 ├── spring-data-eclipse-store-benchmark ├── .gitignore ├── pom.xml └── src │ └── main │ └── java │ └── software │ └── xdev │ └── spring │ └── data │ └── eclipse │ └── store │ └── benchmark │ ├── BenchmarkApplication.java │ ├── BenchmarkRunner.java │ ├── SpringState.java │ └── benchmarks │ ├── simple │ └── customer │ │ ├── AbstractStoringSimpleCustomerBenchmark.java │ │ ├── Customer.java │ │ ├── CustomerRepository.java │ │ ├── LoadingSimpleCustomerBenchmark.java │ │ ├── StoringAndChangingSimpleCustomerBenchmark.java │ │ └── StoringSimpleCustomerBenchmark.java │ └── with │ └── id │ ├── CustomerWithAutoId.java │ ├── CustomerWithAutoIdRepository.java │ ├── FindByIdCustomerWithAutoIdBenchmark.java │ └── StoringCustomerWithAutoIdBenchmark.java ├── spring-data-eclipse-store-demo ├── pom.xml └── src │ ├── main │ ├── java │ │ └── software │ │ │ └── xdev │ │ │ └── spring │ │ │ └── data │ │ │ └── eclipse │ │ │ └── store │ │ │ └── demo │ │ │ ├── complex │ │ │ ├── ComplexConfiguration.java │ │ │ ├── ComplexDemoApplication.java │ │ │ ├── OwnerService.java │ │ │ ├── VetService.java │ │ │ ├── migration │ │ │ │ ├── CustomNameScript.java │ │ │ │ └── v1_0_0_Init.java │ │ │ ├── model │ │ │ │ ├── BaseEntity.java │ │ │ │ ├── NamedEntity.java │ │ │ │ └── Person.java │ │ │ ├── owner │ │ │ │ ├── Owner.java │ │ │ │ ├── OwnerRepository.java │ │ │ │ ├── Pet.java │ │ │ │ ├── PetType.java │ │ │ │ └── Visit.java │ │ │ └── vet │ │ │ │ ├── Specialty.java │ │ │ │ ├── Vet.java │ │ │ │ └── VetRepository.java │ │ │ ├── dual │ │ │ └── storage │ │ │ │ ├── DualStorageDemoApplication.java │ │ │ │ ├── invoice │ │ │ │ ├── Invoice.java │ │ │ │ ├── InvoiceRepository.java │ │ │ │ └── PersistenceInvoiceConfiguration.java │ │ │ │ └── person │ │ │ │ ├── PersistencePersonConfiguration.java │ │ │ │ ├── Person.java │ │ │ │ └── PersonRepository.java │ │ │ ├── lazy │ │ │ ├── Customer.java │ │ │ ├── CustomerRepository.java │ │ │ ├── LazyConfiguration.java │ │ │ ├── LazyDemoApplication.java │ │ │ ├── Pet.java │ │ │ └── PetRepository.java │ │ │ └── simple │ │ │ ├── Customer.java │ │ │ ├── CustomerRepository.java │ │ │ ├── Pet.java │ │ │ ├── PetRepository.java │ │ │ └── SimpleDemoApplication.java │ └── resources │ │ └── log4j2.xml │ └── test │ ├── java │ └── software │ │ └── xdev │ │ └── spring │ │ └── data │ │ └── eclipse │ │ └── store │ │ └── demo │ │ ├── TestUtil.java │ │ ├── complex │ │ └── ComplexDemoApplicationTest.java │ │ ├── dual │ │ └── storage │ │ │ └── DualStorageDemoApplicationTest.java │ │ ├── lazy │ │ └── complex │ │ │ └── LazyDemoApplicationTest.java │ │ └── simple │ │ └── SimpleDemoApplicationTest.java │ └── resources │ ├── application.yaml │ └── log4j2.xml ├── spring-data-eclipse-store-jpa ├── pom.xml └── src │ ├── main │ ├── java │ │ └── software │ │ │ └── xdev │ │ │ └── spring │ │ │ └── data │ │ │ └── eclipse │ │ │ └── store │ │ │ └── jpa │ │ │ ├── CustomerInEclipseStore.java │ │ │ ├── CustomerInEclipseStoreRepository.java │ │ │ ├── CustomerInJpa.java │ │ │ ├── CustomerInJpaRepository.java │ │ │ └── JpaDemoApplication.java │ └── resources │ │ ├── application.properties │ │ └── log4j2.xml │ └── test │ ├── java │ └── software │ │ └── xdev │ │ └── spring │ │ └── data │ │ └── eclipse │ │ └── store │ │ └── jpa │ │ └── integration │ │ ├── DefaultTestAnnotations.java │ │ ├── JpaImportExplicitTest.java │ │ ├── JpaImportTest.java │ │ ├── TestConfiguration.java │ │ └── repository │ │ ├── PersonToTestInEclipseStore.java │ │ ├── PersonToTestInEclipseStoreRepository.java │ │ ├── PersonToTestInJpa.java │ │ └── PersonToTestInJpaRepository.java │ └── resources │ ├── application.properties │ └── log4j2.xml └── spring-data-eclipse-store ├── pom.xml └── src ├── main ├── java │ └── software │ │ └── xdev │ │ └── spring │ │ └── data │ │ └── eclipse │ │ └── store │ │ ├── aot │ │ └── EclipseStoreRuntimeHints.java │ │ ├── core │ │ ├── EntityListProvider.java │ │ ├── EntityProvider.java │ │ └── IdentitySet.java │ │ ├── exceptions │ │ ├── AlreadyRegisteredException.java │ │ ├── DataTypeNotSupportedException.java │ │ ├── DifferentClassesException.java │ │ ├── FieldAccessReflectionException.java │ │ ├── IdFieldException.java │ │ ├── IdGeneratorNotSupportedException.java │ │ ├── InvalidRootException.java │ │ ├── InvalidVersionException.java │ │ ├── LazyNotUnlinkableException.java │ │ ├── MergeFailedException.java │ │ ├── NoIdFieldFoundException.java │ │ ├── NoPageableObjectFoundException.java │ │ ├── NotComparableException.java │ │ └── StringBlankException.java │ │ ├── importer │ │ ├── EclipseStoreDataImporter.java │ │ └── EclipseStoreDataImporterComponent.java │ │ ├── repository │ │ ├── EclipseStoreStorage.java │ │ ├── EntitySetCollector.java │ │ ├── PersistableChecker.java │ │ ├── Query.java │ │ ├── RelayedPersistenceChecker.java │ │ ├── Root.java │ │ ├── StorageCommunicator.java │ │ ├── SupportedChecker.java │ │ ├── WorkingCopyRegistry.java │ │ ├── access │ │ │ ├── AccessHelper.java │ │ │ └── modifier │ │ │ │ ├── FieldAccessModifier.java │ │ │ │ └── FieldAccessibleMaker.java │ │ ├── config │ │ │ ├── DefaultEclipseStoreClientConfiguration.java │ │ │ ├── DefaultEclipseStoreClientConfigurationFactory.java │ │ │ ├── EclipseStoreClientConfiguration.java │ │ │ ├── EclipseStoreRepositoriesRegistrar.java │ │ │ ├── EclipseStoreRepositoryConfigNamespaceHandler.java │ │ │ ├── EclipseStoreRepositoryConfigurationExtension.java │ │ │ ├── EclipseStoreStorageFoundationProvider.java │ │ │ └── EnableEclipseStoreRepositories.java │ │ ├── interfaces │ │ │ ├── EclipseStoreCrudRepository.java │ │ │ ├── EclipseStoreCustomRepository.java │ │ │ ├── EclipseStoreListCrudRepository.java │ │ │ ├── EclipseStoreListPagingAndSortingRepository.java │ │ │ ├── EclipseStorePagingAndSortingRepository.java │ │ │ ├── EclipseStoreQueryByExampleExecutor.java │ │ │ ├── EclipseStoreRepository.java │ │ │ └── lazy │ │ │ │ ├── LazyEclipseStoreCrudRepository.java │ │ │ │ ├── LazyEclipseStoreCustomRepository.java │ │ │ │ ├── LazyEclipseStoreListCrudRepository.java │ │ │ │ ├── LazyEclipseStoreListPagingAndSortingRepository.java │ │ │ │ ├── LazyEclipseStorePagingAndSortingRepository.java │ │ │ │ ├── LazyEclipseStoreQueryByExampleExecutor.java │ │ │ │ └── LazyEclipseStoreRepository.java │ │ ├── lazy │ │ │ ├── SpringDataEclipseStoreLazy.java │ │ │ └── SpringDataEclipseStoreLazyBinaryHandler.java │ │ ├── query │ │ │ ├── EclipseStoreQueryCreator.java │ │ │ ├── FindAllEclipseStoreQueryProvider.java │ │ │ ├── HSqlQueryProvider.java │ │ │ ├── ReflectedField.java │ │ │ ├── StringBasedEclipseStoreQueryProvider.java │ │ │ ├── antlr │ │ │ │ └── HSqlQueryExecutor.java │ │ │ ├── by │ │ │ │ └── example │ │ │ │ │ └── EclipseStoreFetchableFluentQuery.java │ │ │ ├── criteria │ │ │ │ ├── AbstractCriteriaNode.java │ │ │ │ ├── Criteria.java │ │ │ │ ├── CriteriaAndNode.java │ │ │ │ ├── CriteriaByExample.java │ │ │ │ ├── CriteriaOrNode.java │ │ │ │ └── CriteriaSingleNode.java │ │ │ └── executors │ │ │ │ ├── CountQueryExecutor.java │ │ │ │ ├── EntitySorter.java │ │ │ │ ├── ExistsQueryExecutor.java │ │ │ │ ├── ListQueryExecutor.java │ │ │ │ ├── PageableQueryExecutor.java │ │ │ │ ├── PageableSortableCollectionQuerier.java │ │ │ │ ├── QueryExecutor.java │ │ │ │ ├── QueryExecutorCreator.java │ │ │ │ ├── SingleOptionalQueryExecutor.java │ │ │ │ └── SingleQueryExecutor.java │ │ ├── root │ │ │ ├── EclipseStoreMigrator.java │ │ │ ├── EntityData.java │ │ │ ├── RootDataV2.java │ │ │ ├── VersionedRoot.java │ │ │ ├── data │ │ │ │ └── version │ │ │ │ │ ├── DataMigrater.java │ │ │ │ │ ├── DataMigraterFactory.java │ │ │ │ │ ├── DataMigrationScript.java │ │ │ │ │ ├── DataVersion.java │ │ │ │ │ └── ReflectiveDataMigrationScript.java │ │ │ ├── update │ │ │ │ └── scripts │ │ │ │ │ ├── LoggingUpdateScript.java │ │ │ │ │ ├── v2_0_0_InitializeVersioning.java │ │ │ │ │ └── v2_4_0_InitializeLazy.java │ │ │ └── v2_4 │ │ │ │ ├── EntityData.java │ │ │ │ ├── LazyEntityData.java │ │ │ │ ├── NonLazyEntityData.java │ │ │ │ └── RootDataV2_4.java │ │ └── support │ │ │ ├── AnnotatedFieldFinder.java │ │ │ ├── EclipseStoreQueryLookupStrategy.java │ │ │ ├── EclipseStoreRepositoryFactory.java │ │ │ ├── EclipseStoreRepositoryFactoryBean.java │ │ │ ├── LazySimpleEclipseStoreRepository.java │ │ │ ├── SimpleEclipseStoreRepository.java │ │ │ ├── concurrency │ │ │ ├── ReadWriteLock.java │ │ │ ├── ReentrantJavaReadWriteLock.java │ │ │ ├── ValueOperation.java │ │ │ └── VoidOperation.java │ │ │ ├── copier │ │ │ ├── DataTypeUtil.java │ │ │ ├── registering │ │ │ │ ├── AbstractRegisteringCopier.java │ │ │ │ ├── EclipseSerializerRegisteringCopier.java │ │ │ │ ├── RegisteringObjectCopier.java │ │ │ │ ├── RegisteringStorageToWorkingCopyCopier.java │ │ │ │ ├── RegisteringWorkingCopyAndOriginal.java │ │ │ │ └── RegisteringWorkingCopyToStorageCopier.java │ │ │ ├── version │ │ │ │ ├── EntityVersionIncrementer.java │ │ │ │ ├── NotIncrementingEntityVersionIncrementer.java │ │ │ │ ├── SimpleEntityVersionIncrementer.java │ │ │ │ ├── VersionManager.java │ │ │ │ ├── VersionManagerProvider.java │ │ │ │ └── incrementer │ │ │ │ │ ├── IntegerVersionIncrementer.java │ │ │ │ │ ├── LongVersionIncrementer.java │ │ │ │ │ ├── StringVersionIncrementer.java │ │ │ │ │ ├── UUIDVersionIncrementer.java │ │ │ │ │ └── VersionIncrementer.java │ │ │ └── working │ │ │ │ ├── ChangedObjectCollector.java │ │ │ │ ├── HashSetChangedObjectCollector.java │ │ │ │ ├── HashSetMergedTargetsCollector.java │ │ │ │ ├── MergedTargetsCollector.java │ │ │ │ ├── RecursiveWorkingCopier.java │ │ │ │ ├── WorkingCopier.java │ │ │ │ ├── WorkingCopierCreator.java │ │ │ │ └── WorkingCopierResult.java │ │ │ ├── id │ │ │ ├── EntityGetterById.java │ │ │ ├── IdGetter.java │ │ │ ├── IdManager.java │ │ │ ├── IdManagerProvider.java │ │ │ ├── IdSetter.java │ │ │ ├── NotSettingIdSetter.java │ │ │ ├── SimpleIdSetter.java │ │ │ └── strategy │ │ │ │ ├── IdFinder.java │ │ │ │ └── auto │ │ │ │ ├── AbstractAutoIdFinder.java │ │ │ │ ├── AutoIntegerIdFinder.java │ │ │ │ ├── AutoLongIdFinder.java │ │ │ │ ├── AutoStringIdFinder.java │ │ │ │ └── AutoUUIDIdFinder.java │ │ │ └── reposyncer │ │ │ ├── RepositorySynchronizer.java │ │ │ └── SimpleRepositorySynchronizer.java │ │ ├── transactions │ │ ├── EclipseStoreExistingTransactionObject.java │ │ ├── EclipseStoreNoTransactionObject.java │ │ ├── EclipseStoreTransaction.java │ │ ├── EclipseStoreTransactionAction.java │ │ └── EclipseStoreTransactionManager.java │ │ └── util │ │ ├── GenericObjectComparer.java │ │ └── StringUtil.java └── resources │ ├── META-INF │ ├── spring.factories │ ├── spring.handlers │ └── spring │ │ └── aot.factories │ └── application.properties └── test ├── java └── software │ └── xdev │ └── spring │ └── data │ └── eclipse │ └── store │ ├── helper │ ├── DummyEntityProvider.java │ ├── DummyWorkingCopier.java │ ├── StorageDirectoryNameProvider.java │ ├── TestData.java │ └── TestUtil.java │ ├── integration │ ├── TestConfiguration.java │ ├── isolated │ │ ├── IsolatedTestAnnotations.java │ │ ├── package-info.java │ │ └── tests │ │ │ ├── constraints │ │ │ ├── ConstraintDaoObject.java │ │ │ ├── ConstraintsRepository.java │ │ │ ├── ConstraintsTest.java │ │ │ └── ConstraintsTestConfiguration.java │ │ │ ├── data │ │ │ └── migration │ │ │ │ └── with │ │ │ │ ├── migrater │ │ │ │ ├── CustomMigrater.java │ │ │ │ ├── DataMigrationWithMigraterTest.java │ │ │ │ ├── DataMigrationWithMigraterTestConfiguration.java │ │ │ │ ├── PersistedEntity.java │ │ │ │ ├── PersistedEntityRepository.java │ │ │ │ └── v1_0_0_Init.java │ │ │ │ ├── multiple │ │ │ │ └── scripts │ │ │ │ │ ├── DataMigrationWithMultipleScriptsTest.java │ │ │ │ │ ├── DataMigrationWithMultipleScriptsTestConfiguration.java │ │ │ │ │ ├── PersistedEntity.java │ │ │ │ │ ├── PersistedEntityRepository.java │ │ │ │ │ ├── v1_0_0_Init.java │ │ │ │ │ ├── v1_1_0_NextScript.java │ │ │ │ │ └── v1_2_0_CustomNamedScript.java │ │ │ │ └── script │ │ │ │ ├── DataMigrationWithScriptTest.java │ │ │ │ ├── DataMigrationWithScriptTestConfiguration.java │ │ │ │ ├── PersistedEntity.java │ │ │ │ ├── PersistedEntityRepository.java │ │ │ │ └── v1_0_0_Init.java │ │ │ ├── deletion │ │ │ ├── DeletionTest.java │ │ │ ├── DeletionTestConfiguration.java │ │ │ ├── ReferencedDaoObject.java │ │ │ ├── ReferencedRepository.java │ │ │ ├── ReferencingDaoObject.java │ │ │ └── ReferencingRepository.java │ │ │ ├── duplicated │ │ │ └── repositories │ │ │ │ ├── DaoFirstRepository.java │ │ │ │ ├── DaoObject.java │ │ │ │ ├── DaoSecondRepository.java │ │ │ │ ├── DuplicatedRepositoriesTest.java │ │ │ │ └── DuplicatedRepositoriesTestConfiguration.java │ │ │ ├── id │ │ │ ├── IdTest.java │ │ │ ├── IdTestConfiguration.java │ │ │ ├── custom │ │ │ │ ├── CustomIdTest.java │ │ │ │ ├── SingleTestDataset.java │ │ │ │ └── model │ │ │ │ │ ├── CompositeKey.java │ │ │ │ │ ├── CompositeKeyAsRecord.java │ │ │ │ │ ├── CustomerWithIdCompositeKey.java │ │ │ │ │ ├── CustomerWithIdCompositeKeyAsRecord.java │ │ │ │ │ ├── CustomerWithIdCompositeKeyAsRecordRepository.java │ │ │ │ │ ├── CustomerWithIdCompositeKeyEmbeddedId.java │ │ │ │ │ ├── CustomerWithIdCompositeKeyEmbeddedIdRepository.java │ │ │ │ │ ├── CustomerWithIdCompositeKeyRepository.java │ │ │ │ │ ├── CustomerWithIdLocalDate.java │ │ │ │ │ └── CustomerWithIdLocalDateRepository.java │ │ │ └── model │ │ │ │ ├── CustomerWithIdInt.java │ │ │ │ ├── CustomerWithIdIntRepository.java │ │ │ │ ├── CustomerWithIdInteger.java │ │ │ │ ├── CustomerWithIdIntegerNoAutoGenerate.java │ │ │ │ ├── CustomerWithIdIntegerNoAutoGenerateRepository.java │ │ │ │ ├── CustomerWithIdIntegerRepository.java │ │ │ │ ├── CustomerWithIdLong.java │ │ │ │ ├── CustomerWithIdLongRepository.java │ │ │ │ ├── CustomerWithIdString.java │ │ │ │ ├── CustomerWithIdStringNoAutoGenerate.java │ │ │ │ ├── CustomerWithIdStringNoAutoGenerateRepository.java │ │ │ │ ├── CustomerWithIdStringRepository.java │ │ │ │ ├── CustomerWithIdUuid.java │ │ │ │ ├── CustomerWithIdUuidRepository.java │ │ │ │ ├── CustomerWithPurchase.java │ │ │ │ ├── CustomerWithPurchaseRepository.java │ │ │ │ └── Purchase.java │ │ │ ├── immutables │ │ │ ├── Child.java │ │ │ ├── CustomerWithFinal.java │ │ │ ├── CustomerWithFinalChild.java │ │ │ ├── CustomerWithFinalChildRepository.java │ │ │ ├── CustomerWithFinalRepository.java │ │ │ ├── ImmutableTest.java │ │ │ └── ImmutableTestConfiguration.java │ │ │ ├── keywords │ │ │ ├── KeywordsTest.java │ │ │ ├── KeywordsTestConfiguration.java │ │ │ ├── MinimalDaoObject.java │ │ │ └── MinimalRepository.java │ │ │ ├── lazy │ │ │ ├── ComplexLazyObject.java │ │ │ ├── CompositeKeyAsRecord.java │ │ │ ├── LazyTest.java │ │ │ ├── LazyTestConfiguration.java │ │ │ ├── ObjectWithLazy.java │ │ │ ├── ObjectWithLazyHashMap.java │ │ │ ├── ObjectWithLazyHashMapRepository.java │ │ │ ├── ObjectWithLazyHashSet.java │ │ │ ├── ObjectWithLazyHashSetRepository.java │ │ │ ├── ObjectWithLazyList.java │ │ │ ├── ObjectWithLazyListRepository.java │ │ │ ├── ObjectWithLazyRepository.java │ │ │ ├── ObjectWithLazySimpleObject.java │ │ │ ├── ObjectWithLazySimpleObjectRepository.java │ │ │ ├── SimpleEntityWithComplexId.java │ │ │ ├── SimpleEntityWithComplexIdLazyRepository.java │ │ │ ├── SimpleEntityWithId.java │ │ │ ├── SimpleEntityWithIdLazyRepository.java │ │ │ ├── SimpleEntityWithIdLazyWrappedRepository.java │ │ │ └── SimpleObject.java │ │ │ ├── migration │ │ │ ├── MigrationTest.java │ │ │ ├── MigrationTestConfiguration.java │ │ │ ├── User.java │ │ │ └── UserRepository.java │ │ │ ├── query │ │ │ ├── by │ │ │ │ ├── example │ │ │ │ │ ├── QueryByExampleTest.java │ │ │ │ │ ├── QueryByExampleTestConfiguration.java │ │ │ │ │ ├── User.java │ │ │ │ │ └── UserRepository.java │ │ │ │ └── string │ │ │ │ │ ├── Child.java │ │ │ │ │ ├── Customer.java │ │ │ │ │ ├── CustomerRepository.java │ │ │ │ │ ├── CustomerWithChild.java │ │ │ │ │ ├── CustomerWithChildRepository.java │ │ │ │ │ ├── QueryPageTest.java │ │ │ │ │ ├── QuerySortTest.java │ │ │ │ │ ├── QueryTest.java │ │ │ │ │ ├── QueryTestConfiguration.java │ │ │ │ │ ├── User.java │ │ │ │ │ ├── UserRepository.java │ │ │ │ │ └── UserRepositoryTests.java │ │ │ └── hsql │ │ │ │ ├── HsqlTest.java │ │ │ │ ├── HsqlTestConfiguration.java │ │ │ │ ├── MyEntity.java │ │ │ │ ├── MyEntityRepository.java │ │ │ │ └── OtherEntity.java │ │ │ ├── real │ │ │ └── life │ │ │ │ └── examples │ │ │ │ ├── RealLifeExamplesTest.java │ │ │ │ ├── lazy │ │ │ │ ├── InvoiceLazyRepository.java │ │ │ │ ├── PositionLazyRepository.java │ │ │ │ ├── RealLifeExamplesLazyTest.java │ │ │ │ └── RealLifeExamplesLazyTestConfiguration.java │ │ │ │ ├── model │ │ │ │ ├── Article.java │ │ │ │ ├── ArticleGroup.java │ │ │ │ ├── Invoice.java │ │ │ │ ├── InvoiceRepository.java │ │ │ │ ├── Position.java │ │ │ │ ├── PositionRepository.java │ │ │ │ └── Warehouse.java │ │ │ │ └── nonlazy │ │ │ │ ├── InvoiceNonLazyRepository.java │ │ │ │ ├── PositionNonLazyRepository.java │ │ │ │ ├── RealLifeExamplesNonLazyTest.java │ │ │ │ └── RealLifeExamplesNonLazyTestConfiguration.java │ │ │ ├── simple │ │ │ ├── SimpleMultipleTest.java │ │ │ ├── SimpleSingleTest.java │ │ │ ├── lazy │ │ │ │ ├── CustomerAsRecordLazyRepository.java │ │ │ │ ├── CustomerLazyRepository.java │ │ │ │ ├── CustomerNotCrudLazyRepository.java │ │ │ │ ├── LazySimpleMultipleTest.java │ │ │ │ ├── LazySimpleSingleTest.java │ │ │ │ ├── OwnerLazyRepository.java │ │ │ │ └── SimpleLazyTestConfiguration.java │ │ │ ├── model │ │ │ │ ├── Customer.java │ │ │ │ ├── CustomerAsRecord.java │ │ │ │ ├── CustomerAsRecordRepository.java │ │ │ │ ├── CustomerNotCrud.java │ │ │ │ ├── CustomerNotCrudRepository.java │ │ │ │ ├── CustomerRepository.java │ │ │ │ ├── Owner.java │ │ │ │ ├── OwnerRepository.java │ │ │ │ └── ParentCustomer.java │ │ │ └── nonlazy │ │ │ │ ├── CustomerAsRecordNonLazyRepository.java │ │ │ │ ├── CustomerNonLazyRepository.java │ │ │ │ ├── CustomerNotCrudNonLazyRepository.java │ │ │ │ ├── NonLazySimpleMultipleTest.java │ │ │ │ ├── NonLazySimpleSingleTest.java │ │ │ │ ├── OwnerNonLazyRepository.java │ │ │ │ └── SimpleNonLazyTestConfiguration.java │ │ │ ├── special │ │ │ └── types │ │ │ │ ├── BigDecimalDaoObject.java │ │ │ │ ├── BigDecimalRepository.java │ │ │ │ ├── BigIntegerDaoObject.java │ │ │ │ ├── BigIntegerRepository.java │ │ │ │ ├── CalendarDaoObject.java │ │ │ │ ├── CalendarRepository.java │ │ │ │ ├── ComplexObject.java │ │ │ │ ├── DateDaoObject.java │ │ │ │ ├── DateRepository.java │ │ │ │ ├── EnumMapDaoObject.java │ │ │ │ ├── EnumMapRepository.java │ │ │ │ ├── EnumSetDaoObject.java │ │ │ │ ├── EnumSetRepository.java │ │ │ │ ├── LazyDaoObject.java │ │ │ │ ├── LazyRepository.java │ │ │ │ ├── ListDaoObject.java │ │ │ │ ├── ListRepository.java │ │ │ │ ├── LocalDateDaoObject.java │ │ │ │ ├── LocalDateRepository.java │ │ │ │ ├── LocalDateTimeDaoObject.java │ │ │ │ ├── LocalDateTimeRepository.java │ │ │ │ ├── LocalTimeDaoObject.java │ │ │ │ ├── LocalTimeRepository.java │ │ │ │ ├── MapDaoObject.java │ │ │ │ ├── MapRepository.java │ │ │ │ ├── OptionalDaoObject.java │ │ │ │ ├── OptionalRepository.java │ │ │ │ ├── SetDaoObject.java │ │ │ │ ├── SetRepository.java │ │ │ │ ├── SpecialTypesTestConfiguration.java │ │ │ │ ├── TypesData.java │ │ │ │ └── TypesTest.java │ │ │ ├── transactions │ │ │ ├── Account.java │ │ │ ├── AccountNoVersion.java │ │ │ ├── AccountNoVersionRepository.java │ │ │ ├── AccountWithVersion.java │ │ │ ├── AccountWithVersionRepository.java │ │ │ ├── Counter.java │ │ │ ├── CounterRepository.java │ │ │ ├── TransactionsAnnotationTest.java │ │ │ ├── TransactionsConcurrencyTest.java │ │ │ ├── TransactionsTest.java │ │ │ └── TransactionsTestConfiguration.java │ │ │ └── version │ │ │ ├── SingleTestDataset.java │ │ │ ├── VersionTest.java │ │ │ ├── VersionTestConfiguration.java │ │ │ ├── VersionTransactionTest.java │ │ │ ├── VersionedChildEntityWithLong.java │ │ │ ├── VersionedEntity.java │ │ │ ├── VersionedEntityWithId.java │ │ │ ├── VersionedEntityWithIdRepository.java │ │ │ ├── VersionedEntityWithInteger.java │ │ │ ├── VersionedEntityWithIntegerAndVersionedChild.java │ │ │ ├── VersionedEntityWithIntegerAndVersionedChildRepository.java │ │ │ ├── VersionedEntityWithIntegerRepository.java │ │ │ ├── VersionedEntityWithLong.java │ │ │ ├── VersionedEntityWithLongRepository.java │ │ │ ├── VersionedEntityWithPrimitiveInteger.java │ │ │ ├── VersionedEntityWithPrimitiveIntegerRepository.java │ │ │ ├── VersionedEntityWithPrimitiveLong.java │ │ │ ├── VersionedEntityWithPrimitiveLongRepository.java │ │ │ ├── VersionedEntityWithString.java │ │ │ ├── VersionedEntityWithStringRepository.java │ │ │ ├── VersionedEntityWithUuid.java │ │ │ └── VersionedEntityWithUuidRepository.java │ └── shared │ │ ├── DefaultTestAnnotations.java │ │ ├── SharedTestConfiguration.java │ │ ├── package-info.java │ │ ├── repositories │ │ ├── ChildCustomer.java │ │ ├── ChildCustomerRepository.java │ │ ├── Customer.java │ │ ├── CustomerRepository.java │ │ ├── CustomerRepositoryWithHashSet.java │ │ ├── CustomerRepositoryWithNonFinalHashSet.java │ │ ├── CustomerWithHashSet.java │ │ ├── CustomerWithNonFinalHashSet.java │ │ ├── CustomerWithQuery.java │ │ ├── Node.java │ │ ├── NodeRepository.java │ │ ├── ParentCustomer.java │ │ ├── ParentCustomerRepository.java │ │ ├── SubCustomer.java │ │ ├── SubCustomerRepository.java │ │ └── interfaces │ │ │ ├── CustomerCrud.java │ │ │ ├── CustomerEclipseStoreCrudRepository.java │ │ │ ├── CustomerEclipseStoreListCrudRepository.java │ │ │ ├── CustomerEclipseStoreListPagingAndSortingRepository.java │ │ │ ├── CustomerEclipseStorePagingAndSortingRepository.java │ │ │ ├── CustomerEclipseStoreRepository.java │ │ │ ├── CustomerListCrud.java │ │ │ ├── CustomerListPagingAndSorting.java │ │ │ ├── CustomerPagingAndSorting.java │ │ │ └── CustomerSimple.java │ │ └── tests │ │ ├── ChangeRootTests.java │ │ ├── ConcurrencyTest.java │ │ ├── HashSetTest.java │ │ ├── InheritanceTest.java │ │ ├── SpecificInterfacesTest.java │ │ ├── StressTest.java │ │ └── WorkingCopyTests.java │ └── repository │ ├── query │ ├── EclipseStoreQueryCreatorAndOrTest.java │ ├── EclipseStoreQueryCreatorBooleanTest.java │ ├── EclipseStoreQueryCreatorCollectionTest.java │ ├── EclipseStoreQueryCreatorGreaterLessTest.java │ ├── EclipseStoreQueryCreatorIsIsNotTest.java │ ├── EclipseStoreQueryCreatorStringTest.java │ ├── QueryCreatorUtil.java │ └── executors │ │ └── PageableSortableCollectionQuerierTest.java │ ├── root │ └── EntityDataTest.java │ └── support │ └── copier │ ├── DataTypeUtilTest.java │ └── registering │ └── RegisteringStorageToWorkingCopyCopierTest.java └── resources └── log4j2.xml /.config/checkstyle/suppressions.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Force sh files to have LF 5 | *.sh text eol=lf 6 | 7 | # Force MVN Wrapper Linux files LF 8 | mvnw text eol=lf 9 | .mvn/wrapper/maven-wrapper.properties text eol=lf 10 | -------------------------------------------------------------------------------- /.github/.lycheeignore: -------------------------------------------------------------------------------- 1 | # Ignorefile for broken link check 2 | localhost 3 | mvnrepository.com 4 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | contact_links: 2 | - name: 💬 Contact support 3 | url: https://xdev.software/en/services/support 4 | about: "If you need support as soon as possible or/and you can't wait for any pull request" 5 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/question.yml: -------------------------------------------------------------------------------- 1 | name: ❓ Question 2 | description: Ask a question 3 | labels: [question] 4 | body: 5 | - type: markdown 6 | attributes: 7 | value: | 8 | Thanks for taking the time to fill out this form! 9 | 10 | - type: checkboxes 11 | id: checklist 12 | attributes: 13 | label: "Checklist" 14 | options: 15 | - label: "I made sure that there are *no existing issues* - [open](https://github.com/xdev-software/spring-data-eclipse-store/issues) or [closed](https://github.com/xdev-software/spring-data-eclipse-store/issues?q=is%3Aissue+is%3Aclosed) - which I could contribute my information to." 16 | required: true 17 | - label: "I have taken the time to fill in all the required details. I understand that the question will be dismissed otherwise." 18 | required: true 19 | 20 | - type: textarea 21 | id: what-is-the-question 22 | attributes: 23 | label: What is/are your question(s)? 24 | validations: 25 | required: true 26 | 27 | - type: textarea 28 | id: additional-information 29 | attributes: 30 | label: Additional information 31 | description: "Any other information you'd like to include - for instance logs, screenshots, etc." 32 | -------------------------------------------------------------------------------- /.github/labels.yml: -------------------------------------------------------------------------------- 1 | # Default 2 | ## Required for template 3 | - name: bug 4 | description: "Something isn't working" 5 | color: 'd73a4a' 6 | - name: enhancement 7 | description: New feature or request 8 | color: '#a2eeef' 9 | - name: question 10 | description: Information is requested 11 | color: '#d876e3' 12 | ## Others 13 | - name: duplicate 14 | description: This already exists 15 | color: '#cfd3d7' 16 | - name: good first issue 17 | description: Good for newcomers 18 | color: '#7057ff' 19 | - name: help wanted 20 | description: Extra attention is needed 21 | color: '#008672' 22 | - name: invalid 23 | description: "This doesn't seem right" 24 | color: '#e4e669' 25 | # Custom 26 | - name: automated 27 | description: Created by an automation 28 | color: '#000000' 29 | - name: "can't reproduce" 30 | color: '#e95f2c' 31 | - name: customer-requested 32 | description: Was requested by a customer of us 33 | color: '#068374' 34 | - name: stale 35 | color: '#ededed' 36 | - name: waiting-for-response 37 | description: If no response is received after a certain time the issue will be closed 38 | color: '#202020' 39 | -------------------------------------------------------------------------------- /.github/workflows/sync-labels.yml: -------------------------------------------------------------------------------- 1 | name: Sync labels 2 | 3 | on: 4 | push: 5 | branches: develop 6 | paths: 7 | - .github/labels.yml 8 | 9 | workflow_dispatch: 10 | 11 | permissions: 12 | issues: write 13 | 14 | jobs: 15 | labels: 16 | runs-on: ubuntu-latest 17 | timeout-minutes: 10 18 | steps: 19 | - uses: actions/checkout@v4 20 | with: 21 | sparse-checkout: .github/labels.yml 22 | 23 | - uses: EndBug/label-sync@52074158190acb45f3077f9099fea818aa43f97a # v2 24 | with: 25 | config-file: .github/labels.yml 26 | -------------------------------------------------------------------------------- /.github/workflows/test-deploy.yml: -------------------------------------------------------------------------------- 1 | name: Test Deployment 2 | 3 | on: 4 | workflow_dispatch: 5 | 6 | env: 7 | PRIMARY_MAVEN_MODULE: ${{ github.event.repository.name }} 8 | 9 | jobs: 10 | publish-maven: 11 | runs-on: ubuntu-latest 12 | timeout-minutes: 60 13 | steps: 14 | - uses: actions/checkout@v4 15 | 16 | - name: Set up JDK 17 | uses: actions/setup-java@v4 18 | with: # running setup-java again overwrites the settings.xml 19 | distribution: 'temurin' 20 | java-version: '17' 21 | server-id: sonatype-central-portal 22 | server-username: MAVEN_CENTRAL_USERNAME 23 | server-password: MAVEN_CENTRAL_TOKEN 24 | gpg-passphrase: MAVEN_GPG_PASSPHRASE 25 | gpg-private-key: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }} 26 | 27 | - name: Publish to Central Portal 28 | run: ../mvnw -B deploy -P publish-sonatype-central-portal -DskipTests 29 | working-directory: ${{ env.PRIMARY_MAVEN_MODULE }} 30 | env: 31 | MAVEN_CENTRAL_USERNAME: ${{ secrets.SONATYPE_MAVEN_CENTRAL_PORTAL_USERNAME }} 32 | MAVEN_CENTRAL_TOKEN: ${{ secrets.SONATYPE_MAVEN_CENTRAL_PORTAL_TOKEN }} 33 | MAVEN_GPG_PASSPHRASE: ${{ secrets.MAVEN_GPG_PASSPHRASE }} 34 | -------------------------------------------------------------------------------- /.idea/checkstyle-idea.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10.21.0 5 | JavaOnlyWithTests 6 | true 7 | true 8 | 12 | 19 | 20 | -------------------------------------------------------------------------------- /.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /.idea/externalDependencies.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/Project_Default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | -------------------------------------------------------------------------------- /.idea/saveactions_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one 2 | # or more contributor license agreements. See the NOTICE file 3 | # distributed with this work for additional information 4 | # regarding copyright ownership. The ASF licenses this file 5 | # to you under the Apache License, Version 2.0 (the 6 | # "License"); you may not use this file except in compliance 7 | # with the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, 12 | # software distributed under the License is distributed on an 13 | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | # KIND, either express or implied. See the License for the 15 | # specific language governing permissions and limitations 16 | # under the License. 17 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.9/apache-maven-3.9.9-bin.zip 18 | -------------------------------------------------------------------------------- /.run/Run Benchmark.run.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16 | -------------------------------------------------------------------------------- /.run/Run Complex Demo.run.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 17 | -------------------------------------------------------------------------------- /.run/Run Dual Storage Demo.run.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 17 | -------------------------------------------------------------------------------- /.run/Run JPA Demo.run.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16 | -------------------------------------------------------------------------------- /.run/Run Simple Demo.run.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16 | -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security Policy 2 | 3 | ## Reporting a Vulnerability 4 | 5 | Please report a security vulnerability [on GitHub Security Advisories](https://github.com/xdev-software/spring-data-eclipse-store/security/advisories/new). 6 | -------------------------------------------------------------------------------- /assets/Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xdev-software/spring-data-eclipse-store/57fa5757610759ec5371cba5e92c98634f249fb6/assets/Logo.png -------------------------------------------------------------------------------- /docs/antora-playbook.yml: -------------------------------------------------------------------------------- 1 | site: 2 | title: Spring-Data-Eclipse-Store 3 | url: https://spring-eclipsestore.xdev.software/ 4 | robots: allow 5 | 6 | # see https://docs.antora.org/antora/2.3/playbook/configure-runtime/ 7 | runtime: 8 | cache_dir: ./.cache/antora 9 | log: 10 | # use pretty even on CI 11 | format: pretty 12 | # set to info to get details from the Antora extensions 13 | level: info 14 | # Antora exits with a non-zero exit code if an error is logged -> https://docs.antora.org/antora/latest/playbook/runtime-log-failure-level 15 | failure_level: error 16 | 17 | content: 18 | sources: 19 | # url of the repo 20 | - url: https://github.com/xdev-software/spring-data-eclipse-store 21 | start_path: docs 22 | branches: 23 | - "develop" 24 | 25 | ui: 26 | bundle: 27 | url: https://gitlab.com/antora/antora-ui-default/-/jobs/artifacts/master/raw/build/ui-bundle.zip?job=bundle-stable 28 | snapshot: true 29 | supplemental_files: ./supplemental-ui 30 | 31 | output: 32 | dir: ./site 33 | 34 | antora: 35 | extensions: 36 | - require: '@antora/lunr-extension' 37 | -------------------------------------------------------------------------------- /docs/antora.yml: -------------------------------------------------------------------------------- 1 | name: ROOT 2 | title: Spring-Data-Eclipse-Store 3 | version: master 4 | display_version: '2.5.0' 5 | start_page: index.adoc 6 | nav: 7 | - modules/ROOT/nav.adoc 8 | asciidoc: 9 | attributes: 10 | product-name: 'Spring-Data-Eclipse-Store' 11 | display-version: '2.5.0' 12 | maven-version: '2.5.0' 13 | page-editable: false 14 | page-out-of-support: false 15 | -------------------------------------------------------------------------------- /docs/modules/ROOT/nav.adoc: -------------------------------------------------------------------------------- 1 | * xref:index.adoc[Home] 2 | * xref:installation.adoc[Installation] 3 | * xref:configuration.adoc[Configuration] 4 | * xref:working-copies.adoc[Working Copies] 5 | * xref:features/features.adoc[Features] 6 | ** xref:features/ids.adoc[IDs] 7 | ** xref:features/lazies.adoc[Lazy References] 8 | ** xref:features/queries.adoc[Queries] 9 | ** xref:features/transactions.adoc[Transactions] 10 | ** xref:features/versions.adoc[Versions] 11 | ** xref:features/versioned-migration.adoc[Versioned Migration] 12 | ** xref:features/rest-api.adoc[REST Interface] 13 | ** xref:features/validation-constraints.adoc[Validation Constraints] 14 | * xref:migration-from-jpa.adoc[Migration from JPA] 15 | * xref:migration-from-eclipse-store.adoc[Migration from EclipseStore] 16 | * xref:known-issues.adoc[Known issues] 17 | -------------------------------------------------------------------------------- /docs/modules/ROOT/pages/features/features.adoc: -------------------------------------------------------------------------------- 1 | = Features 2 | 3 | * xref:features/ids.adoc[IDs] 4 | * xref:features/lazies.adoc[Lazy References] 5 | * xref:features/queries.adoc[Queries] 6 | * xref:features/transactions.adoc[Transactions] 7 | * xref:features/versions.adoc[Versions] 8 | * xref:features/versioned-migration.adoc[Versioned Migration] 9 | * xref:features/rest-api.adoc[REST Interface] 10 | * xref:features/validation-constraints.adoc[Validation Constraints] 11 | -------------------------------------------------------------------------------- /docs/modules/ROOT/pages/features/ids.adoc: -------------------------------------------------------------------------------- 1 | = IDs 2 | 3 | {product-name} supports the following types with auto generating (``GenerationType.AUTO``) values: 4 | 5 | * ``int`` / ``Integer`` 6 | * ``long`` / ``Long`` 7 | * ``String`` 8 | * ``UUID`` 9 | 10 | Other generation types are currently not supported. 11 | 12 | == Composite keys 13 | 14 | It is possible to use **any class as https://jakarta.ee/specifications/persistence/3.2/apidocs/jakarta.persistence/jakarta/persistence/id[``@Id``]** but without any auto generation. 15 | Most importantly the used class **must have a valid ``hashCode``** since a ``HashMap`` is used to store and manage entities. 16 | 17 | {product-name} can also handle https://jakarta.ee/specifications/persistence/3.2/apidocs/jakarta.persistence/jakarta/persistence/embeddedid[``@EmbeddedId``] which results in the same behavior as ``@Id`` but the id-class must then implement ``Serializable``. 18 | 19 | Multiple Ids for a single entity and https://jakarta.ee/specifications/persistence/3.2/apidocs/jakarta.persistence/jakarta/persistence/idclass[``@IdClass``] are **not** supported. 20 | -------------------------------------------------------------------------------- /docs/modules/ROOT/pages/features/versions.adoc: -------------------------------------------------------------------------------- 1 | = Versions 2 | 3 | To implement Optimistic Locking {product-name} supports the `@Version` annotation in entities. 4 | The following types can be used as version: 5 | 6 | * `int` 7 | * `Integer` 8 | * `long` 9 | * `Long` 10 | * `UUID` (will be randomly generated) 11 | * `String` (UUID will be converted to String) 12 | 13 | -------------------------------------------------------------------------------- /docs/modules/ROOT/pages/working-copies.adoc: -------------------------------------------------------------------------------- 1 | = Working copies 2 | 3 | If you use EclipseStore without our library, EclipseStore loads the data from the datastore directly into memory. You make your changes on these loaded Java objects and by calling ``store`` EclipseStore writes it directly from memory to the datastore. 4 | 5 | image::WorkingCopy_1.svg[Native behavior of EclipseStore] 6 | 7 | If you e.g. change the address of a person, the changed address is already in your data model, *even before storing* this person. 8 | This is very different from the behavior a Spring user expects. 9 | 10 | image::WorkingCopy_2.svg[Behavior of EclipseStore with Spring-Data-Eclipse-Store] 11 | 12 | With {product-name} every time an object is loaded from the datastore, a working copy of that object (or rather the object tree) is created and returned to the user. 13 | Therefore, the user can make the changes on the working copy without any changes to the actual data model. 14 | The changes are only persisted after calling ``save`` on a repository. 15 | 16 | -------------------------------------------------------------------------------- /docs/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "@antora/lunr-extension": "^1.0.0-alpha.8" 4 | }, 5 | "devDependencies": { 6 | "@antora/cli": "3.1.10", 7 | "@antora/site-generator": "3.1.10" 8 | } 9 | } -------------------------------------------------------------------------------- /docs/supplemental-ui/css/site-extra.css: -------------------------------------------------------------------------------- 1 | body { 2 | font-family: sans-serif; 3 | } 4 | 5 | .navbar { 6 | background-color: #fff; 7 | } 8 | 9 | footer.footer { 10 | color: #fff; 11 | background-color: #333333; 12 | } 13 | 14 | footer.footer a, 15 | footer.footer .link-separator 16 | { 17 | color: #c02222; 18 | } 19 | 20 | .navbar-item { 21 | padding: 0px 8px; 22 | } 23 | 24 | .navbar-brand .navbar-item.logo { 25 | align-self: center; 26 | padding: 0; 27 | } 28 | 29 | .navbar-brand .navbar-item.logo img { 30 | width: inherit; 31 | } 32 | 33 | .navbar-brand .navbar-item.title { 34 | align-self: center; 35 | color: var(--navbar-font-color); 36 | font-size: 1rem; 37 | line-height: 1; 38 | position: relative; 39 | top: 0.06em; /* compensate for built-in line height in font */ 40 | letter-spacing: -0.02em; 41 | padding: 0; 42 | margin: 0 1rem; 43 | } 44 | 45 | .doc h1 { 46 | color: #333333; 47 | } 48 | -------------------------------------------------------------------------------- /docs/supplemental-ui/img/Favicon_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xdev-software/spring-data-eclipse-store/57fa5757610759ec5371cba5e92c98634f249fb6/docs/supplemental-ui/img/Favicon_16x16.png -------------------------------------------------------------------------------- /docs/supplemental-ui/img/Favicon_32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xdev-software/spring-data-eclipse-store/57fa5757610759ec5371cba5e92c98634f249fb6/docs/supplemental-ui/img/Favicon_32x32.png -------------------------------------------------------------------------------- /docs/supplemental-ui/partials/footer-content.hbs: -------------------------------------------------------------------------------- 1 | 3 | -------------------------------------------------------------------------------- /docs/supplemental-ui/partials/head-meta.hbs: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /renovate.json5: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://docs.renovatebot.com/renovate-schema.json", 3 | "rebaseWhen": "behind-base-branch", 4 | "packageRules": [ 5 | { 6 | "description": "Ignore project internal dependencies", 7 | "packagePattern": "^software.xdev:spring-data-eclipse-store", 8 | "datasources": [ 9 | "maven" 10 | ], 11 | "enabled": false 12 | }, 13 | { 14 | "description": "Group net.sourceforge.pmd", 15 | "matchPackagePatterns": [ 16 | "^net.sourceforge.pmd" 17 | ], 18 | "datasources": [ 19 | "maven" 20 | ], 21 | "groupName": "net.sourceforge.pmd" 22 | }, 23 | { 24 | "description": "Group org.eclipse.store/serializer", 25 | "matchPackagePatterns": [ 26 | "^org.eclipse.store", 27 | "^org.eclipse.serializer" 28 | ], 29 | "datasources": [ 30 | "maven" 31 | ], 32 | "groupName": "org.eclipse.store-serializer" 33 | } 34 | ] 35 | } 36 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-benchmark/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | !.mvn/wrapper/maven-wrapper.jar 3 | !**/src/main/**/target/ 4 | !**/src/test/**/target/ 5 | 6 | ### IntelliJ IDEA ### 7 | .idea/modules.xml 8 | .idea/jarRepositories.xml 9 | .idea/compiler.xml 10 | .idea/libraries/ 11 | *.iws 12 | *.iml 13 | *.ipr 14 | 15 | ### Eclipse ### 16 | .apt_generated 17 | .classpath 18 | .factorypath 19 | .project 20 | .settings 21 | .springBeans 22 | .sts4-cache 23 | 24 | ### NetBeans ### 25 | /nbproject/private/ 26 | /nbbuild/ 27 | /dist/ 28 | /nbdist/ 29 | /.nb-gradle/ 30 | build/ 31 | !**/src/main/**/build/ 32 | !**/src/test/**/build/ 33 | 34 | ### VS Code ### 35 | .vscode/ 36 | 37 | ### Mac OS ### 38 | .DS_Store -------------------------------------------------------------------------------- /spring-data-eclipse-store-benchmark/src/main/java/software/xdev/spring/data/eclipse/store/benchmark/BenchmarkApplication.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.benchmark; 2 | 3 | import org.slf4j.Logger; 4 | import org.slf4j.LoggerFactory; 5 | import org.springframework.boot.SpringApplication; 6 | import org.springframework.boot.autoconfigure.SpringBootApplication; 7 | import org.springframework.context.ConfigurableApplicationContext; 8 | 9 | import software.xdev.spring.data.eclipse.store.repository.config.EnableEclipseStoreRepositories; 10 | 11 | 12 | @SuppressWarnings({"checkstyle:HideUtilityClassConstructor", "PMD.UseUtilityClass"}) 13 | @SpringBootApplication 14 | @EnableEclipseStoreRepositories 15 | public class BenchmarkApplication 16 | { 17 | private static final Logger LOG = LoggerFactory.getLogger(BenchmarkApplication.class); 18 | 19 | public static void main(final String[] args) 20 | { 21 | try 22 | { 23 | final ConfigurableApplicationContext run = SpringApplication.run(BenchmarkRunner.class, args); 24 | run.close(); 25 | } 26 | catch(final Exception e) 27 | { 28 | LOG.error("Error starting the benchmark", e); 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-benchmark/src/main/java/software/xdev/spring/data/eclipse/store/benchmark/benchmarks/simple/customer/CustomerRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2023 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.benchmark.benchmarks.simple.customer; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface CustomerRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-benchmark/src/main/java/software/xdev/spring/data/eclipse/store/benchmark/benchmarks/with/id/CustomerWithAutoIdRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2023 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.benchmark.benchmarks.with.id; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface CustomerWithAutoIdRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/complex/model/NamedEntity.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012-2019 the original author or authors. 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.demo.complex.model; 17 | 18 | public class NamedEntity extends BaseEntity 19 | { 20 | private String name; 21 | 22 | public String getName() 23 | { 24 | return this.name; 25 | } 26 | 27 | public void setName(final String name) 28 | { 29 | this.name = name; 30 | } 31 | 32 | @Override 33 | public String toString() 34 | { 35 | return this.getName(); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/complex/owner/PetType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012-2019 the original author or authors. 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.demo.complex.owner; 17 | 18 | import software.xdev.spring.data.eclipse.store.demo.complex.model.NamedEntity; 19 | 20 | 21 | public class PetType extends NamedEntity 22 | { 23 | 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/complex/vet/Specialty.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012-2019 the original author or authors. 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.demo.complex.vet; 17 | 18 | import software.xdev.spring.data.eclipse.store.demo.complex.model.NamedEntity; 19 | 20 | 21 | public class Specialty extends NamedEntity 22 | { 23 | 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/complex/vet/VetRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012-2019 the original author or authors. 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.demo.complex.vet; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface VetRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/dual/storage/invoice/Invoice.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.demo.dual.storage.invoice; 2 | 3 | public record Invoice(String id, double sum) 4 | { 5 | } 6 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/dual/storage/invoice/InvoiceRepository.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.demo.dual.storage.invoice; 2 | 3 | import org.springframework.data.repository.CrudRepository; 4 | 5 | 6 | public interface InvoiceRepository extends CrudRepository 7 | { 8 | } 9 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/dual/storage/person/Person.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.demo.dual.storage.person; 2 | 3 | public record Person(String firstName, String lastName) 4 | { 5 | } 6 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/dual/storage/person/PersonRepository.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.demo.dual.storage.person; 2 | 3 | import org.springframework.data.repository.CrudRepository; 4 | 5 | 6 | public interface PersonRepository extends CrudRepository 7 | { 8 | } 9 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/lazy/Customer.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.demo.lazy; 2 | 3 | import jakarta.persistence.GeneratedValue; 4 | import jakarta.persistence.GenerationType; 5 | 6 | import org.springframework.data.annotation.Id; 7 | 8 | 9 | public class Customer 10 | { 11 | @Id 12 | @GeneratedValue(strategy = GenerationType.AUTO) 13 | private String id; 14 | 15 | private final String firstName; 16 | private final String lastName; 17 | 18 | public Customer(final String firstName, final String lastName) 19 | { 20 | this.firstName = firstName; 21 | this.lastName = lastName; 22 | } 23 | 24 | @Override 25 | public String toString() 26 | { 27 | return String.format( 28 | "Customer[id=%s, firstName='%s', lastName='%s']", 29 | this.id, this.firstName, this.lastName); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/lazy/CustomerRepository.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.demo.lazy; 2 | 3 | import software.xdev.spring.data.eclipse.store.repository.interfaces.lazy.LazyEclipseStoreCrudRepository; 4 | 5 | 6 | public interface CustomerRepository extends LazyEclipseStoreCrudRepository 7 | { 8 | } 9 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/lazy/Pet.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.demo.lazy; 2 | 3 | import org.springframework.data.annotation.Id; 4 | 5 | 6 | public class Pet 7 | { 8 | @Id 9 | private String id; 10 | 11 | private String name; 12 | private Integer age; 13 | 14 | public Pet() 15 | { 16 | } 17 | 18 | public Pet(final String id, final String name, final Integer age) 19 | { 20 | this.id = id; 21 | this.name = name; 22 | this.age = age; 23 | } 24 | 25 | @Override 26 | public String toString() 27 | { 28 | return String.format( 29 | "Pet[id=%s, name='%s', age='%s']", 30 | this.id, this.name, this.age); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/lazy/PetRepository.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.demo.lazy; 2 | 3 | import software.xdev.spring.data.eclipse.store.repository.interfaces.lazy.LazyEclipseStoreCrudRepository; 4 | 5 | 6 | public interface PetRepository extends LazyEclipseStoreCrudRepository 7 | { 8 | } 9 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/simple/Customer.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.demo.simple; 2 | 3 | import jakarta.persistence.GeneratedValue; 4 | import jakarta.persistence.GenerationType; 5 | 6 | import org.springframework.data.annotation.Id; 7 | 8 | 9 | public class Customer 10 | { 11 | @Id 12 | @GeneratedValue(strategy = GenerationType.AUTO) 13 | private String id; 14 | 15 | private final String firstName; 16 | private final String lastName; 17 | 18 | public Customer(final String firstName, final String lastName) 19 | { 20 | this.firstName = firstName; 21 | this.lastName = lastName; 22 | } 23 | 24 | @Override 25 | public String toString() 26 | { 27 | return String.format( 28 | "Customer[id=%s, firstName='%s', lastName='%s']", 29 | this.id, this.firstName, this.lastName); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/simple/CustomerRepository.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.demo.simple; 2 | 3 | import org.springframework.data.repository.CrudRepository; 4 | 5 | 6 | public interface CustomerRepository extends CrudRepository 7 | { 8 | } 9 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/simple/Pet.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.demo.simple; 2 | 3 | import org.springframework.data.annotation.Id; 4 | 5 | 6 | public class Pet 7 | { 8 | @Id 9 | private String id; 10 | 11 | private String name; 12 | private Integer age; 13 | 14 | public Pet() 15 | { 16 | } 17 | 18 | public Pet(final String id, final String name, final Integer age) 19 | { 20 | this.id = id; 21 | this.name = name; 22 | this.age = age; 23 | } 24 | 25 | @Override 26 | public String toString() 27 | { 28 | return String.format( 29 | "Pet[id=%s, name='%s', age='%s']", 30 | this.id, this.name, this.age); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/java/software/xdev/spring/data/eclipse/store/demo/simple/PetRepository.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.demo.simple; 2 | 3 | import org.springframework.data.repository.CrudRepository; 4 | 5 | 6 | public interface PetRepository extends CrudRepository 7 | { 8 | } 9 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/main/resources/log4j2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/test/resources/application.yaml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 0 3 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-demo/src/test/resources/log4j2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-jpa/src/main/java/software/xdev/spring/data/eclipse/store/jpa/CustomerInEclipseStore.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.jpa; 2 | 3 | import jakarta.persistence.Id; 4 | 5 | 6 | public class CustomerInEclipseStore 7 | { 8 | @Id 9 | private String id; 10 | 11 | private String firstName; 12 | private String lastName; 13 | 14 | public CustomerInEclipseStore(final String id, final String firstName, final String lastName) 15 | { 16 | this.id = id; 17 | this.firstName = firstName; 18 | this.lastName = lastName; 19 | } 20 | 21 | public CustomerInEclipseStore() 22 | { 23 | 24 | } 25 | 26 | @Override 27 | public String toString() 28 | { 29 | return String.format( 30 | "Customer[id=%s, firstName='%s', lastName='%s']", 31 | this.id, this.firstName, this.lastName); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-jpa/src/main/java/software/xdev/spring/data/eclipse/store/jpa/CustomerInEclipseStoreRepository.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.jpa; 2 | 3 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreCrudRepository; 4 | 5 | 6 | /** 7 | * To be able to properly coexist with JPA in one project, the repositories must be declared as specific JPA- or 8 | * EclipseStore-Repositories. 9 | */ 10 | public interface CustomerInEclipseStoreRepository extends EclipseStoreCrudRepository 11 | { 12 | } 13 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-jpa/src/main/java/software/xdev/spring/data/eclipse/store/jpa/CustomerInJpa.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.jpa; 2 | 3 | import jakarta.persistence.Entity; 4 | import jakarta.persistence.Id; 5 | 6 | 7 | @Entity 8 | public class CustomerInJpa 9 | { 10 | @Id 11 | private String id; 12 | 13 | private String firstName; 14 | private String lastName; 15 | 16 | public CustomerInJpa(final String id, final String firstName, final String lastName) 17 | { 18 | this.id = id; 19 | this.firstName = firstName; 20 | this.lastName = lastName; 21 | } 22 | 23 | public CustomerInJpa() 24 | { 25 | 26 | } 27 | 28 | @Override 29 | public String toString() 30 | { 31 | return String.format( 32 | "Customer[id=%s, firstName='%s', lastName='%s']", 33 | this.id, this.firstName, this.lastName); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-jpa/src/main/java/software/xdev/spring/data/eclipse/store/jpa/CustomerInJpaRepository.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.jpa; 2 | 3 | import org.springframework.data.jpa.repository.JpaRepository; 4 | 5 | 6 | /** 7 | * To be able to properly coexist with JPA in one project, the repositories must be declared as specific JPA- or 8 | * EclipseStore-Repositories. 9 | */ 10 | public interface CustomerInJpaRepository extends JpaRepository 11 | { 12 | } 13 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-jpa/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | org.eclipse.store.storage-directory=./storage-eclipsestore 2 | spring.datasource.url=jdbc:h2:file:./storage-h2; 3 | spring.jpa.hibernate.ddl-auto=update 4 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-jpa/src/main/resources/log4j2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-jpa/src/test/java/software/xdev/spring/data/eclipse/store/jpa/integration/repository/PersonToTestInEclipseStoreRepository.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.jpa.integration.repository; 2 | 3 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreListCrudRepository; 4 | 5 | 6 | public interface PersonToTestInEclipseStoreRepository 7 | extends EclipseStoreListCrudRepository 8 | { 9 | } 10 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-jpa/src/test/java/software/xdev/spring/data/eclipse/store/jpa/integration/repository/PersonToTestInJpaRepository.java: -------------------------------------------------------------------------------- 1 | package software.xdev.spring.data.eclipse.store.jpa.integration.repository; 2 | 3 | import org.springframework.data.jpa.repository.JpaRepository; 4 | 5 | 6 | public interface PersonToTestInJpaRepository extends JpaRepository 7 | { 8 | } 9 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-jpa/src/test/resources/application.properties: -------------------------------------------------------------------------------- 1 | org.eclipse.store.storage-directory=./target/tempstorage 2 | -------------------------------------------------------------------------------- /spring-data-eclipse-store-jpa/src/test/resources/log4j2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/core/EntityListProvider.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.core; 17 | 18 | public interface EntityListProvider 19 | { 20 | EntityProvider getEntityProvider(final Class clazz); 21 | } 22 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/exceptions/AlreadyRegisteredException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.exceptions; 17 | 18 | public class AlreadyRegisteredException extends RuntimeException 19 | { 20 | public AlreadyRegisteredException(final String entityName) 21 | { 22 | super(String.format("Entity %s already registered.", entityName)); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/exceptions/DifferentClassesException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.exceptions; 17 | 18 | public class DifferentClassesException extends RuntimeException 19 | { 20 | public DifferentClassesException(final String message) 21 | { 22 | super(message); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/exceptions/IdFieldException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.exceptions; 17 | 18 | public class IdFieldException extends RuntimeException 19 | { 20 | public IdFieldException(final String message) 21 | { 22 | super(message); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/exceptions/IdGeneratorNotSupportedException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.exceptions; 17 | 18 | public class IdGeneratorNotSupportedException extends RuntimeException 19 | { 20 | public IdGeneratorNotSupportedException(final String message) 21 | { 22 | super(message); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/exceptions/InvalidRootException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.exceptions; 17 | 18 | public class InvalidRootException extends RuntimeException 19 | { 20 | public InvalidRootException(final String message) 21 | { 22 | super(message); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/exceptions/InvalidVersionException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.exceptions; 17 | 18 | public class InvalidVersionException extends RuntimeException 19 | { 20 | public InvalidVersionException(final String message) 21 | { 22 | super(message); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/exceptions/NoIdFieldFoundException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.exceptions; 17 | 18 | public class NoIdFieldFoundException extends RuntimeException 19 | { 20 | public NoIdFieldFoundException(final String message) 21 | { 22 | super(message); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/exceptions/NoPageableObjectFoundException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.exceptions; 17 | 18 | public class NoPageableObjectFoundException extends RuntimeException 19 | { 20 | public NoPageableObjectFoundException(final String message) 21 | { 22 | super(message); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/exceptions/NotComparableException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.exceptions; 17 | 18 | public class NotComparableException extends RuntimeException 19 | { 20 | public NotComparableException(final String message) 21 | { 22 | super(message); 23 | } 24 | 25 | public NotComparableException(final String message, final Throwable cause) 26 | { 27 | super(message, cause); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/exceptions/StringBlankException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.exceptions; 17 | 18 | public class StringBlankException extends RuntimeException 19 | { 20 | public StringBlankException() 21 | { 22 | this("String is empty or blank."); 23 | } 24 | 25 | public StringBlankException(final String message) 26 | { 27 | super(message); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/interfaces/EclipseStoreCustomRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.interfaces; 17 | 18 | import org.springframework.data.repository.NoRepositoryBean; 19 | import org.springframework.data.repository.Repository; 20 | 21 | 22 | @SuppressWarnings("java:S119") 23 | @NoRepositoryBean 24 | public interface EclipseStoreCustomRepository extends Repository 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/interfaces/EclipseStoreListPagingAndSortingRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.interfaces; 17 | 18 | import org.springframework.data.repository.ListPagingAndSortingRepository; 19 | import org.springframework.data.repository.NoRepositoryBean; 20 | 21 | 22 | @SuppressWarnings("java:S119") 23 | @NoRepositoryBean 24 | public interface EclipseStoreListPagingAndSortingRepository 25 | extends ListPagingAndSortingRepository 26 | { 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/interfaces/EclipseStorePagingAndSortingRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.interfaces; 17 | 18 | import org.springframework.data.repository.NoRepositoryBean; 19 | import org.springframework.data.repository.PagingAndSortingRepository; 20 | 21 | 22 | @SuppressWarnings("java:S119") 23 | @NoRepositoryBean 24 | public interface EclipseStorePagingAndSortingRepository 25 | extends PagingAndSortingRepository 26 | { 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/interfaces/EclipseStoreQueryByExampleExecutor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.interfaces; 17 | 18 | import org.springframework.data.repository.NoRepositoryBean; 19 | import org.springframework.data.repository.query.QueryByExampleExecutor; 20 | 21 | 22 | @SuppressWarnings("java:S119") 23 | @NoRepositoryBean 24 | public interface EclipseStoreQueryByExampleExecutor extends QueryByExampleExecutor 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/interfaces/EclipseStoreRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.interfaces; 17 | 18 | import org.springframework.data.repository.NoRepositoryBean; 19 | 20 | 21 | @SuppressWarnings("java:S119") 22 | @NoRepositoryBean 23 | public interface EclipseStoreRepository 24 | extends 25 | EclipseStoreListCrudRepository, 26 | EclipseStoreListPagingAndSortingRepository, 27 | EclipseStoreQueryByExampleExecutor 28 | { 29 | } 30 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/interfaces/lazy/LazyEclipseStoreCustomRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.interfaces.lazy; 17 | 18 | import org.springframework.data.repository.NoRepositoryBean; 19 | import org.springframework.data.repository.Repository; 20 | 21 | 22 | @SuppressWarnings("java:S119") 23 | @NoRepositoryBean 24 | public interface LazyEclipseStoreCustomRepository extends Repository 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/interfaces/lazy/LazyEclipseStoreListPagingAndSortingRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.interfaces.lazy; 17 | 18 | import org.springframework.data.repository.ListPagingAndSortingRepository; 19 | import org.springframework.data.repository.NoRepositoryBean; 20 | 21 | 22 | @SuppressWarnings("java:S119") 23 | @NoRepositoryBean 24 | public interface LazyEclipseStoreListPagingAndSortingRepository 25 | extends ListPagingAndSortingRepository 26 | { 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/interfaces/lazy/LazyEclipseStorePagingAndSortingRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.interfaces.lazy; 17 | 18 | import org.springframework.data.repository.NoRepositoryBean; 19 | import org.springframework.data.repository.PagingAndSortingRepository; 20 | 21 | 22 | @SuppressWarnings("java:S119") 23 | @NoRepositoryBean 24 | public interface LazyEclipseStorePagingAndSortingRepository 25 | extends PagingAndSortingRepository 26 | { 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/interfaces/lazy/LazyEclipseStoreQueryByExampleExecutor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.interfaces.lazy; 17 | 18 | import org.springframework.data.repository.NoRepositoryBean; 19 | import org.springframework.data.repository.query.QueryByExampleExecutor; 20 | 21 | 22 | @SuppressWarnings("java:S119") 23 | @NoRepositoryBean 24 | public interface LazyEclipseStoreQueryByExampleExecutor extends QueryByExampleExecutor 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/concurrency/ValueOperation.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.concurrency; 17 | 18 | /** 19 | * Operation with a return value, used by {@link ReentrantJavaReadWriteLock}. 20 | * 21 | * @param T the return type 22 | */ 23 | @FunctionalInterface 24 | public interface ValueOperation 25 | { 26 | /** 27 | * Execute an arbitrary operation and return the result 28 | * 29 | * @return the result of the operation 30 | */ 31 | T execute(); 32 | } 33 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/concurrency/VoidOperation.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.concurrency; 17 | 18 | /** 19 | * Operation with no return value, used by {@link ReentrantJavaReadWriteLock}. 20 | */ 21 | @FunctionalInterface 22 | public interface VoidOperation 23 | { 24 | /** 25 | * Execute an arbitrary operation 26 | */ 27 | void execute(); 28 | } 29 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/copier/registering/RegisteringObjectCopier.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.copier.registering; 17 | 18 | public interface RegisteringObjectCopier extends AutoCloseable 19 | { 20 | T copy(T t); 21 | } 22 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/copier/registering/RegisteringWorkingCopyAndOriginal.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.copier.registering; 17 | 18 | @FunctionalInterface 19 | public interface RegisteringWorkingCopyAndOriginal 20 | { 21 | boolean register(final Object workingCopy, final Object objectToStore); 22 | } 23 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/copier/version/NotIncrementingEntityVersionIncrementer.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.copier.version; 17 | 18 | public class NotIncrementingEntityVersionIncrementer implements EntityVersionIncrementer 19 | { 20 | @Override 21 | public void incrementVersion(final T objectToSetVersionIn) 22 | { 23 | // Do nothing because no version generation is needed 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/copier/version/VersionManagerProvider.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.copier.version; 17 | 18 | public interface VersionManagerProvider 19 | { 20 | VersionManager ensureVersionManager(final Class domainClass); 21 | } 22 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/copier/version/incrementer/IntegerVersionIncrementer.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.copier.version.incrementer; 17 | 18 | public class IntegerVersionIncrementer 19 | implements VersionIncrementer 20 | { 21 | @Override 22 | public Integer increment(final Integer original) 23 | { 24 | if(original == null || original == Integer.MAX_VALUE) 25 | { 26 | return 1; 27 | } 28 | return original + 1; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/copier/version/incrementer/LongVersionIncrementer.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.copier.version.incrementer; 17 | 18 | public class LongVersionIncrementer implements VersionIncrementer 19 | { 20 | 21 | @Override 22 | public Long increment(final Long original) 23 | { 24 | if(original == null || original == Long.MAX_VALUE) 25 | { 26 | return 1L; 27 | } 28 | return original + 1; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/copier/version/incrementer/UUIDVersionIncrementer.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.copier.version.incrementer; 17 | 18 | import java.util.UUID; 19 | 20 | 21 | @SuppressWarnings("java:S119") 22 | public class UUIDVersionIncrementer implements VersionIncrementer 23 | { 24 | @Override 25 | public UUID increment(final UUID original) 26 | { 27 | return UUID.randomUUID(); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/copier/working/ChangedObjectCollector.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.copier.working; 17 | 18 | @FunctionalInterface 19 | public interface ChangedObjectCollector 20 | { 21 | void collectChangedObject(Object changedObject); 22 | } 23 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/copier/working/MergedTargetsCollector.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.copier.working; 17 | 18 | public interface MergedTargetsCollector 19 | { 20 | void collectMergedTarget(Object mergedTarget); 21 | 22 | boolean isAlreadyMerged(Object possiblyMergedTarget); 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/copier/working/WorkingCopierCreator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.copier.working; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.EclipseStoreStorage; 19 | 20 | 21 | @FunctionalInterface 22 | public interface WorkingCopierCreator 23 | { 24 | WorkingCopier createWorkingCopier( 25 | final Class domainType, 26 | final EclipseStoreStorage storage); 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/id/EntityGetterById.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.id; 17 | 18 | import java.util.Optional; 19 | 20 | 21 | @SuppressWarnings("java:S119") 22 | public interface EntityGetterById 23 | { 24 | Optional findById(ID id); 25 | } 26 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/id/IdGetter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.id; 17 | 18 | public interface IdGetter 19 | { 20 | ID getId(T objectToSetIdIn); 21 | } 22 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/support/id/IdManagerProvider.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.repository.support.id; 17 | 18 | @SuppressWarnings("java:S119") 19 | public interface IdManagerProvider 20 | { 21 | IdManager ensureIdManager(final Class domainClass); 22 | } 23 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/transactions/EclipseStoreNoTransactionObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.transactions; 17 | 18 | public class EclipseStoreNoTransactionObject implements EclipseStoreTransaction 19 | { 20 | @Override 21 | public void addAction(final EclipseStoreTransactionAction action) 22 | { 23 | action.execute(); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/transactions/EclipseStoreTransaction.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.transactions; 17 | 18 | public interface EclipseStoreTransaction 19 | { 20 | void addAction(EclipseStoreTransactionAction action); 21 | } 22 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/transactions/EclipseStoreTransactionAction.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.transactions; 17 | 18 | @FunctionalInterface 19 | public interface EclipseStoreTransactionAction 20 | { 21 | void execute(); 22 | } 23 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/resources/META-INF/spring.factories: -------------------------------------------------------------------------------- 1 | org.springframework.data.repository.core.support.RepositoryFactorySupport=software.xdev.spring.data.eclipse.store.repository.support.EclipseStoreRepositoryFactory 2 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/resources/META-INF/spring.handlers: -------------------------------------------------------------------------------- 1 | http\://www.springframework.org/schema/data/eclipse-store=software.xdev.spring.data.eclipse.store.repository.config.EclipseStoreRepositoryConfigNamespaceHandler 2 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/resources/META-INF/spring/aot.factories: -------------------------------------------------------------------------------- 1 | org.springframework.aot.hint.RuntimeHintsRegistrar=\ 2 | software.xdev.spring.data.eclipse.store.aot.EclipseStoreRuntimeHints 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | org.eclipse.store.auto-create-default-storage=false 2 | org.eclipse.store.auto-create-default-foundation=false 3 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | /** 17 | * The repositories of these tests are seperated from each other. That means that e.g. the 18 | * {@link software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types.TypesTest} can't access the 19 | * {@link software.xdev.spring.data.eclipse.store.integration.isolated.tests.keywords.MinimalRepository}. 20 | */ 21 | package software.xdev.spring.data.eclipse.store.integration.isolated; 22 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/constraints/ConstraintsRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.constraints; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface ConstraintsRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/data/migration/with/migrater/PersistedEntity.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.data.migration.with.migrater; 17 | 18 | import jakarta.persistence.GeneratedValue; 19 | import jakarta.persistence.GenerationType; 20 | import jakarta.persistence.Id; 21 | 22 | 23 | public class PersistedEntity 24 | { 25 | @Id 26 | @GeneratedValue(strategy = GenerationType.AUTO) 27 | private int id; 28 | } 29 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/data/migration/with/migrater/PersistedEntityRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.data.migration.with.migrater; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface PersistedEntityRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/data/migration/with/multiple/scripts/PersistedEntity.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.data.migration.with.multiple.scripts; 17 | 18 | import jakarta.persistence.GeneratedValue; 19 | import jakarta.persistence.GenerationType; 20 | import jakarta.persistence.Id; 21 | 22 | 23 | public class PersistedEntity 24 | { 25 | @Id 26 | @GeneratedValue(strategy = GenerationType.AUTO) 27 | private int id; 28 | } 29 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/data/migration/with/multiple/scripts/PersistedEntityRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.data.migration.with.multiple.scripts; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface PersistedEntityRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/data/migration/with/script/PersistedEntity.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.data.migration.with.script; 17 | 18 | import jakarta.persistence.GeneratedValue; 19 | import jakarta.persistence.GenerationType; 20 | import jakarta.persistence.Id; 21 | 22 | 23 | public class PersistedEntity 24 | { 25 | @Id 26 | @GeneratedValue(strategy = GenerationType.AUTO) 27 | private int id; 28 | } 29 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/data/migration/with/script/PersistedEntityRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.data.migration.with.script; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface PersistedEntityRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/deletion/ReferencedDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.deletion; 17 | 18 | public class ReferencedDaoObject 19 | { 20 | private String value; 21 | 22 | public ReferencedDaoObject(final String value) 23 | { 24 | this.value = value; 25 | } 26 | 27 | public String getValue() 28 | { 29 | return this.value; 30 | } 31 | 32 | public void setValue(final String value) 33 | { 34 | this.value = value; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/deletion/ReferencedRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.deletion; 17 | 18 | import org.springframework.data.repository.ListCrudRepository; 19 | 20 | 21 | public interface ReferencedRepository extends ListCrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/deletion/ReferencingRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.deletion; 17 | 18 | import org.springframework.data.repository.ListCrudRepository; 19 | 20 | 21 | public interface ReferencingRepository extends ListCrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/duplicated/repositories/DaoFirstRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.duplicated.repositories; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface DaoFirstRepository 22 | extends CrudRepository 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/duplicated/repositories/DaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.duplicated.repositories; 17 | 18 | public class DaoObject 19 | { 20 | private String name; 21 | 22 | public DaoObject(final String name) 23 | { 24 | this.name = name; 25 | } 26 | 27 | public String getName() 28 | { 29 | return this.name; 30 | } 31 | 32 | public void setName(final String name) 33 | { 34 | this.name = name; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/duplicated/repositories/DaoSecondRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.duplicated.repositories; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface DaoSecondRepository 22 | extends CrudRepository 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/id/custom/model/CompositeKeyAsRecord.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.id.custom.model; 17 | 18 | public record CompositeKeyAsRecord(int keyPart1, int keyPart2) 19 | { 20 | } 21 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/id/custom/model/CustomerWithIdCompositeKeyAsRecordRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.id.custom.model; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface CustomerWithIdCompositeKeyAsRecordRepository 22 | extends EclipseStoreRepository 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/id/custom/model/CustomerWithIdCompositeKeyEmbeddedIdRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.id.custom.model; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface CustomerWithIdCompositeKeyEmbeddedIdRepository 22 | extends EclipseStoreRepository 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/id/custom/model/CustomerWithIdCompositeKeyRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.id.custom.model; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface CustomerWithIdCompositeKeyRepository 22 | extends EclipseStoreRepository 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/id/custom/model/CustomerWithIdLocalDateRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.id.custom.model; 17 | 18 | import java.time.LocalDate; 19 | 20 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 21 | 22 | 23 | public interface CustomerWithIdLocalDateRepository 24 | extends EclipseStoreRepository 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/id/model/CustomerWithIdIntRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.id.model; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface CustomerWithIdIntRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/id/model/CustomerWithIdIntegerNoAutoGenerateRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.id.model; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface CustomerWithIdIntegerNoAutoGenerateRepository 22 | extends CrudRepository 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/id/model/CustomerWithIdIntegerRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.id.model; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface CustomerWithIdIntegerRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/id/model/CustomerWithIdLongRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.id.model; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface CustomerWithIdLongRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/id/model/CustomerWithIdStringNoAutoGenerateRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.id.model; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface CustomerWithIdStringNoAutoGenerateRepository 22 | extends CrudRepository 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/id/model/CustomerWithIdStringRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.id.model; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface CustomerWithIdStringRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/id/model/CustomerWithIdUuidRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.id.model; 17 | 18 | import java.util.UUID; 19 | 20 | import org.springframework.data.repository.ListCrudRepository; 21 | 22 | 23 | public interface CustomerWithIdUuidRepository extends ListCrudRepository 24 | { 25 | } 26 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/id/model/CustomerWithPurchaseRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.id.model; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface CustomerWithPurchaseRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/immutables/CustomerWithFinalChildRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.immutables; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | import org.springframework.data.repository.PagingAndSortingRepository; 20 | 21 | 22 | public interface CustomerWithFinalChildRepository 23 | extends CrudRepository, PagingAndSortingRepository 24 | { 25 | } 26 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/immutables/CustomerWithFinalRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.immutables; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | import org.springframework.data.repository.PagingAndSortingRepository; 20 | 21 | 22 | public interface CustomerWithFinalRepository 23 | extends CrudRepository, PagingAndSortingRepository 24 | { 25 | } 26 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/keywords/MinimalRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.keywords; 17 | 18 | import org.springframework.data.repository.Repository; 19 | 20 | 21 | public interface MinimalRepository extends Repository 22 | { 23 | MinimalDaoObject save(MinimalDaoObject entity); 24 | 25 | boolean existsByValue(String lastName); 26 | } 27 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/lazy/CompositeKeyAsRecord.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.lazy; 17 | 18 | public record CompositeKeyAsRecord(int keyPart1, int keyPart2) 19 | { 20 | } 21 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/lazy/ObjectWithLazy.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.lazy; 17 | 18 | import org.eclipse.serializer.reference.Lazy; 19 | 20 | 21 | public class ObjectWithLazy 22 | { 23 | private Lazy lazy; 24 | 25 | public Lazy getLazy() 26 | { 27 | return this.lazy; 28 | } 29 | 30 | public void setLazy(final Lazy lazy) 31 | { 32 | this.lazy = lazy; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/lazy/ObjectWithLazyHashMapRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.lazy; 17 | 18 | import org.springframework.data.repository.ListCrudRepository; 19 | 20 | 21 | public interface ObjectWithLazyHashMapRepository extends ListCrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/lazy/ObjectWithLazyHashSetRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.lazy; 17 | 18 | import org.springframework.data.repository.ListCrudRepository; 19 | 20 | 21 | public interface ObjectWithLazyHashSetRepository extends ListCrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/lazy/ObjectWithLazyListRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.lazy; 17 | 18 | import org.springframework.data.repository.ListCrudRepository; 19 | 20 | 21 | public interface ObjectWithLazyListRepository extends ListCrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/lazy/ObjectWithLazyRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.lazy; 17 | 18 | import org.springframework.data.repository.ListCrudRepository; 19 | 20 | 21 | public interface ObjectWithLazyRepository extends ListCrudRepository, Integer> 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/lazy/ObjectWithLazySimpleObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.lazy; 17 | 18 | public class ObjectWithLazySimpleObject 19 | { 20 | private SimpleObject lazySimpleObject; 21 | 22 | public SimpleObject getLazySimpleObject() 23 | { 24 | return this.lazySimpleObject; 25 | } 26 | 27 | public void setLazySimpleObject(final SimpleObject lazySimpleObject) 28 | { 29 | this.lazySimpleObject = lazySimpleObject; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/lazy/ObjectWithLazySimpleObjectRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.lazy; 17 | 18 | import org.springframework.data.repository.ListCrudRepository; 19 | 20 | 21 | public interface ObjectWithLazySimpleObjectRepository extends ListCrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/lazy/SimpleEntityWithComplexIdLazyRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.lazy; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.lazy.LazyEclipseStoreRepository; 19 | 20 | 21 | public interface SimpleEntityWithComplexIdLazyRepository 22 | extends LazyEclipseStoreRepository 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/lazy/SimpleEntityWithIdLazyRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.lazy; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.lazy.LazyEclipseStoreRepository; 19 | 20 | 21 | public interface SimpleEntityWithIdLazyRepository extends LazyEclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/lazy/SimpleEntityWithIdLazyWrappedRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.lazy; 17 | 18 | import org.eclipse.serializer.reference.Lazy; 19 | import org.springframework.data.repository.ListCrudRepository; 20 | 21 | 22 | public interface SimpleEntityWithIdLazyWrappedRepository extends ListCrudRepository, Long> 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/lazy/SimpleObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.lazy; 17 | 18 | public record SimpleObject(String value) 19 | { 20 | } 21 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/migration/UserRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.migration; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface UserRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/query/by/example/UserRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.query.by.example; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface UserRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/query/by/string/CustomerWithChildRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.query.by.string; 17 | 18 | import java.util.Optional; 19 | 20 | import org.springframework.data.repository.CrudRepository; 21 | 22 | 23 | public interface CustomerWithChildRepository extends CrudRepository 24 | { 25 | Optional findByChild(Child child); 26 | } 27 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/real/life/examples/model/ArticleGroup.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.real.life.examples.model; 17 | 18 | public class ArticleGroup 19 | { 20 | private final String name; 21 | 22 | public ArticleGroup(final String name) 23 | { 24 | this.name = name; 25 | } 26 | 27 | public String getName() 28 | { 29 | return this.name; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/real/life/examples/model/InvoiceRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.real.life.examples.model; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface InvoiceRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/real/life/examples/model/PositionRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.real.life.examples.model; 17 | 18 | import org.springframework.data.repository.ListCrudRepository; 19 | 20 | 21 | public interface PositionRepository extends ListCrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/simple/model/CustomerAsRecordRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model; 17 | 18 | import java.util.Optional; 19 | 20 | import org.springframework.data.repository.CrudRepository; 21 | 22 | 23 | public interface CustomerAsRecordRepository extends CrudRepository 24 | { 25 | Optional findByFirstName(String firstName); 26 | } 27 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/simple/model/CustomerNotCrudRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model; 17 | 18 | import java.util.List; 19 | 20 | import org.springframework.data.repository.Repository; 21 | 22 | 23 | public interface CustomerNotCrudRepository extends Repository 24 | { 25 | List findAll(); 26 | 27 | CustomerNotCrud save(CustomerNotCrud customer); 28 | } 29 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/simple/model/OwnerRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.simple.model; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface OwnerRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/BigDecimalDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import java.math.BigDecimal; 19 | 20 | 21 | public class BigDecimalDaoObject extends ComplexObject 22 | { 23 | public BigDecimalDaoObject(final Integer id, final BigDecimal value) 24 | { 25 | super(id, value); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/BigDecimalRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface BigDecimalRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/BigIntegerDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import java.math.BigInteger; 19 | 20 | 21 | public class BigIntegerDaoObject extends ComplexObject 22 | { 23 | public BigIntegerDaoObject(final Integer id, final BigInteger value) 24 | { 25 | super(id, value); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/BigIntegerRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface BigIntegerRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/CalendarDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import java.util.Calendar; 19 | 20 | 21 | public class CalendarDaoObject extends ComplexObject 22 | { 23 | public CalendarDaoObject(final Integer id, final Calendar value) 24 | { 25 | super(id, value); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/CalendarRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface CalendarRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/DateDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import java.util.Date; 19 | 20 | 21 | public class DateDaoObject extends ComplexObject 22 | { 23 | public DateDaoObject(final Integer id, final Date value) 24 | { 25 | super(id, value); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/DateRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface DateRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/EnumMapDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import java.util.EnumMap; 19 | 20 | 21 | public class EnumMapDaoObject extends ComplexObject> 22 | { 23 | public enum Album 24 | { 25 | RUMOURS, 26 | TUSK 27 | } 28 | public EnumMapDaoObject(final Integer id, final EnumMap value) 29 | { 30 | super(id, value); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/EnumMapRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface EnumMapRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/EnumSetDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import java.util.EnumSet; 19 | 20 | 21 | public class EnumSetDaoObject extends ComplexObject> 22 | { 23 | public enum Album 24 | { 25 | RUMOURS, 26 | TUSK 27 | } 28 | 29 | public EnumSetDaoObject(final Integer id, final EnumSet value) 30 | { 31 | super(id, value); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/EnumSetRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface EnumSetRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/LazyRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface LazyRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/ListDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import java.util.List; 19 | 20 | 21 | public class ListDaoObject extends ComplexObject> 22 | { 23 | public ListDaoObject(final Integer id, final List value) 24 | { 25 | super(id, value); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/ListRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface ListRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/LocalDateDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import java.time.LocalDate; 19 | 20 | 21 | public class LocalDateDaoObject extends ComplexObject 22 | { 23 | public LocalDateDaoObject(final Integer id, final LocalDate value) 24 | { 25 | super(id, value); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/LocalDateRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface LocalDateRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/LocalDateTimeDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import java.time.LocalDateTime; 19 | 20 | 21 | public class LocalDateTimeDaoObject extends ComplexObject 22 | { 23 | public LocalDateTimeDaoObject(final Integer id, final LocalDateTime value) 24 | { 25 | super(id, value); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/LocalDateTimeRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface LocalDateTimeRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/LocalTimeDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import java.time.LocalTime; 19 | 20 | 21 | public class LocalTimeDaoObject extends ComplexObject 22 | { 23 | public LocalTimeDaoObject(final Integer id, final LocalTime value) 24 | { 25 | super(id, value); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/LocalTimeRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface LocalTimeRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/MapDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import java.util.Map; 19 | 20 | 21 | public class MapDaoObject extends ComplexObject> 22 | { 23 | public MapDaoObject(final Integer id, final Map value) 24 | { 25 | super(id, value); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/MapRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface MapRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/OptionalDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import java.util.Optional; 19 | 20 | 21 | public class OptionalDaoObject extends ComplexObject> 22 | { 23 | public OptionalDaoObject(final Integer id, final Optional value) 24 | { 25 | super(id, value); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/OptionalRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface OptionalRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/SetDaoObject.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import java.util.Set; 19 | 20 | 21 | public class SetDaoObject extends ComplexObject> 22 | { 23 | public SetDaoObject(final Integer id, final Set value) 24 | { 25 | super(id, value); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/special/types/SetRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.special.types; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface SetRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/transactions/Account.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.transactions; 17 | 18 | import java.math.BigDecimal; 19 | 20 | 21 | public interface Account 22 | { 23 | int getId(); 24 | 25 | BigDecimal getBalance(); 26 | 27 | void setBalance(final BigDecimal balance); 28 | } 29 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/transactions/AccountNoVersionRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.transactions; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface AccountNoVersionRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/transactions/AccountWithVersionRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.transactions; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface AccountWithVersionRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/transactions/CounterRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.transactions; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface CounterRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/version/VersionedEntity.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.version; 17 | 18 | public interface VersionedEntity 19 | { 20 | T getVersion(); 21 | 22 | void setName(String name); 23 | 24 | String getName(); 25 | } 26 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/version/VersionedEntityWithIdRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.version; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface VersionedEntityWithIdRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/version/VersionedEntityWithIntegerAndVersionedChildRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.version; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface VersionedEntityWithIntegerAndVersionedChildRepository 22 | extends EclipseStoreRepository 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/version/VersionedEntityWithIntegerRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.version; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface VersionedEntityWithIntegerRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/version/VersionedEntityWithLongRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.version; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface VersionedEntityWithLongRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/version/VersionedEntityWithPrimitiveIntegerRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.version; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface VersionedEntityWithPrimitiveIntegerRepository 22 | extends EclipseStoreRepository 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/version/VersionedEntityWithPrimitiveLongRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.version; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface VersionedEntityWithPrimitiveLongRepository 22 | extends EclipseStoreRepository 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/version/VersionedEntityWithStringRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.version; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface VersionedEntityWithStringRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/isolated/tests/version/VersionedEntityWithUuidRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.isolated.tests.version; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface VersionedEntityWithUuidRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/package-info.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | /** 17 | * These tests SHARE their repositories. That's not ideal and should be changed in the future. 18 | */ 19 | package software.xdev.spring.data.eclipse.store.integration.shared; 20 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/ChildCustomerRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.shared.repositories; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface ChildCustomerRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/CustomerRepositoryWithHashSet.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.shared.repositories; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface CustomerRepositoryWithHashSet extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/CustomerRepositoryWithNonFinalHashSet.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.shared.repositories; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface CustomerRepositoryWithNonFinalHashSet extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/NodeRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.shared.repositories; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface NodeRepository extends CrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/ParentCustomerRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.shared.repositories; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | import org.springframework.data.repository.PagingAndSortingRepository; 20 | 21 | 22 | public interface ParentCustomerRepository 23 | extends CrudRepository, PagingAndSortingRepository 24 | { 25 | } 26 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/SubCustomer.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.shared.repositories; 17 | 18 | public class SubCustomer extends Customer 19 | { 20 | public SubCustomer(final String firstName, final String lastName) 21 | { 22 | super(firstName, lastName); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/SubCustomerRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.shared.repositories; 17 | 18 | import org.springframework.data.repository.CrudRepository; 19 | 20 | 21 | public interface SubCustomerRepository extends CrudRepository 22 | { 23 | SubCustomer findByFirstName(String firstName); 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/interfaces/CustomerEclipseStoreCrudRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.shared.repositories.interfaces; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreCrudRepository; 19 | 20 | 21 | public interface CustomerEclipseStoreCrudRepository extends EclipseStoreCrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/interfaces/CustomerEclipseStoreListCrudRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.shared.repositories.interfaces; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreListCrudRepository; 19 | 20 | 21 | public interface CustomerEclipseStoreListCrudRepository extends EclipseStoreListCrudRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/interfaces/CustomerEclipseStoreListPagingAndSortingRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.shared.repositories.interfaces; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreListPagingAndSortingRepository; 19 | 20 | 21 | public interface CustomerEclipseStoreListPagingAndSortingRepository extends 22 | EclipseStoreListPagingAndSortingRepository 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/interfaces/CustomerEclipseStorePagingAndSortingRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.shared.repositories.interfaces; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStorePagingAndSortingRepository; 19 | 20 | 21 | public interface CustomerEclipseStorePagingAndSortingRepository 22 | extends EclipseStorePagingAndSortingRepository 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/java/software/xdev/spring/data/eclipse/store/integration/shared/repositories/interfaces/CustomerEclipseStoreRepository.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright © 2024 XDEV Software (https://xdev.software) 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 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | package software.xdev.spring.data.eclipse.store.integration.shared.repositories.interfaces; 17 | 18 | import software.xdev.spring.data.eclipse.store.repository.interfaces.EclipseStoreRepository; 19 | 20 | 21 | public interface CustomerEclipseStoreRepository extends EclipseStoreRepository 22 | { 23 | } 24 | -------------------------------------------------------------------------------- /spring-data-eclipse-store/src/test/resources/log4j2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | --------------------------------------------------------------------------------