package com.css.simulation.resource.scheduler.infra.feign.algorithm;

import api.common.pojo.common.ResponseBodyVO;
import com.css.simulation.resource.scheduler.infra.feign.algorithm.fallback.VideoFeignClientFallBack;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;

@FeignClient(
        contextId = "video",
        value = "simulation-resource-video",
        path = "/simulation/resource/video",
        fallback = VideoFeignClientFallBack.class
)
public interface VideoFeignClient {

    @GetMapping(value = "/generate")
    ResponseBodyVO<String> generateVideo(
            @RequestParam("generateVideoKey") String generateVideoKey,
            @RequestParam("nodeName") String nodeName,
            @RequestParam("projectId") String projectId,
            @RequestParam("projectType") String projectType,
            @RequestParam("maxSimulationTime") String maxSimulationTime,
            @RequestParam("taskId") String taskId
    );
}
