package com.dji.sample.media.service;

import com.dji.sample.map.model.param.MediaDirQueryParam;
import com.dji.sample.media.model.MediaDirDTO;
import com.dji.sample.media.model.MediaDirEntity;
import com.dji.sample.media.model.MediaFileDTO;
import com.dji.sdk.cloudapi.media.MediaUploadCallbackRequest;
import com.dji.sdk.common.PaginationData;

import java.net.URL;
import java.util.List;

/**
 * @author hqjiang
 * @version 1.0
 * @date 2024/7/2
 */
public interface IMediaDirService {

    PaginationData<MediaDirDTO> getMediaDirsPaginationByWorkspaceId(String workspaceId, MediaDirQueryParam param, long page, long pageSize);

    /**
     * 通过目录名称查找目录
     * @param workspaceId
     * @param dirName
     * param  parentId
     * @return
     */
    MediaDirDTO getMediaDirByName(String workspaceId, String dirName, Integer parentId);

    MediaDirDTO getMediaDirById(String workspaceId, String dirId);

    /**
     * 创建文件夹
     * @param mediaDirDTO
     * param  parentId
     * @return
     */
    Integer createDir(MediaDirDTO mediaDirDTO);

    /**
     * 创建文件夹
     * @param dirEntity
     * param  parentId
     * @return
     */
    MediaDirDTO createDir(MediaDirEntity dirEntity);

    void deleteDir(String dirId);

}
