예제 #1
0
파일: HTree.java 프로젝트: yeins/vietspider
  /**
   * Create a persistent hashtable.
   *
   * @param recman Record manager used for persistence.
   */
  public static <K, V> HTree<K, V> createInstance(
      RecordManager recman, Serializer<K> keySerializer, Serializer<V> valueSerializer)
      throws IOException {
    HashDirectory<K, V> root;
    long recid;

    HTree<K, V> tree = new HTree<K, V>();
    tree.keySerializer = keySerializer;
    tree.valueSerializer = valueSerializer;

    tree._root = new HashDirectory<K, V>(tree, (byte) 0);
    recid = recman.insert(tree._root, tree.SERIALIZER);
    tree._root.setPersistenceContext(recman, recid);

    return tree;
  }