/** * Unlock the record if it was in a locked state, does nothing otherwise. * * @return self {@link StateRecord} */ public StateRecord unlock() { switch (state) { case LOCKED: setState(ItemState.APPROVED); setLockedByRecordId(0); break; case LOCKED_FOR_CREATION: destroy(); break; default: break; } return this; }
@Override public StateRecord createOutputLockRecord(long creatorRecordId, HashId newItemHashId) { StateRecord r = new StateRecord(this); r.setState(ItemState.LOCKED_FOR_CREATION); r.setLockedByRecordId(creatorRecordId); r.setId(newItemHashId); try { r.save(); return r; } catch (Ledger.Failure e) { return null; } }
@Override public StateRecord createOutputLockRecord(long creatorRecordId, HashId newItemHashId) { StateRecord r = new StateRecord(this); r.setState(ItemState.LOCKED_FOR_CREATION); r.setLockedByRecordId(creatorRecordId); r.setId(newItemHashId); try { r.save(); return r; } catch (Failure e) { e.printStackTrace(); return null; } catch (Exception e) { e.printStackTrace(); return null; } }
lockedRecord.setLockedByRecordId(recordId); lockedRecord.setState(ItemState.LOCKED); lockedRecord.save();
originRecord.setLockedByRecordId(newRevisionRecord.getRecordId()); newContractRecord.setState(ItemState.LOCKED_FOR_CREATION); newContractRecord.setLockedByRecordId(newRevisionRecord.getRecordId()); newRevisionRecord.setState(finalI < N/2 ? ItemState.PENDING_POSITIVE : ItemState.PENDING_NEGATIVE);
originRecord.setLockedByRecordId(newRevisionRecord.getRecordId()); newContractRecord.setState(ItemState.LOCKED_FOR_CREATION); newContractRecord.setLockedByRecordId(newRevisionRecord.getRecordId()); newRevisionRecord.setState(finalI < N/2 ? ItemState.PENDING_POSITIVE : ItemState.PENDING_NEGATIVE);
for (int i = 0; i < subContracts.size(); i++) { StateRecord sr = n.getLedger().getRecord(subContracts.get(i).getId()); sr.setLockedByRecordId(sr.getRecordId()); sr.save();
for (int i = 0; i < subContracts.size(); i++) { StateRecord sr = n.getLedger().getRecord(subContracts.get(i).getId()); sr.setLockedByRecordId(sr.getRecordId()); sr.save();
originRecord.setLockedByRecordId(newRevisionRecord.getRecordId()); newContractRecord.setState(ItemState.LOCKED_FOR_CREATION); newContractRecord.setLockedByRecordId(newRevisionRecord.getRecordId()); newRevisionRecord.setState(finalI < N/2 ? ItemState.PENDING_POSITIVE : ItemState.PENDING_NEGATIVE);