trait
      
      
        FileService extends AnyRef
      
      
      
          
        
      
      
        
        
        
        
              Abstract Value Members
              - 
      
      
      
      
        abstract 
        def
      
      
        addFollower(id: UUID, userId: UUID): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        addMetadata(fileId: UUID, metadata: JsValue): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        addTags(id: UUID, userIdStr: Option[String], eid: Option[String], tags: List[String]): List[Tag]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        addUserMetadata(id: UUID, json: String): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        addVersusMetadata(id: UUID, json: JsValue): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        addXMLMetadata(id: UUID, json: String): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        autoArchiveCandidateFiles(): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        bytes(): Long
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        comment(id: UUID, comment: Comment): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        count(): Long
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        dumpAllFileMetadata(): List[String]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        findByTag(tag: String, start: String, limit: Integer, reverse: Boolean, user: Option[User]): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        findByTag(tag: String, user: Option[User]): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        findIntermediates(): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        findMetadataChangedFiles(): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        first(): Option[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        get(ids: List[UUID]): DBResult[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        get(id: UUID): Option[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        getBytes(id: UUID): Option[(InputStream, String, String, Long)]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        getIterator(space: Option[String], since: Option[String], until: Option[String]): Iterator[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        getJsonArray(list: List[JsObject]): JsArray
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        getMetadata(id: UUID): Map[String, Any]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        getTags(user: Option[User]): Map[String, Long]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        getTechnicalMetadataJSON(id: UUID): String
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        getUserMetadata(id: UUID): Map[String, Any]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        getUserMetadataJSON(id: UUID): String
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        getVersusMetadata(id: UUID): Option[JsValue]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        getXMLMetadataJSON(id: UUID): String
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        incrementDownloads(id: UUID, user: Option[User], dateOnly: Boolean = false): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        incrementMetadataCount(id: UUID, count: Long): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        incrementViews(id: UUID, user: Option[User]): (Int, Date)
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        index(id: UUID, idx: Option[String] = None): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        indexAll(idx: Option[String] = None): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        insert(file: File): Option[String]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        isInDataset(file: File, dataset: Dataset): Boolean
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        isInTrash(id: UUID): Boolean
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        latest(i: Int): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        latest(): Option[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        listFiles(): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        listFilesAfter(date: String, limit: Int): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        listFilesBefore(date: String, limit: Int): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        listFilesNotIntermediate(): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        listOutsideDataset(dataset_id: UUID): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        listUserFilesAfter(date: String, limit: Int, email: String): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        listUserFilesBefore(date: String, limit: Int, email: String): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        modifyRDFOfMetadataChangedFiles(): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        modifyRDFUserMetadata(id: UUID, mappingNumber: String = "1"): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        removeAllTags(id: UUID): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        removeFile(id: UUID, host: String, apiKey: Option[String], user: Option[User]): Boolean
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        removeFollower(id: UUID, userId: UUID): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        removeOldIntermediates(apiKey: Option[String], user: Option[User]): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        removeTags(id: UUID, tags: List[String]): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        removeTemporaries(): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        renameFile(id: UUID, newName: String): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        save(file: File): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        save(inputStream: InputStream, filename: String, contentLength: Long, contentType: Option[String], author: MiniUser, showPreviews: String = "DatasetLevel"): Option[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        searchAllMetadataFormulateQuery(requestedMetadataQuery: Any): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        searchMetadataFormulateQuery(requestedMap: LinkedHashMap[String, Any], root: String): com.mongodb.casbah.Imports.MongoDBObject
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        searchUserMetadataFormulateQuery(requestedMetadataQuery: Any): List[File]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        setContentType(id: UUID, newType: String): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        setIntermediate(id: UUID): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        setStatus(id: UUID, status: FileStatus): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        setUserMetadataWasModified(id: UUID, wasModified: Boolean): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        statusCount(): Map[FileStatus, Long]
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        submitArchivalOperation(file: File, id: UUID, host: String, parameters: JsObject, apiKey: Option[String], user: Option[User]): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        updateAuthorFullName(userId: UUID, fullName: String): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        updateDescription(fileId: UUID, description: String): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        updateLicense(id: UUID, licenseType: String, rightsHolder: String, licenseText: String, licenseUrl: String, allowDownload: String): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        updateMetadata(fileId: UUID, metadata: JsValue, extractor_id: String): Unit
      
      
      
     - 
      
      
      
      
        abstract 
        def
      
      
        updateThumbnail(fileId: UUID, thumbnailId: UUID): Unit
      
      
      
     
             
        
              Concrete Value Members
              - 
      
      
      
      
        final 
        def
      
      
        !=(arg0: AnyRef): Boolean
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        !=(arg0: Any): Boolean
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        ##(): Int
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        ==(arg0: AnyRef): Boolean
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        ==(arg0: Any): Boolean
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        asInstanceOf[T0]: T0
      
      
      
     - 
      
      
      
      
        
        def
      
      
        clone(): AnyRef
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        eq(arg0: AnyRef): Boolean
      
      
      
     - 
      
      
      
      
        
        def
      
      
        equals(arg0: Any): Boolean
      
      
      
     - 
      
      
      
      
        
        def
      
      
        finalize(): Unit
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        getClass(): Class[_]
      
      
      
     - 
      
      
      
      
        
        def
      
      
        hashCode(): Int
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        isInstanceOf[T0]: Boolean
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        ne(arg0: AnyRef): Boolean
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        notify(): Unit
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        notifyAll(): Unit
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        synchronized[T0](arg0: ⇒ T0): T0
      
      
      
     - 
      
      
      
      
        
        def
      
      
        toString(): String
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        wait(): Unit
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        wait(arg0: Long, arg1: Int): Unit
      
      
      
     - 
      
      
      
      
        final 
        def
      
      
        wait(arg0: Long): Unit
      
      
      
     
             
        
        
         
        
        
              
Inherited from AnyRef
            
              
Inherited from Any
            
        
         
        
       
      
      
      
     
      
Generic file service to store blobs of files and metadata about them.