Package com.suncode.pwfl.archive
Interface ArchiveStorageService
public interface ArchiveStorageService
Umożliwia zarządzanie strukturą archiwum.
- Author:
- Paweł Rosolak 28-03-2013
-
Method Summary
Modifier and TypeMethodDescriptionZapisuje urządzenie w bazie danychaddDirectory
(Directory directory) Zapisuje katalog w bazie danychvoid
createDevice
(Device device) Zapisuje urządzenie w bazie danychvoid
createDirectory
(Directory directory) Zapisuje katalog w bazie danychvoid
deleteDevice
(Long id) Usuwa urządzenievoid
deleteDevice
(String deviceName) Usuwa urządzenievoid
deleteDirectory
(Long directoryId) Usuwa katalog po idvoid
deleteDirectory
(String directoryName) Usuwa katalogfindDirectoriesByCriteria
(org.hibernate.criterion.DetachedCriteria dc) Wyszukuje katalogivoid
forceDeleteDeviceByName
(String deviceName) Usuwa urządzenie, jeżeli zawiera katalogi to również są usuwane.getAllDevices
(String... joins) Pobiera listę wszystkich urządzeńgetAllDirectories
(String... joins) Pobiera listę wszystkich katalogów archiwumZwraca mapę z ilością wolnego miejsca w katalogach, gdzie kluczem jest id katalogu, a wartością ilość wolnego miejsca w katalogu.getChildDirectories
(Directory directory) Pobiera podkatalogiPobiera urządzenie po nazwiegetDeviceById
(Long deviceId, String... joins) Pobiera urządzenie po idgetDeviceForDocumentClass
(Long documentClassId, String... joins) Pobiera urządzenia dla klasy dokumentówgetDirectoriesForDevice
(Long deviceId, String... joins) Zwraca katalogi należące do podanego urządzeniagetDirectory
(Long id, String... joins) Pobiera katalog po idgetDirectory
(String name, String... joins) Pobiera katalog po nazwiegetDirectoryFreeSpaceFromDB
(Directory directory) Zwraca ilość wolnego miejsca w katalogu.getDirectoryFreeSpaceOnDisc
(Directory directory) Zwraca ilość wolnego miejsca w katalogu.getDirectoryPath
(Directory directory) Pobiera pełną ścieżkę do katalogugetDirectoryUsedSpaceFromDB
(Directory directory) Zwraca ilość zajętego miejsca w katalogu.getDirectoryUsedSpaceOnDisc
(Directory directory) Zwraca ilość zajętego miejsca w katalogu.getSubDirectories
(Long directoryId, String... joins) Pobiera wszystkie podkatalogi katalogu o podanym idboolean
isRootDirectory
(Directory directory) Sprawdza czy katalog jest katalogiem nadrzędnymresolveDirectoryPath
(Directory directory, WfFile wfFile) Pobiera pełną ścieżkę do katalogu którego nazwa tworzona jest dynamicznie na podstawie daty utworzenia plikuvoid
updateDevice
(Device device) Modyfikuje urządzenievoid
updateDevice
(Long id, Device device) Modyfikuje urządzenievoid
updateDirectory
(Directory directory) Modyfikuje katalogvoid
updateDirectory
(Long id, Directory directory) Modyfikuje katalog
-
Method Details
-
createDevice
Zapisuje urządzenie w bazie danych- Parameters:
device
- Definicja urządzenia- Throws:
DeviceNotExistOnDiskException
- Jeżeli na dysku nie znaleziono ścieżki do katalogu urządzenia
-
addDevice
Zapisuje urządzenie w bazie danych- Parameters:
device
- Definicja urządzenia- Throws:
DeviceNotExistOnDiskException
- Jeżeli na dysku nie znaleziono ścieżki do katalogu urządzenia
-
createDirectory
void createDirectory(Directory directory) throws DeviceNotFoundException, NotEnoughSpaceOnDeviceException Zapisuje katalog w bazie danych- Parameters:
directory
- Definicja katalogu- Throws:
DeviceNotFoundException
- Jeżeli nie znaleziono urządzenia na którym ma zostać utworzony katalogNotEnoughSpaceOnDeviceException
- Jeżeli rozmiar katalogu jest większy nie dostępna na urządzeniu przestrzeń
-
addDirectory
Long addDirectory(Directory directory) throws DeviceNotFoundException, NotEnoughSpaceOnDeviceException Zapisuje katalog w bazie danych- Parameters:
directory
- Definicja katalogu- Throws:
DeviceNotFoundException
- Jeżeli nie znaleziono urządzenia na którym ma zostać utworzony katalogNotEnoughSpaceOnDeviceException
- Jeżeli rozmiar katalogu jest większy nie dostępna na urządzeniu przestrzeń
-
deleteDevice
Usuwa urządzenie- Parameters:
deviceName
- Nazwa urządzenia- Throws:
RemovingDeviceWithDirException
- Jeżeli urządzenie zawiera katalogi
-
deleteDevice
Usuwa urządzenie- Parameters:
id
- Id urządzenia- Throws:
RemovingDeviceWithDirException
- Jeżeli urządzenie zawiera katalogi
-
deleteDirectory
void deleteDirectory(String directoryName) throws RemovingRootDirectoryException, RemovingDirWithDocClassException Usuwa katalog- Parameters:
directoryName
- Nazwa katalogu- Throws:
RemovingRootDirectoryException
- Jeżeli próbujemy usunąć katalog będący katalogiem nadrzędnymRemovingDirWithDocClassException
- Jeżeli próbujemy usunąć katalog do którego są przypisane klasy dokumentów
-
getDevice
Pobiera urządzenie po nazwie- Parameters:
name
- Nazwa urządzeniajoins
- Określa, które elementy mamy dołączyć do obiektu urządzenia.- Returns:
- Zwraca obiekt urządzenia
-
getDirectoryPath
Pobiera pełną ścieżkę do katalogu- Parameters:
directory
- Katalog- Returns:
- Zwaraca ścieżkę do katalogu
-
resolveDirectoryPath
Pobiera pełną ścieżkę do katalogu którego nazwa tworzona jest dynamicznie na podstawie daty utworzenia pliku- Parameters:
directory
- KatalogwfFile
- plik- Returns:
- Zwaraca ścieżkę do katalogu
-
isRootDirectory
Sprawdza czy katalog jest katalogiem nadrzędnym- Parameters:
directory
- Katalog- Returns:
- true jeżeli katalog jest nadrzędny
-
getChildDirectories
Pobiera podkatalogi- Parameters:
directory
- Katalog- Returns:
- Listę katalogów podrzędnych
-
forceDeleteDeviceByName
Usuwa urządzenie, jeżeli zawiera katalogi to również są usuwane. Jeżeli katalogi zawierają Klasy dokumentów to też są usuwane- Parameters:
deviceName
- Nazwa urządzenia
-
getDirectory
Pobiera katalog po nazwie- Parameters:
name
- Nazwa katalogujoins
- Określa, które elementy mamy dołączyć do katalogu.- Returns:
- Zwraca obiekt katalogu
-
getAllDevices
Pobiera listę wszystkich urządzeń- Returns:
- Lista urządzeń
-
getDeviceById
Pobiera urządzenie po id- Parameters:
deviceId
- Id urządzeniajoins
- Określa, które elementy mamy dołączyć do katalogu.- Returns:
- Urządzenie
-
getAllDirectories
Pobiera listę wszystkich katalogów archiwum- Returns:
- Lista katalogów
-
updateDevice
Modyfikuje urządzenie- Parameters:
device
- Obiekt urządzenia
-
updateDevice
Modyfikuje urządzenie- Parameters:
id
- Id urządzeniadevice
- Obiekt urządzenia- Throws:
DeviceNotExistOnDiskException
-
updateDirectory
Modyfikuje katalog- Parameters:
directory
- Obiekt katalogu
-
updateDirectory
Modyfikuje katalog- Parameters:
id
- Id katalogudirectory
- Obiekt katalogu
-
findDirectoriesByCriteria
Wyszukuje katalogi- Parameters:
dc
- Kryteria wyszukiwania- Returns:
- Lista znalezionych katalogów
-
getDirectory
Pobiera katalog po id- Parameters:
id
- Id katalogujoins
- Określa, które elementy mamy dołączyć do katalogu.- Returns:
-
getSubDirectories
Pobiera wszystkie podkatalogi katalogu o podanym id- Parameters:
directoryId
- Id katalogujoins
- Określa, które elementy mamy dołączyć do katalogu.- Returns:
- Lista katalogów
-
deleteDirectory
void deleteDirectory(Long directoryId) throws RemovingRootDirectoryException, RemovingDirWithDocClassException Usuwa katalog po id- Parameters:
directoryId
- Id katalogu- Throws:
RemovingRootDirectoryException
RemovingDirWithDocClassException
-
getDeviceForDocumentClass
Pobiera urządzenia dla klasy dokumentów- Parameters:
documentClassId
- Id klasy dokumentów- Returns:
- Obiekt urządzenia
-
getDirectoryUsedSpaceFromDB
Zwraca ilość zajętego miejsca w katalogu. Obliczenie odbywa się na podstawie przechowywanych rozmiarów plików w bazie. Uwzględniane są również podkatalogi. Wynik może nieco różnić się od rzeczywistego zajętego rozmiaru na dysku, gdyż ktoś może ręcznie usunąć plik z dysku, a w bazie on pozostanie.- Parameters:
directory
- Katalog- Returns:
- Ilość zajętego miejsca przez katalog w MB.
-
getDirectoryFreeSpaceFromDB
Zwraca ilość wolnego miejsca w katalogu. Obliczenie odbywa się na podstawie przechowywanych rozmiarów plików w bazie. Uwzględniane są również podkatalogi. Wynik może nieco różnić się od rzeczywistego zajętego rozmiaru na dysku, gdyż ktoś może ręcznie usunąć plik z dysku, a w bazie on pozostanie.- Parameters:
directory
- Katalog- Returns:
- Ilość wolnego miejsca w katalogu w MB.
-
getDirectoryUsedSpaceOnDisc
Zwraca ilość zajętego miejsca w katalogu. Obliczenie odbywa się na podstawie rozmiarów rzeczywistych plików na dysku.- Parameters:
directory
- Katalog- Returns:
- Ilość zajętego miejsca przez katalog w MB.
-
getDirectoryFreeSpaceOnDisc
Zwraca ilość wolnego miejsca w katalogu. Obliczenie odbywa się na podstawie rozmiarów rzeczywistych plików na dysku.- Parameters:
directory
- Katalog- Returns:
- Ilość wolnego miejsca w katalogu w MB.
-
getAllDirectoriesFreeSpaceFromDB
Zwraca mapę z ilością wolnego miejsca w katalogach, gdzie kluczem jest id katalogu, a wartością ilość wolnego miejsca w katalogu. Obliczenie odbywa się na podstawie przechowywanych rozmiarów plików w bazie. Uwzględniane są również podkatalogi. Wynik może nieco różnić się od rzeczywistego zajętego rozmiaru na dysku, gdyż ktoś może ręcznie usunąć plik z dysku, a w bazie on pozostanie.- Returns:
- Ilość wolnego miejsca we wszystkich katalogach w systemie w MB.
-
getDirectoriesForDevice
Zwraca katalogi należące do podanego urządzenia- Parameters:
deviceId
- Id urządzeniajoins
- Określa, które elementy mamy dołączyć do katalogu- Returns:
- lista katalogów
-