public void visit(CDOListFeatureDelta deltas) { for (CDOFeatureDelta delta : deltas.getListChanges()) { try { delta.accept(this); } catch (StopVisitException ex) { return; } } }
public void visit(CDOListFeatureDelta delta) { EStructuralFeature feature = delta.getFeature(); int oldSize = delta.getOriginSize(); int newSize = -1; try { IListMappingDeltaSupport listMapping = (IListMappingDeltaSupport)getListMapping(feature); listMapping.processDelta(accessor, id, branchId, oldVersion, oldVersion + 1, created, delta); } catch (NewListSizeResult result) { newSize = result.getNewListSize(); } if (oldSize != newSize) { listSizeChanges.add(Pair.create(feature, newSize)); } }
public void visit(CDOListFeatureDelta delta) { delta.apply(newRevision); IListMappingDeltaSupport listMapping = (IListMappingDeltaSupport)getListMapping(delta.getFeature()); listMapping.processDelta(accessor, id, branchId, oldVersion, oldVersion + 1, created, delta); }
int originSize = ((CDOListFeatureDelta)sourceFeatureDelta.copy()).getOriginSize(); BasicEList<Element> ancestorList = new BasicEList<Element>(originSize); PerSide<BasicEList<Element>> listPerSide = new PerSide<BasicEList<Element>>(); ((CDOListFeatureDelta)sourceFeatureDelta.copy()).getListChanges(), ((CDOListFeatureDelta)targetFeatureDelta.copy()).getListChanges()); Map<Object, List<Element>> additions = new HashMap<Object, List<Element>>(); Map<CDOFeatureDelta, Element> allElements = new HashMap<CDOFeatureDelta, Element>(); List<CDOFeatureDelta> resultChanges = result.getListChanges();
Iterator<CDOFeatureDelta> featureIterator = listFeatureDelta.getListChanges().iterator(); int originalRemoveIndex = -1; int adjustedRemoveIndex = -1; CDOList list = goalRevision.getList(listFeatureDelta.getFeature()); throw new RuntimeException(String.format("Unknown type in list feature (%s) delta: %s", listFeatureDelta.getFeature().getName(), listElement.getClass().getSimpleName())); if (listFeatureDelta.getFeature().isUnique()) { if (!visited.add(listElement)) { iterator.remove();
@Override public void visit(CDOListFeatureDelta deltas) { @SuppressWarnings("unchecked") List<Object> list = (List<Object>)((InternalCDORevision)oldRevision).getValue(deltas.getFeature()); if (list != null) { workList = new ArrayList<Object>(list); super.visit(deltas); } }
public void processDelta(final IDBStoreAccessor accessor, final CDOID id, int branchId, int oldVersion, final int newVersion, long created, CDOListFeatureDelta delta) { int oldListSize = delta.getOriginSize(); if (TRACER.isEnabled()) { TRACER.format("ListTableMapping.processDelta for object {0} - original list size: {1}", id, //$NON-NLS-1$ oldListSize); } // let the visitor collect the changes ListDeltaVisitor visitor = new ListDeltaVisitor(oldListSize); if (TRACER.isEnabled()) { TRACER.trace("Processing deltas..."); //$NON-NLS-1$ } for (CDOFeatureDelta listDelta : delta.getListChanges()) { listDelta.accept(visitor); } visitor.postProcess(accessor, id); // finally, write results to the database visitor.writeResultToDatabase(accessor, id); throw new NewListSizeResult(visitor.getNewListSize()); }
@Override public void visit(CDOListFeatureDelta deltas) { @SuppressWarnings("unchecked") List<Object> list = (List<Object>)((InternalCDORevision)oldRevision).getValue(deltas.getFeature()); if (list != null) { workList = new ArrayList<Object>(list); super.visit(deltas); } }
private static boolean canHaveResourcePathImpact(CDOListFeatureDelta featureDelta) { if (featureDelta != null) { for (CDOFeatureDelta listChange : featureDelta.getListChanges()) { CDOFeatureDelta.Type type = listChange.getType(); switch (type) { case REMOVE: case CLEAR: case SET: case UNSET: return true; } } } return false; }
public void visit(CDOListFeatureDelta delta) { delta.apply(newRevision); IListMappingDeltaSupport listMapping = (IListMappingDeltaSupport)getListMapping(delta.getFeature()); listMapping.processDelta(accessor, id, targetBranch.getID(), oldVersion, newVersion, created, delta); }
@Override public boolean isStructurallyEqual(Object obj) { if (!super.isStructurallyEqual(obj)) { return false; } CDOListFeatureDelta that = (CDOListFeatureDelta)obj; return ObjectUtil.equals(featureDeltas, that.getListChanges()); }
for (CDOFeatureDelta delta : listDelta.getListChanges())
public void addFeatureDelta(CDOFeatureDelta delta) { if (delta instanceof CDOListFeatureDelta) { CDOListFeatureDelta deltas = (CDOListFeatureDelta)delta; for (CDOFeatureDelta childDelta : deltas.getListChanges()) { addFeatureDelta(childDelta); } } else { addSingleFeatureDelta(delta); } }
@Override protected CDOFeatureDelta changedInSourceAndTargetManyValued(EStructuralFeature feature, CDOFeatureDelta targetFeatureDelta, CDOFeatureDelta sourceFeatureDelta) { if (targetFeatureDelta instanceof CDOListFeatureDelta && sourceFeatureDelta instanceof CDOListFeatureDelta) { CDOListFeatureDelta targetListDelta = (CDOListFeatureDelta)targetFeatureDelta.copy(); CDOListFeatureDelta sourceListDelta = (CDOListFeatureDelta)sourceFeatureDelta.copy(); CDOListFeatureDelta result = createResult(feature); List<CDOFeatureDelta> resultChanges = result.getListChanges(); List<CDOFeatureDelta> targetChanges = targetListDelta.getListChanges(); List<CDOFeatureDelta> sourceChanges = sourceListDelta.getListChanges(); handleListDelta(resultChanges, targetChanges, sourceChanges); handleListDelta(resultChanges, sourceChanges, null); return result; } return super.changedInSourceAndTargetManyValued(feature, targetFeatureDelta, sourceFeatureDelta); }
private static void dumpFeatureDeltas(PrintStream out, List<CDOFeatureDelta> featureDeltas) { for (CDOFeatureDelta featureDelta : featureDeltas) { if (featureDelta instanceof CDOListFeatureDelta) { CDOListFeatureDelta list = (CDOListFeatureDelta)featureDelta; dumpFeatureDeltas(out, list.getListChanges()); } else { dumpFeature(out, featureDelta.getFeature(), featureDelta); } } }
List<CDOFeatureDelta> listChanges = listFeatureDelta.getListChanges(); for (Iterator<CDOFeatureDelta> listIt = listChanges.iterator(); listIt.hasNext();)
List<CDOFeatureDelta> listChanges = listFeatureDelta.getListChanges(); for (Iterator<CDOFeatureDelta> listIt = listChanges.iterator(); listIt.hasNext();)
public void processDelta(final IDBStoreAccessor accessor, final CDOID id, final int branchId, int oldVersion, final int newVersion, long created, CDOListFeatureDelta delta) List<CDOFeatureDelta> listChanges = delta.getListChanges(); if (listChanges.size() == 0)
public void processDelta(final IDBStoreAccessor accessor, final CDOID id, final int branchId, final int oldVersion, final int newVersion, long created, CDOListFeatureDelta delta) List<CDOFeatureDelta> listChanges = delta.getListChanges(); if (listChanges.size() == 0)
List<CDOFeatureDelta> changes = listFeatureDelta.getListChanges(); CDOList originList = ((InternalCDORevision)originRevision).getList(feature); CDOList dirtyList = ((InternalCDORevision)dirtyRevision).getList(feature);