Package com.persistit

Examples of com.persistit.KeyState


                }
            }
            final int saveSize = storeData.persistitKey.getEncodedSize();
            final boolean exact = dir == EQ || dir == GTEQ || dir == LTEQ;
            final boolean reverse = (dir == LT) || (dir == LTEQ);
            KeyState saveState = null;
           
            assert storeData.nudgeDir == null;
            if(!KeyShim.isSpecial(storeData.persistitKey)) {
                if(exact) {
                    if(reverse && !deep) {
                        // exact, reverse, logical: want to see current key or a child
                        // Note: child won't be returned, but current key will be synthesized by advanceLogical()
                        saveState = new KeyState(storeData.persistitKey);
                        // nudgeRight changes the content of the key
                        KeyShim.nudgeRight(storeData.persistitKey);
                        storeData.nudgeDir = FDBStoreData.NudgeDir.RIGHT;
                    }
                } else {
                    if(reverse) {
                        // Non-exact, reverse: do not want to see current key
                        KeyShim.nudgeLeft(storeData.persistitKey);
                        storeData.nudgeDir = FDBStoreData.NudgeDir.LEFT;
                    } else {
                        if(deep) {
                            // Non-exact, forward, deep: do not want to see current key
                            KeyShim.nudgeDeeper(storeData.persistitKey);
                            storeData.nudgeDir = FDBStoreData.NudgeDir.DEEPER;
                        } else {
                            // Non-exact, forward, logical: do not want to see current key or any children
                            saveState = new KeyState(storeData.persistitKey);
                            // nudgeRight changes the content of the key
                            KeyShim.nudgeRight(storeData.persistitKey);
                            storeData.nudgeDir = FDBStoreData.NudgeDir.RIGHT;
                        }
                    }
                }
            }

            adapter.getUnderlyingStore().indexIterator(adapter.getSession(), storeData,
                                                       exact, reverse);
            storeData.nudgeDir = null;
            if (saveState != null) {
                saveState.copyTo(storeData.persistitKey);
            }
            storeData.persistitKey.setEncodedSize(saveSize);
            lastKeyGen = storeData.persistitKey.getGeneration();
            itDir = dir;
        }
View Full Code Here


            key.append(null);
        }
        else {
            key.setDepth(depth);
        }
        return new KeyState(key);           
    }
View Full Code Here

        public DeferredReferencingCheck(Index index, Exchange exchange,
                                        RowData row, ForeignKey foreignKey,
                                        String operation) {
            this.index = index;
            this.key = new KeyState(exchange.getKey());
            this.row = row;
            this.foreignKey = foreignKey;
            this.operation = operation;
        }
View Full Code Here

            this.tableID = tableID;
        }

        private void advance() {
            byte[] bytes = iter.next();
            last = (bytes != null) ? new KeyState(bytes) : null;
        }
View Full Code Here

TOP

Related Classes of com.persistit.KeyState

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.