net.ajaest.jdk.data.dict
Class TreeDatabaseManager

java.lang.Object
  extended by net.ajaest.jdk.data.dict.TreeDatabaseManager
All Implemented Interfaces:
DatabaseManager<KanjiTag,KanjiExpression>

public class TreeDatabaseManager
extends java.lang.Object
implements DatabaseManager<KanjiTag,KanjiExpression>

This class provides methods to manage a kanji database.

Author:
Luis Alfonso Arce González

Nested Class Summary
private  class TreeDatabaseManager.FrequencyRefComparator
           
 
Field Summary
private  org.neodatis.odb.impl.core.query.criteria.CriteriaQuery cq
           
private  TreeDatabaseManager.FrequencyRefComparator frc
           
private  org.neodatis.odb.ODB kanjiDb
           
private  org.neodatis.odb.Objects<KanjiTag> kanjis
           
private  TreeContainer kanjiTree
           
private  KanjiDatabaseInfo kdbi
           
private  java.util.Set<KanjiTag> previousSearch
           
private  java.util.Set<java.lang.Integer> previousSearchRefs
           
 
Constructor Summary
TreeDatabaseManager(java.io.File zobj, java.io.File jdk)
           
TreeDatabaseManager(java.lang.String zobjPath, java.lang.String jdkPath)
           
 
Method Summary
 void close()
          Closes the database
 java.util.Set<KanjiTag> executeQuery(KanjiExpression query)
           
 java.util.Set<java.lang.Integer> executeRefQuery(KanjiExpression query)
           
 KanjiTag getKanji(java.lang.Integer unicode)
           
 KanjiDatabaseInfo getKanjiDatabaseInformation()
           
 org.neodatis.odb.ODB getLowLevelKanjiDatabaseManager()
           
 TreeContainer getTreeContainer()
           
private  void initKanjiDB(java.io.File jdk)
           
private  void initTrees(java.io.File zobj)
           
static void main(java.lang.String... args)
           
 void sortRefs(KanjiSortExpression kse, java.util.List<java.lang.Integer> elems)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

kdbi

private KanjiDatabaseInfo kdbi

kanjiDb

private org.neodatis.odb.ODB kanjiDb

kanjis

private org.neodatis.odb.Objects<KanjiTag> kanjis

cq

private org.neodatis.odb.impl.core.query.criteria.CriteriaQuery cq

kanjiTree

private TreeContainer kanjiTree

previousSearchRefs

private java.util.Set<java.lang.Integer> previousSearchRefs

previousSearch

private java.util.Set<KanjiTag> previousSearch

frc

private TreeDatabaseManager.FrequencyRefComparator frc
Constructor Detail

TreeDatabaseManager

public TreeDatabaseManager(java.lang.String zobjPath,
                           java.lang.String jdkPath)
                    throws java.io.IOException
Throws:
java.io.IOException

TreeDatabaseManager

public TreeDatabaseManager(java.io.File zobj,
                           java.io.File jdk)
Method Detail

executeRefQuery

public java.util.Set<java.lang.Integer> executeRefQuery(KanjiExpression query)

executeQuery

public java.util.Set<KanjiTag> executeQuery(KanjiExpression query)
Specified by:
executeQuery in interface DatabaseManager<KanjiTag,KanjiExpression>
Parameters:
query - an object representing a criteria
Returns:
a list of objects that matches the specified criteria.

getKanji

public KanjiTag getKanji(java.lang.Integer unicode)

getKanjiDatabaseInformation

public KanjiDatabaseInfo getKanjiDatabaseInformation()

getLowLevelKanjiDatabaseManager

public org.neodatis.odb.ODB getLowLevelKanjiDatabaseManager()

getTreeContainer

public TreeContainer getTreeContainer()

sortRefs

public void sortRefs(KanjiSortExpression kse,
                     java.util.List<java.lang.Integer> elems)

close

public void close()
Description copied from interface: DatabaseManager
Closes the database

Specified by:
close in interface DatabaseManager<KanjiTag,KanjiExpression>

initKanjiDB

private void initKanjiDB(java.io.File jdk)

initTrees

private void initTrees(java.io.File zobj)

main

public static void main(java.lang.String... args)
                 throws java.io.IOException
Throws:
java.io.IOException