Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private void cascadeDelete(MyRow<Value> o){
- ArrayList<ReferenceValue> rv = new ArrayList<ReferenceValue>();
- for(Value v: o){
- if(v instanceof ReferenceValue){
- rv.add((ReferenceValue) v);
- }
- }
- values.remove(o);
- for(ReferenceValue value : rv){
- Table table = backReference.backReference.table(value.table());
- MyRow referencedRow = (MyRow) table.row(value.keys());
- cascadeDelete(referencedRow);
- }
- }
- @Override
- public boolean remove(Object o) {
- cascadeDelete((MyRow<Value>) o);
- return true;
- }
- @Override
- public E remove(int index) {
- E value = (E) values.get(index);
- cascadeDelete((MyRow<Value>) value);
- return value;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement