Class DataStructureFactory


  • public class DataStructureFactory
    extends java.lang.Object
    Build transactional datastructures using Proxy. Any operation on BTree or PagedList or similar may result in several writes to the NodeStore. The TransactionalNodeStore collects those operations and executes them at one time. It also skips operations that are obviated by later operations. For example, writes are skipped if a delete happens later in the history. However, TransactionalNodeStore.commit() must be called manually. This set of factories proxy calls to data structures so that they may be wrapped with calls to TransactionalNodeStore.commit()}.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static <USERKEY,​STOREKEY,​VALUE>
      BTreeMap<USERKEY,​VALUE>
      bTree​(USERKEY root, NodeStore<USERKEY,​STOREKEY,​VALUE> nodeStore)  
      static <USERKEY,​STOREKEY,​VALUE>
      BTreeMap<USERKEY,​VALUE>
      bTree​(USERKEY root, NodeStore<USERKEY,​STOREKEY,​VALUE> nodeStore, int size)  
      static <USERKEY,​STOREKEY,​VALUE>
      java.util.Map<USERKEY,​VALUE>
      map​(USERKEY root, NodeStore<USERKEY,​STOREKEY,​VALUE> nodeStore)  
      static <STOREKEY,​VALUE>
      java.util.List<VALUE>
      pagedList​(STOREKEY root, NodeStore<STOREKEY,​STOREKEY,​VALUE> nodeStore)  
      static <STOREKEY,​VALUE>
      java.util.List<VALUE>
      pagedList​(STOREKEY root, NodeStore<STOREKEY,​STOREKEY,​VALUE> nodeStore, int size)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • pagedList

        public static <STOREKEY,​VALUE> java.util.List<VALUE> pagedList​(STOREKEY root,
                                                                             NodeStore<STOREKEY,​STOREKEY,​VALUE> nodeStore,
                                                                             int size)
      • pagedList

        public static <STOREKEY,​VALUE> java.util.List<VALUE> pagedList​(STOREKEY root,
                                                                             NodeStore<STOREKEY,​STOREKEY,​VALUE> nodeStore)
      • bTree

        public static <USERKEY,​STOREKEY,​VALUE> BTreeMap<USERKEY,​VALUE> bTree​(USERKEY root,
                                                                                               NodeStore<USERKEY,​STOREKEY,​VALUE> nodeStore,
                                                                                               int size)
      • map

        public static <USERKEY,​STOREKEY,​VALUE> java.util.Map<USERKEY,​VALUE> map​(USERKEY root,
                                                                                                  NodeStore<USERKEY,​STOREKEY,​VALUE> nodeStore)
      • bTree

        public static <USERKEY,​STOREKEY,​VALUE> BTreeMap<USERKEY,​VALUE> bTree​(USERKEY root,
                                                                                               NodeStore<USERKEY,​STOREKEY,​VALUE> nodeStore)