org.neo4j.kernel.impl.util
Class RelIdArray

java.lang.Object
  extended by org.neo4j.kernel.impl.util.RelIdArray
Direct Known Subclasses:
RelIdArray.EmptyRelIdArray, RelIdArrayWithLoops

public class RelIdArray
extends Object


Nested Class Summary
static class RelIdArray.DirectionWrapper
           
static class RelIdArray.EmptyRelIdArray
           
static class RelIdArray.IdBlock
           
static class RelIdArray.RelIdIteratorImpl
           
 
Field Summary
static RelIdArray EMPTY
           
static RelIdArray.IdBlock EMPTY_BLOCK
           
 
Constructor Summary
protected RelIdArray(RelIdArray from)
           
  RelIdArray(String type)
           
protected RelIdArray(String type, RelIdArray.IdBlock out, RelIdArray.IdBlock in)
           
 
Method Summary
 void add(long id, RelIdArray.DirectionWrapper direction)
           
 RelIdArray addAll(RelIdArray source)
           
protected  void append(RelIdArray source, RelIdArray.DirectionWrapper direction)
           
 boolean couldBeNeedingUpdate()
          Optimization in the lazy loading of relationships for a node.
 RelIdArray downgradeIfPossible()
           
static RelIdArray empty(String type)
           
static RelIdArray from(RelIdArray src, RelIdArray add, Collection<Long> remove)
           
protected  RelIdArray.IdBlock getLastLoopBlock()
           
 String getType()
           
 boolean isEmpty()
           
 RelIdIterator iterator(RelIdArray.DirectionWrapper direction)
           
 RelIdArray newSimilarInstance()
           
protected  void setLastLoopBlock(RelIdArray.IdBlock block)
           
 RelIdArray shrink()
           
 RelIdArray upgradeIfNeeded(RelIdArray capabilitiesToMatch)
           
static RelIdArray.DirectionWrapper wrap(Direction direction)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EMPTY

public static RelIdArray EMPTY

EMPTY_BLOCK

public static final RelIdArray.IdBlock EMPTY_BLOCK
Constructor Detail

RelIdArray

public RelIdArray(String type)

RelIdArray

protected RelIdArray(RelIdArray from)

RelIdArray

protected RelIdArray(String type,
                     RelIdArray.IdBlock out,
                     RelIdArray.IdBlock in)
Method Detail

empty

public static RelIdArray empty(String type)

getType

public String getType()

add

public void add(long id,
                RelIdArray.DirectionWrapper direction)

addAll

public RelIdArray addAll(RelIdArray source)

getLastLoopBlock

protected RelIdArray.IdBlock getLastLoopBlock()

shrink

public RelIdArray shrink()

setLastLoopBlock

protected void setLastLoopBlock(RelIdArray.IdBlock block)

upgradeIfNeeded

public RelIdArray upgradeIfNeeded(RelIdArray capabilitiesToMatch)

downgradeIfPossible

public RelIdArray downgradeIfPossible()

append

protected void append(RelIdArray source,
                      RelIdArray.DirectionWrapper direction)

isEmpty

public boolean isEmpty()

iterator

public RelIdIterator iterator(RelIdArray.DirectionWrapper direction)

newSimilarInstance

public RelIdArray newSimilarInstance()

wrap

public static RelIdArray.DirectionWrapper wrap(Direction direction)

from

public static RelIdArray from(RelIdArray src,
                              RelIdArray add,
                              Collection<Long> remove)

couldBeNeedingUpdate

public boolean couldBeNeedingUpdate()
Optimization in the lazy loading of relationships for a node. RelIdIterator.updateSource(RelIdArray) is only called if this returns true, i.e if a RelIdArray.EmptyRelIdArray or RelIdArray.IdBlock might have gotten upgraded to handle f.ex loops or high id ranges so that the RelIdIterator gets updated accordingly.



Copyright © 2002-2012 The Neo4j Graph Database Project. All Rights Reserved.