src/main/java/com/workplacesystems/utilsj/collections/TransactionalBidiTreeMap.java
public void rollback() {

        if (auto_commit)
            return;
        
        String id = getCurrentThreadId();

        ArrayList<Entry<K,V>> list = new ArrayList<Entry<K,V>>(allEntrySet());
        for (Iterator<Entry<K,V>> i = list.iterator(); i.hasNext(); ) {
            final Node<K,V> node = (Node<K,V>)i.next();

            if (node.is(Node.ADDED, id)) {
                doRedBlackDelete(node);
                if (rollback_notifiers != null)
                {
                    SyncUtils.synchronizeRead(rollback_notifiers, new Callback() {
                        @Override
                        protected void doAction()
                        {
                            for (Iterator i2 = rollback_notifiers.iterator(); i2.hasNext(); )
                                ((TransactionNotifiable)i2.next()).removedFromMap(node.getKey(), node.getValue());
                        }
                    });
                }
            }

            if (node.is(Node.DELETED, id)) {
                node.setStatus(Node.NO_CHANGE, null);
                if (rollback_notifiers != null)
                {
                    SyncUtils.synchronizeRead(rollback_notifiers, new Callback() {
                        @Override
                        protected void doAction()
                        {
                            for (Iterator i2 = rollback_notifiers.iterator(); i2.hasNext(); )
                                ((TransactionNotifiable)i2.next()).addedToMap(node.getKey(), node.getValue());
                        }
                    });
                }
            }
        }
    }
public void rollback() {

        if (auto_commit)
            return;
        
        String id = getCurrentThreadId();

        ArrayList<Entry<K,V>> list = new ArrayList<Entry<K,V>>(allEntrySet());
        for (Iterator<Entry<K,V>> i = list.iterator(); i.hasNext(); ) {
            final Node<K,V> node = (Node<K,V>)i.next();

            if (node.is(Node.ADDED, id)) {
                doRedBlackDelete(node);
                if (rollback_notifiers != null)
                {
                    SyncUtils.synchronizeRead(rollback_notifiers, new Callback() {
                        @Override
                        protected void doAction()
                        {
                            for (Iterator i2 = rollback_notifiers.iterator(); i2.hasNext(); )
                                ((TransactionNotifiable)i2.next()).removedFromMap(node.getKey(), node.getValue());
                        }
                    });
                }
            }

            if (node.is(Node.DELETED, id)) {
                node.setStatus(Node.NO_CHANGE, null);
                if (rollback_notifiers != null)
                {
                    SyncUtils.synchronizeRead(rollback_notifiers, new Callback() {
                        @Override
                        protected void doAction()
                        {
                            for (Iterator i2 = rollback_notifiers.iterator(); i2.hasNext(); )
                                ((TransactionNotifiable)i2.next()).addedToMap(node.getKey(), node.getValue());
                        }
                    });
                }
            }
        }
    }
public void rollback ( ) { if ( auto_commit ) return ; String id = getCurrentThreadId ( ) ; ArrayList < Entry < K , V > > list = new ArrayList < Entry < K , V > > ( allEntrySet ( ) ) ; for ( Iterator < Entry < K , V >> i = list . iterator ( ) ; i . hasNext ( ) ; ) { final Node < K , V > node = ( Node < K , V > ) i . next ( ) ; if ( node . is ( Node . ADDED , id ) ) { doRedBlackDelete ( node ) ; if ( rollback_notifiers != null ) { SyncUtils . synchronizeRead ( rollback_notifiers , new Callback ( ) { @ Override protected void doAction ( ) { for ( Iterator i2 = rollback_notifiers . iterator ( ) ; i2 . hasNext ( ) ; ) ( ( TransactionNotifiable ) i2 . next ( ) ) . removedFromMap ( node . getKey ( ) , node . getValue ( ) ) ; } } ) ; } } if ( node . is ( Node . DELETED , id ) ) { node . setStatus ( Node . NO_CHANGE , null ) ; if ( rollback_notifiers != null ) { SyncUtils . synchronizeRead ( rollback_notifiers , new Callback ( ) { @ Override protected void doAction ( ) { for ( Iterator i2 = rollback_notifiers . iterator ( ) ; i2 . hasNext ( ) ; ) ( ( TransactionNotifiable ) i2 . next ( ) ) . addedToMap ( node . getKey ( ) , node . getValue ( ) ) ; } } ) ; } } } }
Rolls back the changes to the map.
Rolls back the changes to the map .