Class EclipseStoreClientConfiguration

java.lang.Object
software.xdev.spring.data.eclipse.store.repository.config.EclipseStoreClientConfiguration
All Implemented Interfaces:
EclipseStoreStorageFoundationProvider
Direct Known Subclasses:
DefaultEclipseStoreClientConfiguration

@Configuration(proxyBeanMethods=false) @ComponentScan({"org.eclipse.store.integrations.spring.boot.types","software.xdev.spring.data.eclipse.store.importer"}) public abstract class EclipseStoreClientConfiguration extends Object implements EclipseStoreStorageFoundationProvider
Defines the configuration of a single EclipseStore-Storage.

Configuration is possible through default EclipseStore-Behavior.
See EclipseStore documentation

It's also possible to inherit this configuration and override createEmbeddedStorageFoundation()

Also creates a singleton reference to a EclipseStoreStorage. This is to only create one EclipseStore-Storage for one configuration.

  • Field Details

    • defaultEclipseStoreProperties

      protected final org.eclipse.store.integrations.spring.boot.types.configuration.EclipseStoreProperties defaultEclipseStoreProperties
    • defaultEclipseStoreProvider

      protected final org.eclipse.store.integrations.spring.boot.types.factories.EmbeddedStorageFoundationFactory defaultEclipseStoreProvider
    • classLoaderProvider

      protected final org.eclipse.serializer.reflect.ClassLoaderProvider classLoaderProvider
    • storageInstance

      protected EclipseStoreStorage storageInstance
    • transactionManager

      protected EclipseStoreTransactionManager transactionManager
    • contextCloseShutdownStorageEnabled

      @Value("${spring-data-eclipse-store.context-close-shutdown-storage.enabled:true}") protected boolean contextCloseShutdownStorageEnabled
    • contextCloseShutdownStorageOnlyWhenDevTools

      @Value("${spring-data-eclipse-store.context-close-shutdown-storage.only-when-dev-tools:true}") protected boolean contextCloseShutdownStorageOnlyWhenDevTools
    • springDevtoolsRestartEnabled

      @Value("${spring.devtools.restart.enabled:true}") protected boolean springDevtoolsRestartEnabled
      Upstream value from Spring Boot DevTools.
      See Also:
      • org.springframework.boot.devtools.autoconfigure.DevToolsProperties.Restart
  • Constructor Details

    • EclipseStoreClientConfiguration

      @Autowired protected EclipseStoreClientConfiguration(org.eclipse.store.integrations.spring.boot.types.configuration.EclipseStoreProperties defaultEclipseStoreProperties, org.eclipse.store.integrations.spring.boot.types.factories.EmbeddedStorageFoundationFactory defaultEclipseStoreProvider, org.eclipse.serializer.reflect.ClassLoaderProvider classLoaderProvider)
  • Method Details

    • getEclipseStoreProperties

      public org.eclipse.store.integrations.spring.boot.types.configuration.EclipseStoreProperties getEclipseStoreProperties()
    • getStoreProvider

      public org.eclipse.store.integrations.spring.boot.types.factories.EmbeddedStorageFoundationFactory getStoreProvider()
    • getClassLoaderProvider

      public org.eclipse.serializer.reflect.ClassLoaderProvider getClassLoaderProvider()
    • createEmbeddedStorageFoundation

      public org.eclipse.store.storage.embedded.types.EmbeddedStorageFoundation<?> createEmbeddedStorageFoundation()
      Creates a EmbeddedStorageFoundation out of the two other provided functions getStoreProvider() and getEclipseStoreProperties().
      Specified by:
      createEmbeddedStorageFoundation in interface EclipseStoreStorageFoundationProvider
    • getStorageInstance

      public EclipseStoreStorage getStorageInstance()
    • transactionManager

      public org.springframework.transaction.PlatformTransactionManager transactionManager(org.springframework.beans.factory.ObjectProvider<org.springframework.boot.autoconfigure.transaction.TransactionManagerCustomizers> transactionManagerCustomizers)
    • getTransactionManagerInstance

      public EclipseStoreTransactionManager getTransactionManagerInstance()
    • shouldShutdownStorageOnContextClosed

      protected boolean shouldShutdownStorageOnContextClosed()
    • shutdownStorageOnContextClosed

      @EventListener public void shutdownStorageOnContextClosed(org.springframework.context.event.ContextClosedEvent event)
      Invoked when the application is "shut down" - or parts of it during a DevTools restart.

      Shuts down the storage when it's present and shouldShutdownStorageOnContextClosed() is true

      This is required for the DevTools restart as it otherwise crashes with StorageExceptionInitialization: Active storage for ... already exists

    • getValidator

      @Bean public jakarta.validation.Validator getValidator()