r1895 - trunk/topia-persistence/src/main/java/org/nuiton/topia/persistence/util
Author: tchemit Date: 2010-04-16 14:50:36 +0200 (Fri, 16 Apr 2010) New Revision: 1895 Log: introduce convinient class DiffStateMap Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/persistence/util/DiffState.java trunk/topia-persistence/src/main/java/org/nuiton/topia/persistence/util/TopiaEntityHelper.java Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/persistence/util/DiffState.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/persistence/util/DiffState.java 2010-04-15 15:44:51 UTC (rev 1894) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/persistence/util/DiffState.java 2010-04-16 12:50:36 UTC (rev 1895) @@ -28,6 +28,7 @@ import java.util.ArrayList; import java.util.EnumMap; import java.util.List; +import java.util.Map; /** * Pour qualifier l'etat d'une entite lors du calcul d'un differentiel entre @@ -63,9 +64,9 @@ * * @return le dictionnaire crée */ - public static EnumMap<DiffState, List<String>> newMap() { - EnumMap<DiffState, List<String>> result = - new EnumMap<DiffState, List<String>>(DiffState.class); + public static DiffStateMap newMap() { + DiffStateMap result = + new DiffStateMap(); for (DiffState state : values()) { result.put(state, new ArrayList<String>()); } @@ -78,8 +79,8 @@ * @param mainMap le dictionnaire principale * @param toAdd le dictionne a ajouter dans le dictionnaire principale */ - public static void addAll(EnumMap<DiffState, List<String>> mainMap, - EnumMap<DiffState, List<String>> toAdd) { + public static void addAll(DiffStateMap mainMap, + DiffStateMap toAdd) { for (DiffState state : values()) { List<String> newList = toAdd.get(state); if (newList != null && !newList.isEmpty()) { @@ -93,7 +94,7 @@ * * @param mainMap le dictionnaire a nettoyer. */ - public static void clear(EnumMap<DiffState, List<String>> mainMap) { + public static void clear(DiffStateMap mainMap) { for (DiffState state : values()) { List<String> newList = mainMap.get(state); if (newList != null) { @@ -109,7 +110,7 @@ * @param mainMap le dictionnaire a nettoyer */ public static void removeEmptyStates( - EnumMap<DiffState, List<String>> mainMap) { + DiffStateMap mainMap) { for (DiffState state : values()) { List<String> newList = mainMap.get(state); if (newList == null || newList.isEmpty()) { @@ -117,4 +118,20 @@ } } } + + public static class DiffStateMap extends EnumMap<DiffState, List<String>> { + private static final long serialVersionUID = 1L; + + public DiffStateMap() { + super(DiffState.class); + } + + public DiffStateMap(EnumMap<DiffState, ? extends List<String>> m) { + super(m); + } + + public DiffStateMap(Map<DiffState, ? extends List<String>> m) { + super(m); + } + } } Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/persistence/util/TopiaEntityHelper.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/persistence/util/TopiaEntityHelper.java 2010-04-15 15:44:51 UTC (rev 1894) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/persistence/util/TopiaEntityHelper.java 2010-04-16 12:50:36 UTC (rev 1895) @@ -45,7 +45,6 @@ import java.util.Collections; import java.util.Comparator; import java.util.Deque; -import java.util.EnumMap; import java.util.HashMap; import java.util.HashSet; import java.util.LinkedList; @@ -973,9 +972,9 @@ * @see DiffState * @since 2.2.0 */ - public static <E extends TopiaEntity> EnumMap<DiffState, List<String>> + public static <E extends TopiaEntity> DiffState.DiffStateMap buildDifferentiel(List<E> referentiel, List<E> locale) { - EnumMap<DiffState, List<String>> result = DiffState.newMap(); + DiffState.DiffStateMap result = DiffState.newMap(); // construction des deux listes d'id List<String> referentielIdList = getTopiaIdList(referentiel);
participants (1)
-
tchemit@users.nuiton.org