Commit 544c0d59 authored by Noel Alonso's avatar Noel Alonso
Browse files

Añade método para obtener evento fail por acción

De este modo se puede enviar el evento fail que corresponde con el
evento bloqueado en casos específicos de settings
parent adf3e35b
Loading
Loading
Loading
Loading
+27 −1
Original line number Diff line number Diff line
package es.redmic.usersettingslib.events;

import java.util.Arrays;

/*-
 * #%L
 * user-settings-lib
@@ -67,7 +69,8 @@ public abstract class SettingsEventTypes {
		DELETE_CANCELLED = "DELETE_CANCELLED",
		//FAIL
		PREPARE_ROLLBACK = "PREPARE_ROLLBACK",
		ROLLBACK = "ROLLBACK";
		ROLLBACK = "ROLLBACK",
		ROLLBACK_FAILED = "ROLLBACK_FAILED";
	//@formatter:on

	public static boolean isLocked(String eventType) {
@@ -90,4 +93,27 @@ public abstract class SettingsEventTypes {

		return (isSnapshot(eventType) && !eventType.equals(DELETED.toString()));
	}

	public static String getEventFailedTypeByActionType(String actionType) {

		if (Arrays.asList(PARTIAL_SELECT, SELECT, SELECT_CONFIRMED, SELECT_FAILED).contains(actionType)) {
			return SELECT_FAILED;
		}
		if (Arrays.asList(PARTIAL_DESELECT, DESELECT, DESELECT_CONFIRMED, DESELECT_FAILED).contains(actionType)) {
			return DESELECT_FAILED;
		}
		if (Arrays.asList(PARTIAL_CLEAR_SELECTION, CLEAR_SELECTION, CLEAR_SELECTION_CONFIRMED, CLEAR_SELECTION_FAILED)
				.contains(actionType)) {
			return CLEAR_SELECTION_FAILED;
		}
		if (Arrays.asList(PARTIAL_SAVE, SAVE, SAVE_CONFIRMED, SAVE_FAILED, CLONE, UPDATE_ACCESSED_DATE)
				.contains(actionType)) {
			return SAVE_FAILED;
		}
		if (Arrays.asList(DELETE, CHECK_DELETE, DELETE_CHECKED, CHECK_DELETE_FAILED, DELETE_CONFIRMED, DELETE_FAILED)
				.contains(actionType)) {
			return DELETE_FAILED;
		}
		return null;
	}
}