33 lines
1.4 KiB
Java
33 lines
1.4 KiB
Java
package com.wb.domainserver.util.communicate;
|
|
|
|
import com.fasterxml.jackson.core.type.TypeReference;
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
import com.wb.domainserver.exception.WnbtRestException;
|
|
import lombok.AccessLevel;
|
|
import lombok.NoArgsConstructor;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.util.LinkedMultiValueMap;
|
|
import org.springframework.util.MultiValueMap;
|
|
|
|
import java.util.Map;
|
|
|
|
@NoArgsConstructor(access = AccessLevel.PRIVATE)
|
|
@Slf4j
|
|
public class MultiValueMapConverter {
|
|
public static MultiValueMap<String, Object> convert(ObjectMapper objectMapper, Object dto) {
|
|
try {
|
|
MultiValueMap<String, Object> params = new LinkedMultiValueMap<>();
|
|
Map<String, Object> map = objectMapper.convertValue(dto, new TypeReference<Map<String, Object>>() {});
|
|
params.setAll(map);
|
|
|
|
return params;
|
|
} catch (WnbtRestException wre) {
|
|
log.error("Url Parameter 변환중 오류가 발생했습니다. requestDto={}", dto, wre);
|
|
throw new WnbtRestException("Url Parameter 변환중 오류가 발생했습니다.");
|
|
} catch (Exception e) {
|
|
log.error("Url Parameter 변환중 오류가 발생했습니다. requestDto={}", dto, e);
|
|
throw new IllegalStateException("Url Parameter 변환중 오류가 발생했습니다.");
|
|
}
|
|
}
|
|
}
|