@@ -806,67 +806,67 @@ class MongoDBFileService @Inject() (
806806 def removeFile (id : UUID , host : String , apiKey : Option [String ], user : Option [User ]){
807807 get(id) match {
808808 case Some (file) => {
809- if (! file.isIntermediate){
810- val fileDatasets = datasets.findByFileIdDirectlyContain(file.id)
811- for (fileDataset <- fileDatasets){
812- datasets.removeFile(fileDataset.id, id)
813- if (! file.xmlMetadata.isEmpty){
814- datasets.index(fileDataset.id)
815- }
809+ if (! file.isIntermediate){
810+ val fileDatasets = datasets.findByFileIdDirectlyContain(file.id)
811+ for (fileDataset <- fileDatasets){
812+ datasets.removeFile(fileDataset.id, id)
813+ if (! file.xmlMetadata.isEmpty){
814+ datasets.index(fileDataset.id)
815+ }
816816
817- if (! file.thumbnail_id.isEmpty && ! fileDataset.thumbnail_id.isEmpty){
818- if (file.thumbnail_id.get.equals(fileDataset.thumbnail_id.get)){
819- datasets.newThumbnail(fileDataset.id)
820- collections.get(fileDataset.collections).found.foreach(collection => {
821- if (! collection.thumbnail_id.isEmpty){
822- if (collection.thumbnail_id.get.equals(fileDataset.thumbnail_id.get)){
823- collections.createThumbnail(collection.id)
817+ if (! file.thumbnail_id.isEmpty && ! fileDataset.thumbnail_id.isEmpty){
818+ if (file.thumbnail_id.get.equals(fileDataset.thumbnail_id.get)){
819+ datasets.newThumbnail(fileDataset.id)
820+ collections.get(fileDataset.collections).found.foreach(collection => {
821+ if (! collection.thumbnail_id.isEmpty){
822+ if (collection.thumbnail_id.get.equals(fileDataset.thumbnail_id.get)){
823+ collections.createThumbnail(collection.id)
824+ }
824825 }
825- }
826- })
827- }
826+ })
827+ }
828+ }
829+
828830 }
829-
830- }
831831
832- val fileFolders = folders.findByFileId(file.id)
833- for (fileFolder <- fileFolders) {
834- folders.removeFile(fileFolder.id, file.id)
835- }
836- for (section <- sections.findByFileId(file.id)){
837- sections.removeSection(section)
838- }
839- for (comment <- comments.findCommentsByFileId(id)){
840- comments.removeComment(comment)
841- }
842- for (texture <- threeD.findTexturesByFileId(file.id)){
843- ThreeDTextureDAO .removeById(new ObjectId (texture.id.stringify))
844- }
845- for (follower <- file.followers) {
846- userService.unfollowFile(follower, id)
832+ val fileFolders = folders.findByFileId(file.id)
833+ for (fileFolder <- fileFolders) {
834+ folders.removeFile(fileFolder.id, file.id)
835+ }
836+ for (section <- sections.findByFileId(file.id)){
837+ sections.removeSection(section)
838+ }
839+ for (comment <- comments.findCommentsByFileId(id)){
840+ comments.removeComment(comment)
841+ }
842+ for (texture <- threeD.findTexturesByFileId(file.id)){
843+ ThreeDTextureDAO .removeById(new ObjectId (texture.id.stringify))
844+ }
845+ for (follower <- file.followers) {
846+ userService.unfollowFile(follower, id)
847+ }
847848 }
848- }
849849
850- // delete the actual file
851- if (isLastPointingToLoader(file.loader, file.loader_id)) {
852- for (preview <- previews.findByFileId(file.id)){
853- previews.removePreview(preview)
850+ // delete the actual file
851+ if (isLastPointingToLoader(file.loader, file.loader_id)) {
852+ for (preview <- previews.findByFileId(file.id)){
853+ previews.removePreview(preview)
854+ }
855+ if (! file.thumbnail_id.isEmpty)
856+ thumbnails.remove(UUID (file.thumbnail_id.get))
857+ ByteStorageService .delete(file.loader, file.loader_id, FileDAO .COLLECTION )
854858 }
855- if (! file.thumbnail_id.isEmpty)
856- thumbnails.remove(UUID (file.thumbnail_id.get))
857- ByteStorageService .delete(file.loader, file.loader_id, FileDAO .COLLECTION )
858- }
859859
860- import UUIDConversions ._
861- FileDAO .removeById(file.id)
862- appConfig.incrementCount(' files , - 1 )
863- appConfig.incrementCount(' bytes , - file.length)
864- current.plugin[ElasticsearchPlugin ].foreach {
865- _.delete(id.stringify)
866- }
860+ import UUIDConversions ._
861+ FileDAO .removeById(file.id)
862+ appConfig.incrementCount(' files , - 1 )
863+ appConfig.incrementCount(' bytes , - file.length)
864+ current.plugin[ElasticsearchPlugin ].foreach {
865+ _.delete(id.stringify)
866+ }
867867
868- // finally remove metadata - if done before file is deleted, document metadataCounts won't match
869- metadatas.removeMetadataByAttachTo(ResourceRef (ResourceRef .file, id), host, apiKey, user)
868+ // finally remove metadata - if done before file is deleted, document metadataCounts won't match
869+ metadatas.removeMetadataByAttachTo(ResourceRef (ResourceRef .file, id), host, apiKey, user)
870870 }
871871 case None => Logger .debug(" File not found" )
872872 }
0 commit comments