2022-12-09 13:08:07 +01:00
|
|
|
from .AbstractSplittedSecret import AbstractSplittedSecret
|
2022-12-10 22:03:29 +01:00
|
|
|
|
2022-12-09 13:08:07 +01:00
|
|
|
class Cleanup(AbstractSplittedSecret):
|
2022-12-10 22:03:29 +01:00
|
|
|
def __init__(self,cli):
|
|
|
|
self.cli = cli
|
2022-12-09 13:22:57 +01:00
|
|
|
super(Cleanup, self).__init__()
|
2022-12-09 20:10:12 +01:00
|
|
|
|
|
|
|
def getAllFilePaths(self,file_type):
|
2022-12-10 21:20:26 +01:00
|
|
|
all_file_paths = [
|
2022-12-09 20:10:12 +01:00
|
|
|
self.getGroupFilesFolderPath(file_type),
|
|
|
|
self.getUserFilesFolderPath(file_type),
|
|
|
|
self.getAccumulatedFilePath(file_type)
|
|
|
|
]
|
2022-12-10 21:20:26 +01:00
|
|
|
if file_type == AbstractSplittedSecret.TYPE_DECRYPTED:
|
|
|
|
all_file_paths.append(self.getDecryptedMainDataStandartFolder())
|
|
|
|
return all_file_paths
|
2022-12-09 17:32:02 +01:00
|
|
|
|
|
|
|
def deleteAllFilesInFolder(self,folder_path):
|
|
|
|
try:
|
2022-12-10 22:03:29 +01:00
|
|
|
self.cli.executeCommand('rm -r ' + folder_path + '*')
|
2022-12-10 21:20:26 +01:00
|
|
|
except Exception as error:
|
|
|
|
print(error)
|
2022-12-09 17:32:02 +01:00
|
|
|
|
2022-12-10 13:22:09 +01:00
|
|
|
def cleanupFiles(self,file_type):
|
2022-12-09 20:10:12 +01:00
|
|
|
for folder_path in self.getAllFilePaths(file_type):
|
2022-12-09 17:32:02 +01:00
|
|
|
self.deleteAllFilesInFolder(folder_path)
|
2022-12-09 18:16:31 +01:00
|
|
|
|
|
|
|
def cleanupForUser(self,user):
|
2022-12-09 23:43:28 +01:00
|
|
|
try:
|
2022-12-10 22:03:29 +01:00
|
|
|
self.cli.executeCommand('find "' + self.getDataFolderPath(AbstractSplittedSecret.TYPE_ENCRYPTED) + '" -not -name "*' + str(user) +'*" -type f -print | xargs rm -v')
|
2022-12-10 21:20:26 +01:00
|
|
|
except Exception as error:
|
|
|
|
print(error)
|
2022-12-10 13:22:09 +01:00
|
|
|
self.cleanupFiles(AbstractSplittedSecret.TYPE_DECRYPTED)
|
2022-12-09 17:32:02 +01:00
|
|
|
|
2022-12-09 13:08:07 +01:00
|
|
|
def deleteAll(self):
|
2022-12-10 13:22:09 +01:00
|
|
|
self.cleanupFiles(AbstractSplittedSecret.TYPE_ENCRYPTED)
|
|
|
|
self.cleanupFiles(AbstractSplittedSecret.TYPE_DECRYPTED)
|