public NPMessages abstractToObject(AbstractMessage abstractMessage) throws Exception { sv.iecisa.gateway.model.message.retorno.NpReturn message = (sv.iecisa.gateway.model.message.retorno.NpReturn) abstractMessage; NPMessages npMessages = new NPMessages(); NPMessages.PortMessages portMessages = new NPMessages.PortMessages(); npMessages.setPortMessages(portMessages); ReturnNPReturn portMessage = new ReturnNPReturn(); portMessages.setReturnNPReturn(portMessage); portMessage.setMessageCode(MessageCode.NP_RETURN); portMessage.setNPRequestId(message.getNpRequestId()); portMessage.setRecipientId(message.getOperadorReceptor().getCodigo()); NumberList numberList = new NumberList(); portMessage.setNrList(numberList); List<Number> numbers = numberList.getNr(); List<Numeracion> numeraciones = message.getNumeraciones(); for (Numeracion numeracion : numeraciones) { Number number = new Number(); number.setNumber(numeracion.getNumero()); numbers.add(number); } TipoLinea tipoLinea = message.getTipoLinea(); TipoServicio tipoServicio = message.getTipoServicio(); String tipoProceso = message.getTipoProceso(); ProcessType processType = convert.getProcessType(tipoLinea, tipoServicio, tipoProceso); portMessage.setProcessType(processType); return npMessages; }