Class DbFileStorePlugin
java.lang.Object
io.vertigo.datastore.plugins.filestore.db.DbFileStorePlugin
- All Implemented Interfaces:
io.vertigo.core.node.component.Activeable,io.vertigo.core.node.component.CoreComponent,io.vertigo.core.node.component.Plugin,io.vertigo.core.node.definition.DefinitionProvider,io.vertigo.core.node.definition.SimpleDefinitionProvider,FileStorePlugin
public final class DbFileStorePlugin
extends Object
implements FileStorePlugin, io.vertigo.core.node.definition.SimpleDefinitionProvider, io.vertigo.core.node.component.Activeable
Permet de gérer les accès atomiques à n'importe quel type de stockage SQL/
non SQL pour les traitements de FileInfo.
- Author:
- pchretien, npiedeloup, mlaroche
-
Constructor Summary
ConstructorsConstructorDescriptionDbFileStorePlugin(Optional<String> name, String storeDtDefinitionName, String fileInfoClassName, Optional<Integer> purgeDelayMinutesOpt, io.vertigo.commons.transaction.VTransactionManager transactionManager, TaskManager taskManager) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected voidcheckDefinitionStoreBinding(FileInfoDefinition fileInfoDefinition) Check this store is the good one for this definition.protected voidCheck readonly.Save a file.voiddelete(FileInfoURI uri) Delete a file.voidCall by Daemon to purge old filesprotected static EntityStoreManagerGet's the FileInfo Class that are handled by the particular plugingetName()protected static <V> VgetValue(DataObject dto, DataFieldName fieldName, Class<V> valueClass) Retourne une valeur d'un champ à partir du DtObject.List<? extends io.vertigo.core.node.definition.Definition>provideDefinitions(io.vertigo.core.node.definition.DefinitionSpace definitionSpace) read(FileInfoURI uri) Load a file by its URI.protected static voidsetIdValue(DataObject dto, FileInfoURI uri) protected static voidsetValue(DataObject dto, DataFieldName fieldName, Object value) Fixe une valeur d'un champ d'un DtObject.voidstart()voidstop()voidSave a file.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.vertigo.core.node.definition.DefinitionProvider
addDefinitionResourceConfigMethods inherited from interface io.vertigo.datastore.impl.filestore.FileStorePlugin
getNameMethods inherited from interface io.vertigo.core.node.definition.SimpleDefinitionProvider
get
-
Constructor Details
-
DbFileStorePlugin
@Inject public DbFileStorePlugin(Optional<String> name, String storeDtDefinitionName, String fileInfoClassName, Optional<Integer> purgeDelayMinutesOpt, io.vertigo.commons.transaction.VTransactionManager transactionManager, TaskManager taskManager) Constructor.- Parameters:
name- Store namestoreDtDefinitionName- Nom du dt de stockage
-
-
Method Details
-
start
public void start()- Specified by:
startin interfaceio.vertigo.core.node.component.Activeable
-
stop
public void stop()- Specified by:
stopin interfaceio.vertigo.core.node.component.Activeable
-
provideDefinitions
public List<? extends io.vertigo.core.node.definition.Definition> provideDefinitions(io.vertigo.core.node.definition.DefinitionSpace definitionSpace) - Specified by:
provideDefinitionsin interfaceio.vertigo.core.node.definition.SimpleDefinitionProvider
-
deleteOldFiles
public void deleteOldFiles()Call by Daemon to purge old files -
read
Load a file by its URI.- Specified by:
readin interfaceFileStorePlugin- Parameters:
uri- FileURI requested- Returns:
- FileInfo for this uri (null if not found).
-
create
Save a file. Input FileInfo must have an empty URI : insert mode- Specified by:
createin interfaceFileStorePlugin- Parameters:
fileInfo- File to save (creation)- Returns:
- the created FileInfo
-
update
Save a file. Input FileInfo must have an URI : update mode- Specified by:
updatein interfaceFileStorePlugin- Parameters:
fileInfo- File to save (modification)
-
delete
Delete a file.- Specified by:
deletein interfaceFileStorePlugin- Parameters:
uri- File's URI to remove
-
getFileInfoClass
Description copied from interface:FileStorePluginGet's the FileInfo Class that are handled by the particular plugin- Specified by:
getFileInfoClassin interfaceFileStorePlugin- Returns:
-
getName
- Returns:
- This store name
-
getFileInfoClassName
- Returns:
- the fileInfo className
-
checkReadonly
protected void checkReadonly()Check readonly. -
checkDefinitionStoreBinding
Check this store is the good one for this definition.- Parameters:
fileInfoDefinition- Definition du FileInfo
-
getValue
Retourne une valeur d'un champ à partir du DtObject.- Type Parameters:
V- Type de la valeur *- Parameters:
dto- DtObjectfieldName- Nom du champvalueClass- Type du champ- Returns:
- Valeur typé du champ
-
setValue
Fixe une valeur d'un champ d'un DtObject.- Parameters:
dto- DtObjectfieldName- Nom du champsvalue- Valeur
-
setIdValue
- Parameters:
dto- DtObject
-
getEntityStoreManager
- Returns:
- StoreManager
-