public OIdentifiable update(final OIdentifiable iValue) { final Iterator<OIdentifiable> underlying = getCurrentIterator(); if (underlying instanceof OLazyIterator) { final OIdentifiable old = ((OLazyIterator<OIdentifiable>) underlying).update(iValue); if (sourceRecord != null && !old.equals(iValue)) sourceRecord.setDirty(); return old; } else throw new UnsupportedOperationException( "Underlying iterator not supports lazy updates (Interface OLazyIterator"); }
public void setDirty() { if (sourceRecord != null) sourceRecord.setDirty(); }
public void remove() { final Iterator<OIdentifiable> underlying = getCurrentIterator(); underlying.remove(); if (sourceRecord != null) sourceRecord.setDirty(); }