public boolean addAccess(Accesses aAccess) { boolean wasAdded = false; if (accesses.contains(aAccess)) { return false; } if (accesses.contains(aAccess)) { return false; } if (accesses.contains(aAccess)) { return false; } if (accesses.contains(aAccess)) { return false; } BehaviouralElement existingBehaviouralElement = aAccess.getBehaviouralElement(); boolean isNewBehaviouralElement = existingBehaviouralElement != null && !this.equals(existingBehaviouralElement); if (isNewBehaviouralElement) { aAccess.setBehaviouralElement(this); } else { accesses.add(aAccess); } wasAdded = true; return wasAdded; }
public boolean removeAccess(Accesses aAccess) { boolean wasRemoved = false; // Unable to remove aAccess, as it must always have a behaviouralElement if (!this.equals(aAccess.getBehaviouralElement())) { accesses.remove(aAccess); wasRemoved = true; } return wasRemoved; }