package cd.casic.ci.process.process.converter;

import cd.casic.ci.process.dto.resp.aflManager.AflCrashesInfoResp;
import cd.casic.ci.process.dto.resp.aflManager.AflInfoResp;
import cd.casic.ci.process.dto.resp.aflManager.AflPlotInfoResp;
import cd.casic.ci.process.process.dataObject.aflManager.AflCrashesInfo;
import cd.casic.ci.process.process.dataObject.aflManager.AflInfo;
import cd.casic.ci.process.process.dataObject.aflManager.AflPlotInfo;
import org.mapstruct.Mapper;
import org.mapstruct.NullValuePropertyMappingStrategy;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * @author HopeLi
 * @version v1.0
 * @ClassName PipelineConverter
 * @Date: 2025/5/13 14:39
 * @Description:
 */
@Mapper(componentModel = "spring",nullValuePropertyMappingStrategy = NullValuePropertyMappingStrategy.IGNORE)
public interface AflManagerConverter {
    AflManagerConverter INSTANCE = Mappers.getMapper(AflManagerConverter.class);

    AflInfoResp toAflInfoResp(AflInfo aflInfo);

    List<AflInfoResp> toAflInfoRespList(List<AflInfo> aflInfos);

    List<AflCrashesInfoResp> toAflCrashesInfoRespList(List<AflCrashesInfo> aflCrashesInfos);

    AflPlotInfoResp toAflPlotInfoResp(AflPlotInfo aflPlotInfo);

    List<AflPlotInfoResp> toAflPlotInfoRespList(List<AflPlotInfo> aflPlotInfos);
}
