/** * @see java.util.Vector#add(java.lang.Object) */ public boolean add(Object element) { if (!this.isRegistered) { return getDelegate().add(element); } boolean added = true; // PERF: If not instantiated just record the add to avoid the instantiation. if (shouldAvoidInstantiation()) { if (hasRemovedElements() && getRemovedElements().contains(element)) { getRemovedElements().remove(element); } else if (getAddedElements().contains(element)) { // Must avoid recursion for relationship maintenance. return false; } else { getAddedElements().add(element); } } else { added = getDelegate().add(element); } raiseAddChangeEvent(element, null); return added; }
/** * @see java.util.Vector#add(java.lang.Object) */ @Override public boolean add(E element) { if (!this.isRegistered) { return getDelegate().add(element); } boolean added = true; // PERF: If not instantiated just record the add to avoid the instantiation. if (shouldAvoidInstantiation()) { if (hasRemovedElements() && getRemovedElements().contains(element)) { getRemovedElements().remove(element); } else if (isRelationshipMaintenanceRequired() && getAddedElements().contains(element)) { // Must avoid recursion for relationship maintenance. return false; } else { getAddedElements().add(element); } } else { added = getDelegate().add(element); } raiseAddChangeEvent(element, null); return added; }
/** * @see java.util.Vector#add(java.lang.Object) */ @Override public boolean add(E element) { if (!this.isRegistered) { return getDelegate().add(element); } boolean added = true; // PERF: If not instantiated just record the add to avoid the instantiation. if (shouldAvoidInstantiation()) { if (hasRemovedElements() && getRemovedElements().contains(element)) { getRemovedElements().remove(element); } else if (isRelationshipMaintenanceRequired() && getAddedElements().contains(element)) { // Must avoid recursion for relationship maintenance. return false; } else { getAddedElements().add(element); } } else { added = getDelegate().add(element); } raiseAddChangeEvent(element, null); return added; }
/** * @see java.util.Vector#remove(java.lang.Object) */ public boolean remove(Object element) { if (!this.isRegistered) { return getDelegate().remove(element); } // PERF: If not instantiated just record the removal to avoid the instantiation. if (shouldAvoidInstantiation()) { if (hasAddedElements() && getAddedElements().contains(element)) { getAddedElements().remove(element); } else if (getRemovedElements().contains(element)) { // Must avoid recursion for relationship maintenance. return false; } else { getRemovedElements().add(element); } this.raiseRemoveChangeEvent(element, null); return true; } else { int index = this.getDelegate().indexOf(element); if(index > -1) { this.getDelegate().remove(index); this.raiseRemoveChangeEvent(element, index); return true; } } return false; }
/** * @see java.util.Vector#remove(java.lang.Object) */ @Override public boolean remove(Object element) { if (!this.isRegistered) { return getDelegate().remove(element); } // PERF: If not instantiated just record the removal to avoid the instantiation. if (shouldAvoidInstantiation()) { if (hasAddedElements() && getAddedElements().contains(element)) { getAddedElements().remove(element); } else if (getRemovedElements().contains(element)) { // Must avoid recursion for relationship maintenance. return false; } else { getRemovedElements().add((E) element); } this.raiseRemoveChangeEvent(element, null); return true; } else { int index = this.getDelegate().indexOf(element); if(index > -1) { this.getDelegate().remove(index); this.raiseRemoveChangeEvent(element, index); return true; } } return false; }
/** * @see java.util.Vector#remove(java.lang.Object) */ @Override public boolean remove(Object element) { if (!this.isRegistered) { return getDelegate().remove(element); } // PERF: If not instantiated just record the removal to avoid the instantiation. if (shouldAvoidInstantiation()) { if (hasAddedElements() && getAddedElements().contains(element)) { getAddedElements().remove(element); } else if (getRemovedElements().contains(element)) { // Must avoid recursion for relationship maintenance. return false; } else { getRemovedElements().add(element); } this.raiseRemoveChangeEvent(element, null); return true; } else { int index = this.getDelegate().indexOf(element); if(index > -1) { this.getDelegate().remove(index); this.raiseRemoveChangeEvent(element, index); return true; } } return false; }