{
this.size++;
DSetEntry entry = new DSetEntry(this, o);
elements.add(entry);
// if we are in a transaction: get locks !
TransactionImpl tx = getTransaction();
if ((tx != null) && (tx.isOpen()))
{
tx.lock(this, Transaction.WRITE);
tx.lock(entry, Transaction.WRITE);
tx.lock(o, Transaction.READ);
}
return true;
}
else
{