data, Object changed);
+ /**
+ * Creates a Map for the id.
+ *
+ *
+ * The ordinal parameter represents the iteration ordinal of the current element, used to add a synthetic id when
+ * dealing with embeddables since embeddable fields can't be contained within the primary key since they might be
+ * nullable.
+ *
+ *
+ * @param ordinal
+ * The element iteration ordinal.
+ *
+ * @return A Map for holding the ID information.
+ */
+ protected Map createIdMap(int ordinal) {
+ final HashMap idMap = new HashMap();
+
+ if ( ordinalInId ) {
+ idMap.put( this.commonCollectionMapperData.getVerEntCfg().getEmbeddableSetOrdinalPropertyName(),
+ Integer.valueOf( ordinal ) );
+ }
+
+ return idMap;
+ }
+
private void addCollectionChanges(SessionImplementor session, List collectionChanges,
Set