Package org.red5.server.persistence
Class FilePersistence
- java.lang.Object
-
- org.red5.server.persistence.RamPersistence
-
- org.red5.server.persistence.FilePersistence
-
- All Implemented Interfaces:
org.red5.server.api.persistence.IPersistenceStore
public class FilePersistence extends org.red5.server.persistence.RamPersistence
Simple file-based persistence for objects. Lowers memory usage if used instead of RAM memory storage.- Author:
- The Red5 Project, Joachim Bauch ([email protected])
-
-
Constructor Summary
Constructors Constructor Description FilePersistence(org.red5.server.api.scope.IScope scope)
Create file persistence object for given scopeFilePersistence(org.springframework.core.io.support.ResourcePatternResolver resolver)
Create file persistence object from given resource pattern resolver
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
checkRemoveEmptyDirectories(String base)
Remove empty dirsprotected String
getObjectPath(String id, String name)
int
getPersistenceInterval()
org.red5.server.api.persistence.IPersistable
load(String name)
boolean
load(org.red5.server.api.persistence.IPersistable object)
void
notifyClose()
boolean
remove(String name)
boolean
remove(org.red5.server.api.persistence.IPersistable object)
boolean
save(org.red5.server.api.persistence.IPersistable object)
protected boolean
saveObject(org.red5.server.api.persistence.IPersistable object)
Save persistable objectvoid
setCheckForEmptyDirectories(boolean checkForEmptyDirectories)
void
setExtension(String extension)
Setter for extension.void
setPath(String path)
Setter for file path.void
setPersistenceInterval(int persistenceInterval)
-
-
-
Constructor Detail
-
FilePersistence
public FilePersistence(org.springframework.core.io.support.ResourcePatternResolver resolver)
Create file persistence object from given resource pattern resolver- Parameters:
resolver
- Resource pattern resolver and loader
-
FilePersistence
public FilePersistence(org.red5.server.api.scope.IScope scope)
Create file persistence object for given scope- Parameters:
scope
- Scope
-
-
Method Detail
-
setPath
public void setPath(String path)
Setter for file path.- Parameters:
path
- New path
-
setExtension
public void setExtension(String extension)
Setter for extension.- Parameters:
extension
- New extension.
-
setCheckForEmptyDirectories
public void setCheckForEmptyDirectories(boolean checkForEmptyDirectories)
- Parameters:
checkForEmptyDirectories
- the checkForEmptyDirectories to set
-
getPersistenceInterval
public int getPersistenceInterval()
- Returns:
- the persistenceInterval
-
setPersistenceInterval
public void setPersistenceInterval(int persistenceInterval)
- Parameters:
persistenceInterval
- the persistenceInterval to set
-
getObjectPath
protected String getObjectPath(String id, String name)
- Overrides:
getObjectPath
in classorg.red5.server.persistence.RamPersistence
-
load
public org.red5.server.api.persistence.IPersistable load(String name)
- Specified by:
load
in interfaceorg.red5.server.api.persistence.IPersistenceStore
- Overrides:
load
in classorg.red5.server.persistence.RamPersistence
-
load
public boolean load(org.red5.server.api.persistence.IPersistable object)
- Specified by:
load
in interfaceorg.red5.server.api.persistence.IPersistenceStore
- Overrides:
load
in classorg.red5.server.persistence.RamPersistence
-
saveObject
protected boolean saveObject(org.red5.server.api.persistence.IPersistable object)
Save persistable object- Parameters:
object
- Persistable object- Returns:
true
on success,false
otherwise
-
save
public boolean save(org.red5.server.api.persistence.IPersistable object)
- Specified by:
save
in interfaceorg.red5.server.api.persistence.IPersistenceStore
- Overrides:
save
in classorg.red5.server.persistence.RamPersistence
-
checkRemoveEmptyDirectories
protected void checkRemoveEmptyDirectories(String base)
Remove empty dirs- Parameters:
base
- Base directory
-
remove
public boolean remove(String name)
- Specified by:
remove
in interfaceorg.red5.server.api.persistence.IPersistenceStore
- Overrides:
remove
in classorg.red5.server.persistence.RamPersistence
-
remove
public boolean remove(org.red5.server.api.persistence.IPersistable object)
- Specified by:
remove
in interfaceorg.red5.server.api.persistence.IPersistenceStore
- Overrides:
remove
in classorg.red5.server.persistence.RamPersistence
-
notifyClose
public void notifyClose()
- Specified by:
notifyClose
in interfaceorg.red5.server.api.persistence.IPersistenceStore
- Overrides:
notifyClose
in classorg.red5.server.persistence.RamPersistence
-
-