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; }
public AbstractMessage objectToAbstract(NPMessages npMessages) throws Exception { NpReturn npReturn = new NpReturn(); NPMessages.PortMessages portMessages = npMessages.getPortMessages(); ReturnNPReturnNPReturn portMessage = portMessages.getReturnNPReturnNPReturn(); npReturn.setIdProceso(portMessage.getNPId()); TipoMensaje tipoMensaje = ModelCache.getInstance().getTipoMensaje(portMessage.getMessageCode().value()); npReturn.setTipoMensaje(tipoMensaje); Operador operador = ModelCache.getInstance().getOperador(portMessage.getRecipientId()); npReturn.setOperadorReceptor(operador); List<Number> numbers = portMessage.getNrList().getNr(); List<Numeracion> numeraciones = new ArrayList<Numeracion>(); for (Number number : numbers) { Numeracion numeracion = new Numeracion(); numeracion.setNumero(number.getNumber()); numeraciones.add(numeracion); } npReturn.setNumeraciones(numeraciones); ProcessType processType = portMessage.getProcessType(); TipoLinea tipoLinea = convert.getTipoLinea(processType); npReturn.setTipoLinea(tipoLinea); TipoServicio tipoServicio = convert.getTipoServicio(processType); npReturn.setTipoServicio(tipoServicio); String tipoProceso = convert.getTipoProceso(processType); npReturn.setTipoProceso(tipoProceso); return npReturn; }