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

Usa excepción específica de selección no permitida

Lo comprueba en los tests
parent 9505920c
Loading
Loading
Loading
Loading
+5 −6
Original line number Diff line number Diff line
@@ -153,7 +153,7 @@ public class SettingsEventStreams extends BaseStreams {
			if (!changeSelectionIsGranted(settings, newSelection)) {

				return SettingsEventFactory.getEvent(partialSelectEvent, SettingsEventTypes.SELECT_FAILED,
						ExceptionType.ES_SELECTION_WORK.toString(), null);
						ExceptionType.SELECTION_CHANGE_NOT_ALLOWED.toString(), null);
			}

			Set<String> set = new LinkedHashSet<>();
@@ -259,7 +259,7 @@ public class SettingsEventStreams extends BaseStreams {
		if (!changeSelectionIsGranted(settings, newSelection)) {

			return SettingsEventFactory.getEvent(partialDeselectEvent, SettingsEventTypes.DESELECT_FAILED,
					ExceptionType.ES_SELECTION_WORK.toString(), null);
					ExceptionType.SELECTION_CHANGE_NOT_ALLOWED.toString(), null);
		}

		settings.getSelection().removeAll(newSelection.getSelection());
@@ -355,9 +355,8 @@ public class SettingsEventStreams extends BaseStreams {
		SettingsDTO settings = ((SettingsEvent) snapshotEvent).getSettings();

		if (!changeSelectionIsGranted(settings, newSelection)) {
			// TODO: generar nueva excepción. Si es necesario, añadir argumentos
			return SettingsEventFactory.getEvent(partialClearEvent, SettingsEventTypes.CLEAR_SELECTION_FAILED,
					ExceptionType.ES_SELECTION_WORK.toString(), null);
					ExceptionType.SELECTION_CHANGE_NOT_ALLOWED.toString(), null);
		}

		settings.getSelection().clear();
@@ -653,8 +652,8 @@ public class SettingsEventStreams extends BaseStreams {
				&& settings.getUserId().equals(newSelection.getUserId()) && !settings.getShared()
				&& (settings.getName() == null))) {

			logger.error(
					"Imposible modificar la selección de trabajo. No cumple alguna de las restricciones establecidas.");
			logger.error("Imposible modificar la selección de trabajo " + newSelection.getId()
					+ ". No cumple alguna de las restricciones establecidas.");

			return false;
		}
+7 −0
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;

import es.redmic.brokerlib.avro.common.Event;
import es.redmic.commandslib.usersettings.handler.SettingsCommandHandler;
import es.redmic.exception.common.ExceptionType;
import es.redmic.exception.data.DeleteItemException;

/*-
@@ -204,6 +205,8 @@ public class SettingsCommandHandlerBase extends KafkaBaseIntegrationTest {

		assertNotNull(select);
		assertEquals(SettingsEventTypes.SELECT_FAILED, select.getType());
		assertEquals(ExceptionType.SELECTION_CHANGE_NOT_ALLOWED.toString(),
				((SettingsCancelledEvent) select).getExceptionType());
	}

	// Envía un evento de confirmación de selección y debe provocar un evento
@@ -330,6 +333,8 @@ public class SettingsCommandHandlerBase extends KafkaBaseIntegrationTest {

		assertNotNull(select);
		assertEquals(SettingsEventTypes.DESELECT_FAILED, select.getType());
		assertEquals(ExceptionType.SELECTION_CHANGE_NOT_ALLOWED.toString(),
				((SettingsCancelledEvent) select).getExceptionType());
	}

	// Envía un evento de confirmación de selección y debe provocar un evento
@@ -449,6 +454,8 @@ public class SettingsCommandHandlerBase extends KafkaBaseIntegrationTest {

		assertNotNull(select);
		assertEquals(SettingsEventTypes.CLEAR_SELECTION_FAILED, select.getType());
		assertEquals(ExceptionType.SELECTION_CHANGE_NOT_ALLOWED.toString(),
				((SettingsCancelledEvent) select).getExceptionType());
	}

	// Envía un evento de confirmación de limpiar selección y debe provocar un