private static <T extends CDOIDAndVersion> void fillMap(Map<CDOID, T> map, Collection<T> c) { for (T key : c) { map.put(key.getID(), key); } } }
@Override public boolean equals(Object obj) { if (obj == this) { return true; } if (obj instanceof CDOIDAndVersion) { CDOIDAndVersion that = (CDOIDAndVersion)obj; return id.equals(that.getID()) && version == that.getVersion(); } return false; }
private static CDOID[] getDetachedObjects(CDOCommitInfo commitInfo) { List<CDOIDAndVersion> list = commitInfo.getDetachedObjects(); CDOID[] result = new CDOID[list.size()]; int i = 0; for (CDOIDAndVersion key : list) { result[i++] = key.getID(); } return result; }
/** * @since 4.0 */ public static CDOIDAndVersion createIDAndVersion(CDOIDAndVersion source) { return createIDAndVersion(source.getID(), source.getVersion()); }
private static CDOID[] getDetachedObjects(CDOCommitInfo commitInfo) { List<CDOIDAndVersion> list = commitInfo.getDetachedObjects(); CDOID[] result = new CDOID[list.size()]; int i = 0; for (CDOIDAndVersion key : list) { result[i++] = key.getID(); } return result; }
public void writeCDOIDAndVersion(CDOIDAndVersion idAndVersion) throws IOException { writeCDOID(idAndVersion.getID()); writeInt(idAndVersion.getVersion()); }
private static CDOID[] getDetachedObjects(CDOCommitInfo commitInfo) { List<CDOIDAndVersion> list = commitInfo.getDetachedObjects(); CDOID[] result = new CDOID[list.size()]; int i = 0; for (CDOIDAndVersion key : list) { result[i++] = key.getID(); } return result; } }
CDOID id = detachedObject.getID(); out.writeCDOID(id); if (auditing || ensuringReferentialIntegrity) int version = detachedObject.getVersion(); if (branching && detachedObject instanceof CDORevisionKey)
private Map<CDOID, Object> createMap(CDOChangeSetData changeSetData) { Map<CDOID, Object> map = new HashMap<CDOID, Object>(); for (CDOIDAndVersion data : changeSetData.getNewObjects()) { map.put(data.getID(), data); } for (CDORevisionKey data : changeSetData.getChangedObjects()) { map.put(data.getID(), data); } for (CDOIDAndVersion data : changeSetData.getDetachedObjects()) { map.put(data.getID(), data.getID()); } return map; }
CDOID id = key.getID(); int version = key.getVersion(); if (version == CDOBranchVersion.UNSPECIFIED_VERSION)
@Override public boolean apply(final CDOIDAndVersion input) { return ids.contains(CDOIDUtils.asLong(input.getID())); }
private Map<CDOID, Object> createMap(CDOChangeSetData changeSetData) { Map<CDOID, Object> map = CDOIDUtil.createMap(); for (CDOIDAndVersion data : changeSetData.getNewObjects()) { map.put(data.getID(), data); } for (CDORevisionKey data : changeSetData.getChangedObjects()) { map.put(data.getID(), data); } for (CDOIDAndVersion data : changeSetData.getDetachedObjects()) { map.put(data.getID(), data.getID()); } return map; }
private Set<CDOObject> applyDetachedObjects(List<CDOIDAndVersion> detachedObjects, List<CDOIDAndVersion> result) { Set<CDOObject> detachedSet = new HashSet<CDOObject>(); for (CDOIDAndVersion key : detachedObjects) { CDOID id = key.getID(); InternalCDOObject object = getObjectIfExists(id); if (object != null) { result.add(CDOIDUtil.createIDAndVersion(id, CDOBranchVersion.UNSPECIFIED_VERSION)); CDOStateMachine.INSTANCE.detach(object); detachedSet.add(object); dirty = true; } } return detachedSet; }
private Set<CDOObject> applyDetachedObjects(List<CDOIDAndVersion> detachedObjects, List<CDOIDAndVersion> result) { Set<CDOObject> detachedSet = new HashSet<CDOObject>(); for (CDOIDAndVersion key : detachedObjects) { CDOID id = key.getID(); InternalCDOObject object = getObjectIfExists(id); if (object != null) { result.add(CDOIDUtil.createIDAndVersion(id, CDOBranchVersion.UNSPECIFIED_VERSION)); CDOStateMachine.INSTANCE.detach(object); detachedSet.add(object); dirty = true; } } return detachedSet; }
private Map<CDOID, CDOIDAndVersion> cacheRevisions() { Map<CDOID, CDOIDAndVersion> cache = new HashMap<CDOID, CDOIDAndVersion>(); for (CDOIDAndVersion key : changeSetData.getNewObjects()) { if (revisionCallback == null && !(key instanceof CDORevision)) { throw new IllegalStateException("No callback installed to lazily obtain revision " + key); } cache.put(key.getID(), key); } for (CDORevisionKey key : changeSetData.getChangedObjects()) { if (revisionDeltaCallback == null && !(key instanceof CDORevisionDelta)) { throw new IllegalStateException("No callback installed to lazily obtain revision delta " + key); } cache.put(key.getID(), key); } for (CDOIDAndVersion key : changeSetData.getDetachedObjects()) { cache.put(key.getID(), DETACHED); } return cache; }
public void merge(CDOChangeSetData changeSetData) { Map<CDOID, CDOIDAndVersion> newMap = new HashMap<CDOID, CDOIDAndVersion>(); fillMap(newMap, newObjects); fillMap(newMap, changeSetData.getNewObjects()); Map<CDOID, CDORevisionKey> changedMap = new HashMap<CDOID, CDORevisionKey>(); fillMap(changedMap, changedObjects); for (CDORevisionKey key : changeSetData.getChangedObjects()) { mergeChangedObject(key, newMap, changedMap); } Map<CDOID, CDOIDAndVersion> detachedMap = new HashMap<CDOID, CDOIDAndVersion>(); fillMap(detachedMap, detachedObjects); for (CDOIDAndVersion key : changeSetData.getDetachedObjects()) { CDOID id = key.getID(); if (newMap.remove(id) == null) { detachedMap.put(id, key); } } newObjects = new ArrayList<CDOIDAndVersion>(newMap.values()); changedObjects = new ArrayList<CDORevisionKey>(changedMap.values()); detachedObjects = new ArrayList<CDOIDAndVersion>(detachedMap.values()); }
public CDOChangeKindCache(CDOChangeSetData changeSetData) { List<CDOIDAndVersion> newObjects = changeSetData.getNewObjects(); if (newObjects != null) { for (CDOIDAndVersion key : newObjects) { put(key.getID(), CDOChangeKind.NEW); } } List<CDORevisionKey> changedObjects = changeSetData.getChangedObjects(); if (changedObjects != null) { for (CDOIDAndVersion key : changedObjects) { put(key.getID(), CDOChangeKind.CHANGED); } } List<CDOIDAndVersion> detachedObjects = changeSetData.getDetachedObjects(); if (detachedObjects != null) { for (CDOIDAndVersion key : detachedObjects) { put(key.getID(), CDOChangeKind.DETACHED); } } }
EObject object = getEObject(key.getID()); if (object != null)
for (CDOIDAndVersion key : allDetachedObjects) referencedOIDs.add(key.getID());