Commit 5ebfb379 authored by Noel Alonso's avatar Noel Alonso
Browse files

Cambia borrado. No recibe parentId en el evento

Se ha optado por no enviar parentId desde el cliente, en su defecto, se
realiza una búsqueda del elemento antes de borrarlo para obtener el
parentId

Actualiza tests
parent 5f2f14df
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -116,7 +116,7 @@ public class LayerController extends DataController<Layer, LayerDTO, SimpleQuery
		EventApplicationResult result = null;

		try {
			result = service.delete(event.getAggregateId(), event.getParentId());
			result = service.delete(event.getAggregateId());
		} catch (Exception e) {
			e.printStackTrace();
			publishFailedEvent(LayerEventFactory.getEvent(event, LayerEventTypes.DELETE_FAILED,
+19 −0
Original line number Diff line number Diff line
@@ -33,9 +33,11 @@ import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.builder.SearchSourceBuilder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;

import es.redmic.atlasview.model.layer.Layer;
import es.redmic.elasticsearchlib.common.utils.ElasticPersistenceUtils;
import es.redmic.elasticsearchlib.data.repository.RWDataESRepository;
import es.redmic.exception.common.ExceptionType;
import es.redmic.exception.data.ItemNotFoundException;
@@ -60,6 +62,9 @@ public class LayerESRepository extends RWDataESRepository<Layer, SimpleQueryDTO>
			URL_SOURCE_PROPERTY = "urlSource";
	// @formatter:on

	@Autowired
	ElasticPersistenceUtils<Layer> elasticPersistenceUtils;

	public LayerESRepository() {
		super(INDEX, TYPE);
		setInternalQuery(getLayerQuery());
@@ -162,6 +167,20 @@ public class LayerESRepository extends RWDataESRepository<Layer, SimpleQueryDTO>
		return new EventApplicationResult(true);
	}

	@Override
	public EventApplicationResult delete(String id) {

		EventApplicationResult checkDelete = checkDeleteConstraintsFulfilled(id);

		if (!checkDelete.isSuccess()) {
			return checkDelete;
		}

		Layer result = (Layer) queryById(id).get_source();

		return elasticPersistenceUtils.delete(getIndex()[0], getType(), id, result.getJoinIndex().getParent());
	}

	public DataHitWrapper<?> queryById(String id) {
		DataSearchWrapper<?> result = findBy(QueryBuilders.termQuery(ID_PROPERTY, id));

+2 −2
Original line number Diff line number Diff line
@@ -52,8 +52,8 @@ public class LayerESService extends RDataService<Layer, LayerDTO, SimpleQueryDTO
		return repository.update(model, parentId);
	}

	public EventApplicationResult delete(String id, String parentId) {
		return repository.delete(id, parentId);
	public EventApplicationResult delete(String id) {
		return repository.delete(id);
	}

	/**
+4 −3
Original line number Diff line number Diff line
@@ -199,7 +199,9 @@ public class LayerEventHandlerTest extends DocumentationViewBaseTest {

		LayerDTO original = getUpdateLayerEvent().getLayer();

		repository.save(mapper.getMapperFacade().map(original, Layer.class), original.getParent().getId());
		String parentId = original.getParent().getId();

		repository.save(mapper.getMapperFacade().map(original, Layer.class), parentId);

		ListenableFuture<SendResult<String, Event>> future = kafkaTemplate.send(LAYER_TOPIC, event.getAggregateId(),
				event);
@@ -209,7 +211,7 @@ public class LayerEventHandlerTest extends DocumentationViewBaseTest {
		assertNotNull(confirm);
		assertEquals(LayerEventTypes.DELETE_CONFIRMED.toString(), confirm.getType());

		repository.findById(event.getAggregateId());
		repository.findById(event.getAggregateId(), parentId);
	}

	@Test
@@ -385,7 +387,6 @@ public class LayerEventHandlerTest extends DocumentationViewBaseTest {
		deletedEvent.setVersion(3);
		deletedEvent.setSessionId(UUID.randomUUID().toString());
		deletedEvent.setUserId(USER_ID);
		deletedEvent.setParentId(PARENT_ID);
		return deletedEvent;
	}
}