EventMapper.java
package io.featureprobe.api.mapper;
import io.featureprobe.api.base.util.JsonMapper;
import io.featureprobe.api.dao.entity.DebugEvent;
import io.featureprobe.api.dao.entity.Event;
import io.featureprobe.api.dto.DebugEventResponse;
import io.featureprobe.api.dto.EventResponse;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers;
import java.util.Map;
@Mapper
public interface EventMapper {
EventMapper INSTANCE = Mappers.getMapper(EventMapper.class);
EventResponse entityToResponse(Event event);
@Mapping(target = "userDetail", expression = "java(toMap(debugEvent.getUserDetail()))")
DebugEventResponse debugEventToResponse(DebugEvent debugEvent);
default Map toMap(String userDetail) {
return JsonMapper.toObject(userDetail, Map.class);
}
}