Package tigase.http.upload.db
Class JDBCFileUploadRepository
- java.lang.Object
-
- tigase.http.upload.db.JDBCFileUploadRepository
-
- All Implemented Interfaces:
tigase.db.DataSourceAware<tigase.db.DataRepository>
,tigase.db.util.RepositoryVersionAware
,FileUploadRepository<tigase.db.DataRepository>
public class JDBCFileUploadRepository extends java.lang.Object implements FileUploadRepository<tigase.db.DataRepository>, tigase.db.util.RepositoryVersionAware
Created by andrzej on 07.08.2016.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface tigase.http.upload.db.FileUploadRepository
FileUploadRepository.Slot
-
-
Constructor Summary
Constructors Constructor Description JDBCFileUploadRepository()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FileUploadRepository.Slot
allocateSlot(tigase.xmpp.jid.BareJID sender, java.lang.String slotId, java.lang.String filename, long filesize, java.lang.String contentType)
Create slot in database for file upload.FileUploadRepository.Slot
getSlot(tigase.xmpp.jid.BareJID sender, java.lang.String slotId)
Retrieves information from database about slotlong
getUsedSpaceForDomain(java.lang.String domain)
Calculates space used by files upload by all users from domainlong
getUsedSpaceForUser(tigase.xmpp.jid.BareJID user)
Calculates space used by files upload by the userjava.util.List<FileUploadRepository.Slot>
listExpiredSlots(tigase.xmpp.jid.BareJID domain, java.time.LocalDateTime before, int limit)
Retrieves list of ids of expired slotsjava.util.List<FileUploadRepository.Slot>
querySlots(java.lang.String domain, java.lang.String afterId, int limit)
Retrieves list of slots after slot with provided id.java.util.List<FileUploadRepository.Slot>
querySlots(tigase.xmpp.jid.BareJID user, java.lang.String afterId, int limit)
Retrieves list of slots after slot with provided id.void
removeExpiredSlots(tigase.xmpp.jid.BareJID domain, java.time.LocalDateTime before, int limit)
Removes metadata of expired slotsvoid
removeSlot(tigase.xmpp.jid.BareJID user, java.lang.String slotId)
Removes slot with idvoid
setDataSource(tigase.db.DataRepository dataSource)
void
updateSlot(tigase.xmpp.jid.BareJID userJid, java.lang.String slotId)
Looks for slot for particular sender with exact slot id, file name and file size-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface tigase.http.upload.db.FileUploadRepository
allocateSlot
-
-
-
-
Method Detail
-
allocateSlot
public FileUploadRepository.Slot allocateSlot(tigase.xmpp.jid.BareJID sender, java.lang.String slotId, java.lang.String filename, long filesize, java.lang.String contentType) throws tigase.db.TigaseDBException
Description copied from interface:FileUploadRepository
Create slot in database for file upload.- Specified by:
allocateSlot
in interfaceFileUploadRepository<tigase.db.DataRepository>
- Throws:
tigase.db.TigaseDBException
-
updateSlot
public void updateSlot(tigase.xmpp.jid.BareJID userJid, java.lang.String slotId) throws tigase.db.TigaseDBException
Description copied from interface:FileUploadRepository
Looks for slot for particular sender with exact slot id, file name and file size- Specified by:
updateSlot
in interfaceFileUploadRepository<tigase.db.DataRepository>
- Throws:
tigase.db.TigaseDBException
-
getSlot
public FileUploadRepository.Slot getSlot(tigase.xmpp.jid.BareJID sender, java.lang.String slotId) throws tigase.db.TigaseDBException
Description copied from interface:FileUploadRepository
Retrieves information from database about slot- Specified by:
getSlot
in interfaceFileUploadRepository<tigase.db.DataRepository>
- Throws:
tigase.db.TigaseDBException
-
listExpiredSlots
public java.util.List<FileUploadRepository.Slot> listExpiredSlots(tigase.xmpp.jid.BareJID domain, java.time.LocalDateTime before, int limit) throws tigase.db.TigaseDBException
Description copied from interface:FileUploadRepository
Retrieves list of ids of expired slots- Specified by:
listExpiredSlots
in interfaceFileUploadRepository<tigase.db.DataRepository>
- Throws:
tigase.db.TigaseDBException
-
removeExpiredSlots
public void removeExpiredSlots(tigase.xmpp.jid.BareJID domain, java.time.LocalDateTime before, int limit) throws tigase.db.TigaseDBException
Description copied from interface:FileUploadRepository
Removes metadata of expired slots- Specified by:
removeExpiredSlots
in interfaceFileUploadRepository<tigase.db.DataRepository>
- Throws:
tigase.db.TigaseDBException
-
getUsedSpaceForDomain
public long getUsedSpaceForDomain(java.lang.String domain) throws tigase.db.TigaseDBException
Description copied from interface:FileUploadRepository
Calculates space used by files upload by all users from domain- Specified by:
getUsedSpaceForDomain
in interfaceFileUploadRepository<tigase.db.DataRepository>
- Returns:
- Throws:
tigase.db.TigaseDBException
-
getUsedSpaceForUser
public long getUsedSpaceForUser(tigase.xmpp.jid.BareJID user) throws tigase.db.TigaseDBException
Description copied from interface:FileUploadRepository
Calculates space used by files upload by the user- Specified by:
getUsedSpaceForUser
in interfaceFileUploadRepository<tigase.db.DataRepository>
- Returns:
- Throws:
tigase.db.TigaseDBException
-
querySlots
public java.util.List<FileUploadRepository.Slot> querySlots(java.lang.String domain, java.lang.String afterId, int limit) throws tigase.db.TigaseDBException
Description copied from interface:FileUploadRepository
Retrieves list of slots after slot with provided id. If id is null, first slots will be returned.- Specified by:
querySlots
in interfaceFileUploadRepository<tigase.db.DataRepository>
- Returns:
- Throws:
tigase.db.TigaseDBException
-
querySlots
public java.util.List<FileUploadRepository.Slot> querySlots(tigase.xmpp.jid.BareJID user, java.lang.String afterId, int limit) throws tigase.db.TigaseDBException
Description copied from interface:FileUploadRepository
Retrieves list of slots after slot with provided id. If id is null, first slots will be returned.- Specified by:
querySlots
in interfaceFileUploadRepository<tigase.db.DataRepository>
- Returns:
- Throws:
tigase.db.TigaseDBException
-
removeSlot
public void removeSlot(tigase.xmpp.jid.BareJID user, java.lang.String slotId) throws tigase.db.TigaseDBException
Description copied from interface:FileUploadRepository
Removes slot with id- Specified by:
removeSlot
in interfaceFileUploadRepository<tigase.db.DataRepository>
- Throws:
tigase.db.TigaseDBException
-
setDataSource
public void setDataSource(tigase.db.DataRepository dataSource)
- Specified by:
setDataSource
in interfacetigase.db.DataSourceAware<tigase.db.DataRepository>
-
-