es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo agregar un registrador en mapstruct sin que Sonar me grite?

En una interfaz de mapper, he creado un método predeterminado para mapear una cadena a un enum utilizando un conjunto de switch/case.

@Mapper(unmappedTargetPolicy = ReportingPolicy.WARN, componentModel=”spring”, nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS)
public interface ContractMapper {

Logger LOGGER = LogManager.getLogger(ContractMapper.class);

todo el mapeo..

@Named(“getEnum”)
default statusEnum getStatusEnum(String status){

if (status == null){
    return statusEnum.NoStatus;
} else {

    switch (status) {
    case ...

    default:
        LOGGER.warn("estado desconocido {}", status);
        return statusEnum.NoStatus;


    }
}

}

Necesito un registro para cuando falle el mapeo, ¿hay alguna manera de tener uno sin que Sonar me regañe porque no es privado?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Sí, puedes utilizar un objeto Logger para registrar cualquier error que ocurra durante el proceso de mapeo. Puedes hacer que el objeto Logger sea accesible para otras clases haciéndolo público, o puedes utilizar la clase LogManager para crear un objeto Logger que sea accesible para otras clases.

Comments are closed.