public Ride dtoToEntity(RideDto dto, Converter parent) { if (dto == null) { return null; } Ride entity = new Ride(); entity.setId(dto.getId()); entity.setStartTime(dto.getStartTime()); entity.setEndTime(dto.getEndTime()); entity.setTachometerStart(dto.getTachometerStart()); entity.setTachometerEnd(dto.getTachometerEnd()); entity.setDescription(dto.getDescription()); EmployeeConverter ec = ConverterContainer.getEmployeeConverter(); VehicleConverter vc = ConverterContainer.getVehicleConverter(); if (!(parent == ec)) { entity.setEmployee(ec.dtoToEntity(dto.getEmployee(), this)); } if (!(parent == vc)) { entity.setVehicle(vc.dtoToEntity(dto.getVehicle(), this)); } return entity; }