Interface StorageFoundation<F extends StorageFoundation<?>>
- Type Parameters:
- F- the "self-type" of the- StorageFoundationimplementation.
- All Known Subinterfaces:
- EmbeddedStorageFoundation<F>
- All Known Implementing Classes:
- EmbeddedStorageFoundation.Default,- StorageFoundation.Default
public interface StorageFoundation<F extends StorageFoundation<?>>
StorageSystem instance,
 i.e. a functional database handling logic.
 
 Additionally to the services of a mere factory type, a foundation type also keeps references to all parts
 after a  StorageSystem instance has been created. This is useful if some internal logic parts shall be
 accessed while the  StorageSystem logic is already running. Therefore, this type can best be thought of
 as a  foundation on which the running database handling logic stands.
 
 All  set~ methods are simple setter methods without any additional logic worth mentioning.
 All  set~ methods return this to allow for easy method chaining to improve readability.
 All  get~ methods return a logic part instance, if present or otherwise creates and sets one beforehand
 via a default creation logic.
- 
Nested Class SummaryNested Classes Modifier and Type Interface Description static classStorageFoundation.Default<F extends StorageFoundation.Default<?>>
- 
Method Summary
- 
Method Details- 
getConfigurationStorageConfiguration getConfiguration()Returns the currently setStorageConfigurationinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
- Throws:
- MissingFoundationPartException- if a returnable instance is required but cannot be created by default.
 
- 
getOperationControllerCreatorStorageOperationController.Creator getOperationControllerCreator()Returns the currently setStorageOperationController.Creatorinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getInitialDataFileNumberProviderStorageInitialDataFileNumberProvider getInitialDataFileNumberProvider()Returns the currently setStorageInitialDataFileNumberProviderinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getRequestAcceptorCreatorStorageRequestAcceptor.Creator getRequestAcceptorCreator()Returns the currently setStorageRequestAcceptor.Creatorinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getTaskBrokerCreatorStorageTaskBroker.Creator getTaskBrokerCreator()Returns the currently setStorageTaskBroker.Creatorinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getDataChunkValidatorProviderStorageDataChunkValidator.Provider getDataChunkValidatorProvider()Returns the currently setStorageDataChunkValidator.Providerinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getDataChunkValidatorProvider2StorageDataChunkValidator.Provider2 getDataChunkValidatorProvider2()Returns the currently setStorageDataChunkValidator.Provider2instance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getChannelCreatorStorageChannelsCreator getChannelCreator()Returns the currently setStorageChannelsCreatorinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getThreadNameProviderStorageThreadNameProvider getThreadNameProvider()Returns the currently setStorageThreadNameProviderinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getChannelThreadProviderStorageChannelThreadProvider getChannelThreadProvider()Returns the currently setStorageChannelThreadProviderinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getBackupThreadProviderStorageBackupThreadProvider getBackupThreadProvider()Returns the currently setStorageBackupThreadProviderinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getLockFileManagerThreadProviderStorageLockFileManagerThreadProvider getLockFileManagerThreadProvider()Returns the currently setStorageLockFileManagerThreadProviderinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getThreadProviderStorageThreadProvider getThreadProvider()Returns the currently setStorageThreadProviderinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getRequestTaskCreatorStorageRequestTaskCreator getRequestTaskCreator()Returns the currently setStorageRequestTaskCreatorinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getTypeDictionaryStorageTypeDictionary getTypeDictionary()Returns the currently setStorageTypeDictionaryinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getRootTypeIdProviderStorageRootTypeIdProvider getRootTypeIdProvider()Returns the currently setStorageRootTypeIdProviderinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getTimestampProviderStorageTimestampProvider getTimestampProvider()Returns the currently setStorageTimestampProviderinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getObjectIdRangeEvaluatorStorageObjectIdRangeEvaluator getObjectIdRangeEvaluator()Returns the currently setStorageObjectIdRangeEvaluatorinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getWriterProviderStorageFileWriter.Provider getWriterProvider()Returns the currently setStorageFileWriter.Providerinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getGCZombieOidHandlerStorageGCZombieOidHandler getGCZombieOidHandler()Returns the currently setStorageGCZombieOidHandlerinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getRootOidSelectorProviderStorageRootOidSelector.Provider getRootOidSelectorProvider()Returns the currently setStorageRootOidSelector.Providerinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getOidMarkQueueCreatorStorageObjectIdMarkQueue.Creator getOidMarkQueueCreator()Returns the currently setStorageObjectIdMarkQueue.Creatorinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getEntityMarkMonitorCreatorStorageEntityMarkMonitor.Creator getEntityMarkMonitorCreator()Returns the currently setStorageEntityMarkMonitor.Creatorinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getDataFileValidatorCreatorStorageDataFileValidator.Creator getDataFileValidatorCreator()Returns the currently setStorageDataFileValidator.Creatorinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getEntityDataIteratorProviderBinaryEntityRawDataIterator.Provider getEntityDataIteratorProvider()Returns the currently setBinaryEntityRawDataIterator.Providerinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getEntityDataValidatorCreatorStorageEntityDataValidator.Creator getEntityDataValidatorCreator()Returns the currently setStorageEntityDataValidator.Creatorinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getProcessIdentityProviderProcessIdentityProvider getProcessIdentityProvider()Returns the currently setProcessIdentityProviderinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getLockFileSetupStorageLockFileSetup getLockFileSetup()Returns the currently setStorageLockFileSetupinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getLockFileSetupProviderStorageLockFileSetup.Provider getLockFileSetupProvider()Returns the currently setStorageLockFileSetup.Providerinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getLockFileManagerCreatorStorageLockFileManager.Creator getLockFileManagerCreator()Returns the currently setStorageLockFileManager.Creatorinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getExceptionHandlerStorageExceptionHandler getExceptionHandler()Returns the currently setStorageExceptionHandlerinstance.If no instance is set and the implementation deems an instance of this type mandatory for the successful executon of createStorageSystem(), a suitable instance is created via an internal default creation logic and then set as the current. If the implementation has not sufficient logic and/or data to create a default instance, aMissingFoundationPartExceptionis thrown.- Returns:
- the currently set instance, potentially created on-demand if required.
 
