Loading atlas-view/src/main/java/es/redmic/atlasview/controller/layer/LayerController.java +2 −1 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import es.redmic.atlaslib.events.layer.create.CreateLayerEvent; import es.redmic.atlaslib.events.layer.delete.DeleteLayerEvent; import es.redmic.atlaslib.events.layer.partialupdate.themeinspire.UpdateThemeInspireInLayerEvent; import es.redmic.atlaslib.events.layer.refresh.RefreshLayerEvent; import es.redmic.atlaslib.events.layer.update.UpdateLayerConfirmedEvent; import es.redmic.atlaslib.events.layer.update.UpdateLayerEvent; import es.redmic.atlasview.mapper.layer.LayerESMapper; import es.redmic.atlasview.mapper.layer.LayerWMSESMapper; Loading Loading @@ -171,7 +172,7 @@ public class LayerController extends DataController<Layer, LayerDTO, GeoDataQuer } if (result.isSuccess()) { publishConfirmedEvent(new UpdateThemeInspireInLayerEvent().buildFrom(event), layer_topic); publishConfirmedEvent(new UpdateLayerConfirmedEvent().buildFrom(event), layer_topic); } else { publishFailedEvent(LayerEventFactory.getEvent(event, LayerEventTypes.UPDATE_FAILED, result.getExeptionType(), result.getExceptionArguments()), layer_topic); Loading atlas-view/src/test/java/es/redmic/test/atlasview/integration/handler/LayerEventHandlerTest.java +46 −1 Original line number Diff line number Diff line Loading @@ -65,6 +65,7 @@ import es.redmic.atlaslib.events.layer.create.CreateLayerFailedEvent; import es.redmic.atlaslib.events.layer.delete.DeleteLayerConfirmedEvent; import es.redmic.atlaslib.events.layer.delete.DeleteLayerEvent; import es.redmic.atlaslib.events.layer.delete.DeleteLayerFailedEvent; import es.redmic.atlaslib.events.layer.partialupdate.themeinspire.UpdateThemeInspireInLayerEvent; import es.redmic.atlaslib.events.layer.refresh.RefreshLayerConfirmedEvent; import es.redmic.atlaslib.events.layer.refresh.RefreshLayerEvent; import es.redmic.atlaslib.events.layer.update.UpdateLayerConfirmedEvent; Loading Loading @@ -355,6 +356,36 @@ public class LayerEventHandlerTest extends DocumentationViewBaseTest { assertNotNull(arguments.get("urlSource")); } @Test public void sendUpdateThemeInspireInLayerEvent_UpdateItem_IfEventIsOk() throws Exception { UpdateLayerEvent event = getUpdateLayerEvent(); repository.save(Mappers.getMapper(LayerESMapper.class).map(event.getLayer()), event.getLayer().getParent().getId()); UpdateThemeInspireInLayerEvent updateEvent = getUpdateThemeInspireInLayerEvent(); ListenableFuture<SendResult<String, Event>> future = kafkaTemplate.send(LAYER_TOPIC, updateEvent.getAggregateId(), updateEvent); future.addCallback(new SendListener()); Event confirm = (Event) blockingQueue.poll(50, TimeUnit.SECONDS); DataHitWrapper<?> item = repository.findById(event.getAggregateId(), event.getLayer().getParent().getId()); assertNotNull(item.get_source()); // Se restablece el estado de la vista repository.delete(event.getLayer().getId(), event.getLayer().getParent().getId()); assertNotNull(confirm); assertEquals(LayerEventTypes.UPDATE_CONFIRMED.toString(), confirm.getType()); Layer layer = (Layer) item.get_source(); assertEquals(layer.getId(), event.getAggregateId()); assertEquals(layer.getThemeInspire().getName(), updateEvent.getThemeInspire().getName()); } @Test public void sendUpdateLayerEvent_PublishCreateLayerFailedEvent_IfParentNotExist() throws Exception { Loading Loading @@ -387,7 +418,6 @@ public class LayerEventHandlerTest extends DocumentationViewBaseTest { @Test public void sendDeleteLayerEvent_PublishDeleteLayerFailedEvent_IfNoConstraintsFulfilled() throws Exception { // TODO: Implementar cuando se metan las referencias en la vista. assertTrue(true); } Loading Loading @@ -473,6 +503,21 @@ public class LayerEventHandlerTest extends DocumentationViewBaseTest { return updatedEvent; } protected UpdateThemeInspireInLayerEvent getUpdateThemeInspireInLayerEvent() throws IOException { UpdateThemeInspireInLayerEvent event = new UpdateThemeInspireInLayerEvent().buildFrom(getUpdateLayerEvent()); LayerDTO layer = getLayer(); layer.getThemeInspire().setName("Nombre cambiado"); event.setThemeInspire(layer.getThemeInspire()); event.setAggregateId(layer.getId()); event.setVersion(3); event.setSessionId(UUID.randomUUID().toString()); event.setUserId(USER_ID); return event; } protected RefreshLayerEvent getRefreshLayerEvent() throws IOException { RefreshLayerEvent refreshEvent = new RefreshLayerEvent(); Loading Loading
atlas-view/src/main/java/es/redmic/atlasview/controller/layer/LayerController.java +2 −1 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import es.redmic.atlaslib.events.layer.create.CreateLayerEvent; import es.redmic.atlaslib.events.layer.delete.DeleteLayerEvent; import es.redmic.atlaslib.events.layer.partialupdate.themeinspire.UpdateThemeInspireInLayerEvent; import es.redmic.atlaslib.events.layer.refresh.RefreshLayerEvent; import es.redmic.atlaslib.events.layer.update.UpdateLayerConfirmedEvent; import es.redmic.atlaslib.events.layer.update.UpdateLayerEvent; import es.redmic.atlasview.mapper.layer.LayerESMapper; import es.redmic.atlasview.mapper.layer.LayerWMSESMapper; Loading Loading @@ -171,7 +172,7 @@ public class LayerController extends DataController<Layer, LayerDTO, GeoDataQuer } if (result.isSuccess()) { publishConfirmedEvent(new UpdateThemeInspireInLayerEvent().buildFrom(event), layer_topic); publishConfirmedEvent(new UpdateLayerConfirmedEvent().buildFrom(event), layer_topic); } else { publishFailedEvent(LayerEventFactory.getEvent(event, LayerEventTypes.UPDATE_FAILED, result.getExeptionType(), result.getExceptionArguments()), layer_topic); Loading
atlas-view/src/test/java/es/redmic/test/atlasview/integration/handler/LayerEventHandlerTest.java +46 −1 Original line number Diff line number Diff line Loading @@ -65,6 +65,7 @@ import es.redmic.atlaslib.events.layer.create.CreateLayerFailedEvent; import es.redmic.atlaslib.events.layer.delete.DeleteLayerConfirmedEvent; import es.redmic.atlaslib.events.layer.delete.DeleteLayerEvent; import es.redmic.atlaslib.events.layer.delete.DeleteLayerFailedEvent; import es.redmic.atlaslib.events.layer.partialupdate.themeinspire.UpdateThemeInspireInLayerEvent; import es.redmic.atlaslib.events.layer.refresh.RefreshLayerConfirmedEvent; import es.redmic.atlaslib.events.layer.refresh.RefreshLayerEvent; import es.redmic.atlaslib.events.layer.update.UpdateLayerConfirmedEvent; Loading Loading @@ -355,6 +356,36 @@ public class LayerEventHandlerTest extends DocumentationViewBaseTest { assertNotNull(arguments.get("urlSource")); } @Test public void sendUpdateThemeInspireInLayerEvent_UpdateItem_IfEventIsOk() throws Exception { UpdateLayerEvent event = getUpdateLayerEvent(); repository.save(Mappers.getMapper(LayerESMapper.class).map(event.getLayer()), event.getLayer().getParent().getId()); UpdateThemeInspireInLayerEvent updateEvent = getUpdateThemeInspireInLayerEvent(); ListenableFuture<SendResult<String, Event>> future = kafkaTemplate.send(LAYER_TOPIC, updateEvent.getAggregateId(), updateEvent); future.addCallback(new SendListener()); Event confirm = (Event) blockingQueue.poll(50, TimeUnit.SECONDS); DataHitWrapper<?> item = repository.findById(event.getAggregateId(), event.getLayer().getParent().getId()); assertNotNull(item.get_source()); // Se restablece el estado de la vista repository.delete(event.getLayer().getId(), event.getLayer().getParent().getId()); assertNotNull(confirm); assertEquals(LayerEventTypes.UPDATE_CONFIRMED.toString(), confirm.getType()); Layer layer = (Layer) item.get_source(); assertEquals(layer.getId(), event.getAggregateId()); assertEquals(layer.getThemeInspire().getName(), updateEvent.getThemeInspire().getName()); } @Test public void sendUpdateLayerEvent_PublishCreateLayerFailedEvent_IfParentNotExist() throws Exception { Loading Loading @@ -387,7 +418,6 @@ public class LayerEventHandlerTest extends DocumentationViewBaseTest { @Test public void sendDeleteLayerEvent_PublishDeleteLayerFailedEvent_IfNoConstraintsFulfilled() throws Exception { // TODO: Implementar cuando se metan las referencias en la vista. assertTrue(true); } Loading Loading @@ -473,6 +503,21 @@ public class LayerEventHandlerTest extends DocumentationViewBaseTest { return updatedEvent; } protected UpdateThemeInspireInLayerEvent getUpdateThemeInspireInLayerEvent() throws IOException { UpdateThemeInspireInLayerEvent event = new UpdateThemeInspireInLayerEvent().buildFrom(getUpdateLayerEvent()); LayerDTO layer = getLayer(); layer.getThemeInspire().setName("Nombre cambiado"); event.setThemeInspire(layer.getThemeInspire()); event.setAggregateId(layer.getId()); event.setVersion(3); event.setSessionId(UUID.randomUUID().toString()); event.setUserId(USER_ID); return event; } protected RefreshLayerEvent getRefreshLayerEvent() throws IOException { RefreshLayerEvent refreshEvent = new RefreshLayerEvent(); Loading