rain
2024-08-21 2db1aa88e8ab53096a936163d686b90d8e056a99
src/main/java/com/dji/sample/media/service/IMediaService.java
@@ -1,9 +1,13 @@
package com.dji.sample.media.service;
import com.dji.sample.component.mqtt.model.CommonTopicReceiver;
import com.dji.sample.common.model.PaginationData;
import com.dji.sample.media.model.FileUploadDTO;
import org.springframework.messaging.MessageHeaders;
import com.dji.sample.media.model.MediaFileEntity;
import com.dji.sample.media.model.MediaJobDTO;
import com.dji.sample.media.model.param.SearchMediaParam;
import com.drew.imaging.ImageProcessingException;
import java.io.IOException;
import java.util.List;
/**
@@ -15,6 +19,7 @@
    /**
     * Check if the file has been uploaded by the fingerprint.
     *
     * @param workspaceId
     * @param fingerprint
     * @return
@@ -23,14 +28,17 @@
    /**
     * Save the basic information of the file to the database.
     *
     * @param workspaceId
     * @param file
     * @return
     */
    Integer saveMediaFile(String workspaceId, FileUploadDTO file);
    Integer saveMediaFile(String workspaceId, FileUploadDTO file) throws ImageProcessingException, IOException;
    /**
     * Query tiny fingerprints about all files in this workspace based on the workspace id.
     *
     * @param workspaceId
     * @return
     */
@@ -38,23 +46,16 @@
    /**
     * Query the fingerprints that already exist in it based on the incoming tiny fingerprints data.
     *
     * @param workspaceId
     * @param tinyFingerprints
     * @return
     */
    List<String> getExistTinyFingerprints(String workspaceId, List<String> tinyFingerprints);
    /**
     * Handle media files messages reported by dock.
     * @param receiver
     * @return
     */
    void handleFileUploadCallBack(CommonTopicReceiver receiver);
    PaginationData<MediaJobDTO> mediaPage(String workspaceId, SearchMediaParam param);
    /**
     * Handles the highest priority message about media uploads.
     * @param receiver
     * @param headers
     */
    void handleHighestPriorityUploadFlightTaskMedia(CommonTopicReceiver receiver, MessageHeaders headers);
    PaginationData<MediaJobDTO> mediaDetail(String jobId, Long page, Long pageSize);
    MediaFileEntity getMediaFieByTid(String timestamp);
}