@Override public void load(long id, E entity) { try { // READ LOCK locker.globalReadLock(); checkId(id); insider.getting(clazz, id); doTriggers(beforeRead, TriggerAction.BEFORE_READ, id, null, entity); get_(id, entity); doTriggers(afterRead, TriggerAction.AFTER_READ, id, null, entity); insider.got(clazz, id, entity); } finally { // READ UNLOCK locker.globalReadUnlock(); } }
@Override public void load(long id, E entity) { try { // READ LOCK locker.globalReadLock(); checkId(id); insider.getting(clazz, id); doTriggers(beforeRead, TriggerAction.BEFORE_READ, id, null, entity); get_(id, entity); doTriggers(afterRead, TriggerAction.AFTER_READ, id, null, entity); insider.got(clazz, id, entity); } finally { // READ UNLOCK locker.globalReadUnlock(); } }
@Override public void load(long id, E entity) { try { // READ LOCK locker.globalReadLock(); checkId(id); insider.getting(clazz, id); doTriggers(beforeRead, TriggerAction.BEFORE_READ, id, null, entity); get_(id, entity); doTriggers(afterRead, TriggerAction.AFTER_READ, id, null, entity); insider.got(clazz, id, entity); } finally { // READ UNLOCK locker.globalReadUnlock(); } }
private void deleteInTx(DatastoreTransaction tx, long id) { insider.deleting(clazz, id); E entity = get_(id); doTriggers(beforeDelete, TriggerAction.BEFORE_DELETE, id, entity, null); stats.deletes++; int row = row(id); // TODO check - changelog if not deleted rels? db.deleteRelsInTx(id, tx); // CHANGE #1 size--; // CHANGE #2 deletedCount++; // CHANGE #3 currentlyDeleted.add(row); // CHANGE #4 idColl.delete(id); // CHANGE #5 ids.remove(id); // CHANGE #6 changelog.add(TableChange.delete(id, row)); // CHANGELOG // TODO also delete old (renamed) columns? for (PropertyInfo prop : props) { deleteCell(tx, id, row, prop); } doTriggers(afterDelete, TriggerAction.AFTER_DELETE, id, entity, null); insider.deleted(clazz, id); }
private void deleteInTx(DatastoreTransaction tx, long id) { insider.deleting(clazz, id); E entity = get_(id); doTriggers(beforeDelete, TriggerAction.BEFORE_DELETE, id, entity, null); stats.deletes++; int row = row(id); // TODO check - changelog if not deleted rels? db.deleteRelsInTx(id, tx); // CHANGE #1 size--; // CHANGE #2 deletedCount++; // CHANGE #3 currentlyDeleted.add(row); // CHANGE #4 idColl.delete(id); // CHANGE #5 ids.remove(id); // CHANGE #6 changelog.add(TableChange.delete(id, row)); // CHANGELOG // TODO also delete old (renamed) columns? for (PropertyInfo prop : props) { deleteCell(tx, id, row, prop); } doTriggers(afterDelete, TriggerAction.AFTER_DELETE, id, entity, null); insider.deleted(clazz, id); }
private void deleteInTx(DatastoreTransaction tx, long id) { insider.deleting(clazz, id); E entity = get_(id); doTriggers(beforeDelete, TriggerAction.BEFORE_DELETE, id, entity, null); stats.deletes++; int row = row(id); // TODO check - changelog if not deleted rels? db.deleteRelsInTx(id, tx); // CHANGE #1 size--; // CHANGE #2 deletedCount++; // CHANGE #3 currentlyDeleted.add(row); // CHANGE #4 idColl.delete(id); // CHANGE #5 ids.remove(id); // CHANGE #6 changelog.add(TableChange.delete(id, row)); // CHANGELOG // TODO also delete old (renamed) columns? for (PropertyInfo prop : props) { deleteCell(tx, id, row, prop); } doTriggers(afterDelete, TriggerAction.AFTER_DELETE, id, entity, null); insider.deleted(clazz, id); }
@Override public E get(long id) { try { // READ LOCK locker.globalReadLock(); checkId(id); insider.getting(clazz, id); E entity = newEntity(); doTriggers(beforeRead, TriggerAction.BEFORE_READ, id, null, entity); get_(id, entity); doTriggers(afterRead, TriggerAction.AFTER_READ, id, null, entity); insider.got(clazz, id, entity); return entity; } finally { // READ UNLOCK locker.globalReadUnlock(); } }
private void doUpdate(long id, DatastoreTransaction tx, E entity) { E old = newEntity(), old2 = newEntity(), post = newEntity(); get_(id, old, old2); doTriggers(beforeUpdate, TriggerAction.BEFORE_UPDATE, id, old, entity); for (int i = 0; i < tmpIndices.length && tmpIndices[i] != null; i++) { tmpIndices[i] = null; } for (PropertyInfo pr : props) { Object val = pr.get(entity); setCell(tx, id, pr, val, tmpIndices); } doTriggers(afterUpdate, TriggerAction.AFTER_UPDATE, id, old, entity); get_(id, post); // old might be changed by triggers, so use old2 as protection doComplexIndices(tmpIndices, old2, post, id); }
@Override public E get(long id) { try { // READ LOCK locker.globalReadLock(); checkId(id); insider.getting(clazz, id); E entity = newEntity(); doTriggers(beforeRead, TriggerAction.BEFORE_READ, id, null, entity); get_(id, entity); doTriggers(afterRead, TriggerAction.AFTER_READ, id, null, entity); insider.got(clazz, id, entity); return entity; } finally { // READ UNLOCK locker.globalReadUnlock(); } }
@Override public E get(long id) { try { // READ LOCK locker.globalReadLock(); checkId(id); insider.getting(clazz, id); E entity = newEntity(); doTriggers(beforeRead, TriggerAction.BEFORE_READ, id, null, entity); get_(id, entity); doTriggers(afterRead, TriggerAction.AFTER_READ, id, null, entity); insider.got(clazz, id, entity); return entity; } finally { // READ UNLOCK locker.globalReadUnlock(); } }
private void doUpdate(long id, DatastoreTransaction tx, E entity) { E old = newEntity(), old2 = newEntity(), post = newEntity(); get_(id, old, old2); doTriggers(beforeUpdate, TriggerAction.BEFORE_UPDATE, id, old, entity); for (int i = 0; i < tmpIndices.length && tmpIndices[i] != null; i++) { tmpIndices[i] = null; } for (PropertyInfo pr : props) { Object val = pr.get(entity); setCell(tx, id, pr, val, tmpIndices); } doTriggers(afterUpdate, TriggerAction.AFTER_UPDATE, id, old, entity); get_(id, post); // old might be changed by triggers, so use old2 as protection doComplexIndices(tmpIndices, old2, post, id); }
private void doUpdate(long id, DatastoreTransaction tx, E entity) { E old = newEntity(), old2 = newEntity(), post = newEntity(); get_(id, old, old2); doTriggers(beforeUpdate, TriggerAction.BEFORE_UPDATE, id, old, entity); for (int i = 0; i < tmpIndices.length && tmpIndices[i] != null; i++) { tmpIndices[i] = null; } for (PropertyInfo pr : props) { Object val = pr.get(entity); setCell(tx, id, pr, val, tmpIndices); } doTriggers(afterUpdate, TriggerAction.AFTER_UPDATE, id, old, entity); get_(id, post); // old might be changed by triggers, so use old2 as protection doComplexIndices(tmpIndices, old2, post, id); }
doTriggers(beforeInsert, TriggerAction.BEFORE_INSERT, id, null, entity); doTriggers(afterInsert, TriggerAction.AFTER_INSERT, id, null, entity);
doTriggers(beforeInsert, TriggerAction.BEFORE_INSERT, id, null, entity); doTriggers(afterInsert, TriggerAction.AFTER_INSERT, id, null, entity);
doTriggers(beforeInsert, TriggerAction.BEFORE_INSERT, id, null, entity); doTriggers(afterInsert, TriggerAction.AFTER_INSERT, id, null, entity);