Commit e8c8d347 authored by Noel Alonso's avatar Noel Alonso
Browse files

Refactoriza handler y adapta tests

parent 24f2138c
Loading
Loading
Loading
Loading
+3 −30
Original line number Diff line number Diff line
@@ -123,10 +123,7 @@ public class CategoryCommandHandler extends CommandHandler {

	public CategoryDTO save(CreateCategoryCommand cmd) {

		CategoryAggregate agg = new CategoryAggregate(categoryStateStore);

		// Se procesa el comando, obteniendo el evento generado
		logger.debug("Procesando CreateCategoryCommand");
		CategoryAggregate agg = new CategoryAggregate(categoryStateStore, userService);

		CreateCategoryEvent event = agg.process(cmd);

@@ -134,13 +131,9 @@ public class CategoryCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		event.setUserId(userService.getUserId());

		// Se aplica el evento
		agg.apply(event);

		logger.debug("Aplicado evento: " + event.getType());

		// Crea la espera hasta que se responda con evento completado
		CompletableFuture<CategoryDTO> completableFuture = getCompletableFeature(event.getSessionId());

@@ -153,7 +146,7 @@ public class CategoryCommandHandler extends CommandHandler {

	public CategoryDTO update(String id, UpdateCategoryCommand cmd) {

		CategoryAggregate agg = new CategoryAggregate(categoryStateStore);
		CategoryAggregate agg = new CategoryAggregate(categoryStateStore, userService);

		// Se procesa el comando, obteniendo el evento generado
		UpdateCategoryEvent event = agg.process(cmd);
@@ -162,8 +155,6 @@ public class CategoryCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		event.setUserId(userService.getUserId());

		// Si no existen excepciones, se aplica el comando
		agg.apply(event);

@@ -179,7 +170,7 @@ public class CategoryCommandHandler extends CommandHandler {

	public CategoryDTO update(String id, DeleteCategoryCommand cmd) {

		CategoryAggregate agg = new CategoryAggregate(categoryStateStore);
		CategoryAggregate agg = new CategoryAggregate(categoryStateStore, userService);
		agg.setAggregateId(id);

		// Se procesa el comando, obteniendo el evento generado
@@ -189,8 +180,6 @@ public class CategoryCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		event.setUserId(userService.getUserId());

		// Si no existen excepciones, se aplica el comando
		agg.apply(event);

@@ -207,20 +196,14 @@ public class CategoryCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(CategoryCreatedEvent event) {

		logger.debug("Category creado " + event.getAggregateId());

		// El evento Creado se envía desde el stream

		resolveCommand(event.getSessionId(), event.getCategory());
	}

	@KafkaHandler
	private void listen(CategoryUpdatedEvent event) {

		logger.debug("Category modificado " + event.getAggregateId());

		// El evento Modificado se envía desde el stream

		resolveCommand(event.getSessionId(), event.getCategory());
	}

@@ -239,8 +222,6 @@ public class CategoryCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(CategoryDeletedEvent event) {

		logger.debug("Category eliminado " + event.getAggregateId());

		resolveCommand(event.getSessionId());
	}

@@ -254,8 +235,6 @@ public class CategoryCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(CreateCategoryCancelledEvent event) {

		logger.debug("Error creando Category " + event.getAggregateId());

		resolveCommand(event.getSessionId(),
				ExceptionFactory.getException(event.getExceptionType(), event.getArguments()));
	}
@@ -263,10 +242,7 @@ public class CategoryCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(UpdateCategoryCancelledEvent event) {

		logger.debug("Error modificando Category " + event.getAggregateId());

		// El evento Cancelled se envía desde el stream

		resolveCommand(event.getSessionId(),
				ExceptionFactory.getException(event.getExceptionType(), event.getArguments()));
	}
@@ -281,10 +257,7 @@ public class CategoryCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(DeleteCategoryCancelledEvent event) {

		logger.debug("Error eliminando Category " + event.getAggregateId());

		// El evento Cancelled se envía desde el stream

		resolveCommand(event.getSessionId(),
				ExceptionFactory.getException(event.getExceptionType(), event.getArguments()));
	}
+4 −39
Original line number Diff line number Diff line
@@ -136,10 +136,7 @@ public class LayerCommandHandler extends CommandHandler {

	public LayerDTO save(CreateLayerCommand cmd) {

		LayerAggregate agg = new LayerAggregate(layerStateStore);

		// Se procesa el comando, obteniendo el evento generado
		logger.debug("Procesando CreateLayerCommand");
		LayerAggregate agg = new LayerAggregate(layerStateStore, userService);

		LayerEvent event = agg.process(cmd);

@@ -147,13 +144,9 @@ public class LayerCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		event.setUserId(userService.getUserId());

		// Se aplica el evento
		agg.apply(event);

		logger.debug("Aplicado evento: " + event.getType());

		// Crea la espera hasta que se responda con evento completado
		CompletableFuture<LayerDTO> completableFuture = getCompletableFeature(event.getSessionId());

@@ -166,7 +159,7 @@ public class LayerCommandHandler extends CommandHandler {

	public LayerDTO update(String id, UpdateLayerCommand cmd) {

		LayerAggregate agg = new LayerAggregate(layerStateStore);
		LayerAggregate agg = new LayerAggregate(layerStateStore, userService);

		// Se procesa el comando, obteniendo el evento generado
		LayerEvent event = agg.process(cmd);
@@ -175,8 +168,6 @@ public class LayerCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		event.setUserId(userService.getUserId());

		// Si no existen excepciones, se aplica el comando
		agg.apply(event);

@@ -192,7 +183,7 @@ public class LayerCommandHandler extends CommandHandler {

	public LayerDTO update(String id, DeleteLayerCommand cmd) {

		LayerAggregate agg = new LayerAggregate(layerStateStore);
		LayerAggregate agg = new LayerAggregate(layerStateStore, userService);
		agg.setAggregateId(id);

		// Se procesa el comando, obteniendo el evento generado
@@ -202,8 +193,6 @@ public class LayerCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		event.setUserId(userService.getUserId());

		// Si no existen excepciones, se aplica el comando
		agg.apply(event);

@@ -219,7 +208,7 @@ public class LayerCommandHandler extends CommandHandler {

	public LayerDTO refresh(RefreshLayerCommand cmd) {

		LayerAggregate agg = new LayerAggregate(layerStateStore);
		LayerAggregate agg = new LayerAggregate(layerStateStore, userService);

		// Se procesa el comando, obteniendo el evento generado
		RefreshLayerEvent event = agg.process(cmd);
@@ -228,8 +217,6 @@ public class LayerCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		event.setUserId(userService.getUserId());

		// Si no existen excepciones, se aplica el comando
		agg.apply(event);

@@ -252,10 +239,7 @@ public class LayerCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(LayerCreatedEvent event) {

		logger.debug("Layer creado " + event.getAggregateId());

		// El evento Creado se envía desde el stream

		resolveCommand(event.getSessionId(), event.getLayer());
	}

@@ -268,20 +252,14 @@ public class LayerCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(LayerUpdatedEvent event) {

		logger.debug("Layer modificado " + event.getAggregateId());

		// El evento Modificado se envía desde el stream

		resolveCommand(event.getSessionId(), event.getLayer());
	}

	@KafkaHandler
	private void listen(LayerRefreshedEvent event) {

		logger.debug("Layer refrescado " + event.getAggregateId());

		// El evento Refrescado se envía desde el stream

		resolveCommand(event.getSessionId(), event.getLayer());
	}

@@ -300,8 +278,6 @@ public class LayerCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(LayerDeletedEvent event) {

		logger.debug("Layer eliminado " + event.getAggregateId());

		resolveCommand(event.getSessionId());
	}

@@ -315,8 +291,6 @@ public class LayerCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(CreateLayerCancelledEvent event) {

		logger.debug("Error creando Layer " + event.getAggregateId());

		resolveCommand(event.getSessionId(),
				ExceptionFactory.getException(event.getExceptionType(), event.getArguments()));
	}
@@ -324,10 +298,7 @@ public class LayerCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(UpdateLayerCancelledEvent event) {

		logger.debug("Error modificando Layer " + event.getAggregateId());

		// El evento Cancelled se envía desde el stream

		resolveCommand(event.getSessionId(),
				ExceptionFactory.getException(event.getExceptionType(), event.getArguments()));
	}
@@ -335,10 +306,7 @@ public class LayerCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(RefreshLayerCancelledEvent event) {

		logger.debug("Error refrescando Layer " + event.getAggregateId());

		// El evento Cancelled se envía desde el stream

		resolveCommand(event.getSessionId(),
				ExceptionFactory.getException(event.getExceptionType(), event.getArguments()));
	}
@@ -353,10 +321,7 @@ public class LayerCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(DeleteLayerCancelledEvent event) {

		logger.debug("Error eliminando Layer " + event.getAggregateId());

		// El evento Cancelled se envía desde el stream

		resolveCommand(event.getSessionId(),
				ExceptionFactory.getException(event.getExceptionType(), event.getArguments()));
	}
+3 −29
Original line number Diff line number Diff line
@@ -126,10 +126,7 @@ public class ThemeInspireCommandHandler extends CommandHandler {

	public ThemeInspireDTO save(CreateThemeInspireCommand cmd) {

		ThemeInspireAggregate agg = new ThemeInspireAggregate(themeInspireStateStore);

		// Se procesa el comando, obteniendo el evento generado
		logger.debug("Procesando CreateThemeInspireCommand");
		ThemeInspireAggregate agg = new ThemeInspireAggregate(themeInspireStateStore, userService);

		CreateThemeInspireEvent event = agg.process(cmd);

@@ -137,13 +134,9 @@ public class ThemeInspireCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		event.setUserId(userService.getUserId());

		// Se aplica el evento
		agg.apply(event);

		logger.debug("Aplicado evento: " + event.getType());

		// Crea la espera hasta que se responda con evento completado
		CompletableFuture<ThemeInspireDTO> completableFuture = getCompletableFeature(event.getSessionId());

@@ -156,7 +149,7 @@ public class ThemeInspireCommandHandler extends CommandHandler {

	public ThemeInspireDTO update(String id, UpdateThemeInspireCommand cmd) {

		ThemeInspireAggregate agg = new ThemeInspireAggregate(themeInspireStateStore);
		ThemeInspireAggregate agg = new ThemeInspireAggregate(themeInspireStateStore, userService);

		// Se procesa el comando, obteniendo el evento generado
		UpdateThemeInspireEvent event = agg.process(cmd);
@@ -165,8 +158,6 @@ public class ThemeInspireCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		event.setUserId(userService.getUserId());

		// Si no existen excepciones, se aplica el comando
		agg.apply(event);

@@ -182,7 +173,7 @@ public class ThemeInspireCommandHandler extends CommandHandler {

	public ThemeInspireDTO update(String id, DeleteThemeInspireCommand cmd) {

		ThemeInspireAggregate agg = new ThemeInspireAggregate(themeInspireStateStore);
		ThemeInspireAggregate agg = new ThemeInspireAggregate(themeInspireStateStore, userService);
		agg.setAggregateId(id);

		// Se procesa el comando, obteniendo el evento generado
@@ -192,8 +183,6 @@ public class ThemeInspireCommandHandler extends CommandHandler {
		if (event == null)
			return null;

		event.setUserId(userService.getUserId());

		// Si no existen excepciones, se aplica el comando
		agg.apply(event);

@@ -210,18 +199,13 @@ public class ThemeInspireCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(ThemeInspireCreatedEvent event) {

		logger.debug("ThemeInspire creado " + event.getAggregateId());

		// El evento Creado se envía desde el stream

		resolveCommand(event.getSessionId(), event.getThemeInspire());
	}

	@KafkaHandler
	private void listen(ThemeInspireUpdatedEvent event) {

		logger.debug("ThemeInspire modificado " + event.getAggregateId());

		// Envía los editados satisfactoriamente para tenerlos en cuenta en el
		// postupdate
		publishToKafka(event, themeInspireUpdatedTopic);
@@ -246,8 +230,6 @@ public class ThemeInspireCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(ThemeInspireDeletedEvent event) {

		logger.debug("ThemeInspire eliminado " + event.getAggregateId());

		resolveCommand(event.getSessionId());
	}

@@ -261,8 +243,6 @@ public class ThemeInspireCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(CreateThemeInspireCancelledEvent event) {

		logger.debug("Error creando ThemeInspire " + event.getAggregateId());

		resolveCommand(event.getSessionId(),
				ExceptionFactory.getException(event.getExceptionType(), event.getArguments()));
	}
@@ -270,10 +250,7 @@ public class ThemeInspireCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(UpdateThemeInspireCancelledEvent event) {

		logger.debug("Error modificando ThemeInspire " + event.getAggregateId());

		// El evento Cancelled se envía desde el stream

		resolveCommand(event.getSessionId(),
				ExceptionFactory.getException(event.getExceptionType(), event.getArguments()));
	}
@@ -288,10 +265,7 @@ public class ThemeInspireCommandHandler extends CommandHandler {
	@KafkaHandler
	private void listen(DeleteThemeInspireCancelledEvent event) {

		logger.debug("Error eliminando ThemeInspire " + event.getAggregateId());

		// El evento Cancelled se envía desde el stream

		resolveCommand(event.getSessionId(),
				ExceptionFactory.getException(event.getExceptionType(), event.getArguments()));
	}
+6 −1
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ import es.redmic.atlaslib.events.category.update.CategoryUpdatedEvent;
import es.redmic.atlaslib.events.category.update.UpdateCategoryEvent;
import es.redmic.brokerlib.avro.common.Event;
import es.redmic.commandslib.exceptions.ItemLockedException;
import es.redmic.restlib.config.UserService;
import es.redmic.test.atlascommands.integration.category.CategoryDataUtil;

@RunWith(MockitoJUnitRunner.class)
@@ -55,6 +56,8 @@ public class ApplyEventTest {

	CategoryStateStore categoryStateStore;

	UserService userService;

	CategoryAggregate agg;

	@Before
@@ -62,7 +65,9 @@ public class ApplyEventTest {

		categoryStateStore = Mockito.mock(CategoryStateStore.class);

		agg = new CategoryAggregate(categoryStateStore);
		userService = Mockito.mock(UserService.class);

		agg = new CategoryAggregate(categoryStateStore, userService);
	}

	@Test
+8 −1
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ import es.redmic.atlaslib.events.category.delete.CheckDeleteCategoryEvent;
import es.redmic.atlaslib.events.category.update.UpdateCategoryEvent;
import es.redmic.commandslib.exceptions.ItemLockedException;
import es.redmic.exception.data.ItemNotFoundException;
import es.redmic.restlib.config.UserService;
import es.redmic.test.atlascommands.integration.category.CategoryDataUtil;

@RunWith(MockitoJUnitRunner.class)
@@ -55,6 +56,8 @@ public class ProcessEventTest {

	CategoryStateStore categoryStateStore;

	UserService userService;

	CategoryAggregate agg;

	@Before
@@ -62,7 +65,11 @@ public class ProcessEventTest {

		categoryStateStore = Mockito.mock(CategoryStateStore.class);

		agg = new CategoryAggregate(categoryStateStore);
		userService = Mockito.mock(UserService.class);

		agg = new CategoryAggregate(categoryStateStore, userService);

		when(userService.getUserId()).thenReturn("13");
	}

	@Test
Loading