- 
getEventLoggerStorageEventLogger getEventLogger()
- 
writeControllerStorageWriteController writeController()
- 
getWriteControllerStorageWriteController getWriteController()
- 
housekeepingBrokerStorageHousekeepingBroker housekeepingBroker()
- 
getHousekeepingBrokerStorageHousekeepingBroker getHousekeepingBroker()
- 
setConfigurationSets theStorageConfigurationinstance to be used for the assembly.- Parameters:
- configuration- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setOperationControllerCreatorSets theStorageOperationController.Creatorinstance to be used for the assembly.- Parameters:
- operationControllerCreator- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setInitialDataFileNumberProviderF setInitialDataFileNumberProvider(StorageInitialDataFileNumberProvider initDataFileNumberProvider)Sets theStorageInitialDataFileNumberProviderinstance to be used for the assembly.- Parameters:
- initDataFileNumberProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setRequestAcceptorCreatorSets theStorageRequestAcceptor.Creatorinstance to be used for the assembly.- Parameters:
- requestAcceptorCreator- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setTaskBrokerCreatorSets theStorageTaskBroker.Creatorinstance to be used for the assembly.- Parameters:
- taskBrokerCreator- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setDataChunkValidatorProviderSets theStorageDataChunkValidator.Providerinstance to be used for the assembly.- Parameters:
- dataChunkValidatorProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setDataChunkValidatorProvider2Sets theStorageDataChunkValidator.Provider2instance to be used for the assembly.- Parameters:
- dataChunkValidatorProvider2- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setChannelCreatorSets theStorageChannelsCreatorinstance to be used for the assembly.- Parameters:
- channelCreator- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setThreadNameProviderSets theStorageThreadNameProviderinstance to be used for the assembly.- Parameters:
- threadNameProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setChannelThreadProviderSets theStorageChannelThreadProviderinstance to be used for the assembly.- Parameters:
- channelThreadProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setBackupThreadProviderSets theStorageBackupThreadProviderinstance to be used for the assembly.- Parameters:
- backupThreadProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setLockFileManagerThreadProviderF setLockFileManagerThreadProvider(StorageLockFileManagerThreadProvider lockFileManagerThreadProvider)Sets theStorageLockFileManagerThreadProviderinstance to be used for the assembly.- Parameters:
- lockFileManagerThreadProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setThreadProviderSets theStorageThreadProviderinstance to be used for the assembly.- Parameters:
- threadProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setTaskCreatorSets theStorageRequestTaskCreatorinstance to be used for the assembly.- Parameters:
- taskCreator- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setTypeDictionarySets theStorageTypeDictionaryinstance to be used for the assembly.- Parameters:
- typeDictionary- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setRootTypeIdProviderSets theStorageRootTypeIdProviderinstance to be used for the assembly.- Parameters:
- rootTypeIdProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setTimestampProviderSets theStorageTimestampProviderinstance to be used for the assembly.- Parameters:
- timestampProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setObjectIdRangeEvaluatorSets theStorageObjectIdRangeEvaluatorinstance to be used for the assembly.- Parameters:
- objectIdRangeEvaluator- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setWriterProviderSets theStorageFileWriter.Providerinstance to be used for the assembly.- Parameters:
- writerProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setGCZombieOidHandlerSets theStorageGCZombieOidHandlerinstance to be used for the assembly.- Parameters:
- gCZombieOidHandler- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setRootOidSelectorProviderSets theStorageRootOidSelector.Providerinstance to be used for the assembly.- Parameters:
- rootOidSelectorProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setOidMarkQueueCreatorSets theStorageObjectIdMarkQueue.Creatorinstance to be used for the assembly.- Parameters:
- oidMarkQueueCreator- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setEntityMarkMonitorCreatorSets theStorageEntityMarkMonitor.Creatorinstance to be used for the assembly.- Parameters:
- entityMarkMonitorCreator- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setDataFileValidatorCreatorSets theStorageDataFileValidator.Creatorinstance to be used for the assembly.- Parameters:
- dataFileValidatorCreator- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setEntityDataIteratorProviderF setEntityDataIteratorProvider(BinaryEntityRawDataIterator.Provider entityRawDataIteratorProvider)Sets theBinaryEntityRawDataIterator.Providerinstance to be used for the assembly.- Parameters:
- entityRawDataIteratorProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setEntityDataValidatorCreatorSets theStorageEntityDataValidator.Creatorinstance to be used for the assembly.- Parameters:
- entityDataValidatorCreator- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setProcessIdentityProviderSets theProcessIdentityProviderinstance to be used for the assembly.- Parameters:
- processIdentityProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setLockFileSetupSets theStorageLockFileSetupinstance to be used for the assembly.- Parameters:
- lockFileSetup- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setLockFileSetupProviderSets theStorageLockFileSetup.Providerinstance to be used for the assembly.- Parameters:
- lockFileSetupProvider- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setLockFileManagerCreatorSets theStorageLockFileManager.Creatorinstance to be used for the assembly.- Parameters:
- lockFileManagerCreator- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setExceptionHandlerSets theStorageExceptionHandlerinstance to be used for the assembly.- Parameters:
- exceptionHandler- the instance to be used.
- Returns:
- this to allow method chaining.
 
- 
setEventLogger
- 
setWriteController
- 
setHousekeepingBroker
- 
createStorageSystemStorageSystem createStorageSystem()Creates and returns a newStorageSysteminstance by using the current state of all registered logic part instances and by on-demand creating missing ones via a default logic.The returned StorageSysteminstance will NOT yet be started.- Returns:
- a new StorageSysteminstance.
 
 
-