org.semanticweb.elk.reasoner.taxonomy
Class ConcurrentClassTaxonomy

java.lang.Object
  extended by org.semanticweb.elk.reasoner.taxonomy.ConcurrentClassTaxonomy
All Implemented Interfaces:
Taxonomy<ElkClass>, UpdateableTaxonomy<ElkClass>

public class ConcurrentClassTaxonomy
extends Object
implements UpdateableTaxonomy<ElkClass>

Class taxonomy that is suitable for concurrent processing. Taxonomy objects are only constructed for consistent ontologies, and some consequences of this are hardcoded here.

Author:
Yevgeny Kazakov, Frantisek Simancik, Markus Kroetzsch, Pavel Klinov

Nested Class Summary
protected  class ConcurrentClassTaxonomy.BottomClassNode
          Special implementation for the bottom node in the taxonomy.
 
Constructor Summary
ConcurrentClassTaxonomy()
           
 
Method Summary
 boolean addToBottomNode(ElkClass elkClass)
           
 TaxonomyNode<ElkClass> getBottomNode()
           
 UpdateableTaxonomyNode<ElkClass> getCreateNode(Collection<ElkClass> members)
           
protected  org.semanticweb.elk.reasoner.taxonomy.NonBottomClassNode getCreateNonBottomClassNode(Collection<ElkClass> members)
           
 TaxonomyNode<ElkClass> getNode(ElkClass elkClass)
          Returns the TaxonomyNode containing the given ElkObject as a member or null if the input does not occur in the taxonomy.
 Set<? extends TaxonomyNode<ElkClass>> getNodes()
          Obtain an unmodifiable Set of all nodes in this taxonomy.
 org.semanticweb.elk.reasoner.taxonomy.NonBottomClassNode getTopNode()
           
 UpdateableBottomNode<ElkClass> getUpdateableBottomNode()
           
 UpdateableTaxonomyNode<ElkClass> getUpdateableNode(ElkClass elkObject)
           
 Set<? extends UpdateableTaxonomyNode<ElkClass>> getUpdateableNodes()
           
 UpdateableTaxonomyNode<ElkClass> getUpdateableTopNode()
           
 boolean removeNode(UpdateableTaxonomyNode<ElkClass> node)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConcurrentClassTaxonomy

public ConcurrentClassTaxonomy()
Method Detail

getNode

public TaxonomyNode<ElkClass> getNode(ElkClass elkClass)
Description copied from interface: Taxonomy
Returns the TaxonomyNode containing the given ElkObject as a member or null if the input does not occur in the taxonomy.

Specified by:
getNode in interface Taxonomy<ElkClass>
Parameters:
elkClass - the ElkObject for which to return the TaxonomyNode
Returns:
the TaxonomyNode for the specified input ElkObject

getNodes

public Set<? extends TaxonomyNode<ElkClass>> getNodes()
Description copied from interface: Taxonomy
Obtain an unmodifiable Set of all nodes in this taxonomy.

Specified by:
getNodes in interface Taxonomy<ElkClass>
Returns:
an unmodifiable Collection

getTopNode

public org.semanticweb.elk.reasoner.taxonomy.NonBottomClassNode getTopNode()
Specified by:
getTopNode in interface Taxonomy<ElkClass>
Returns:
the node of this taxonomy that has no parent nodes

getBottomNode

public TaxonomyNode<ElkClass> getBottomNode()
Specified by:
getBottomNode in interface Taxonomy<ElkClass>
Returns:
the node of this taxonomy that has no child nodes

getUpdateableBottomNode

public UpdateableBottomNode<ElkClass> getUpdateableBottomNode()
Specified by:
getUpdateableBottomNode in interface UpdateableTaxonomy<ElkClass>

getCreateNonBottomClassNode

protected org.semanticweb.elk.reasoner.taxonomy.NonBottomClassNode getCreateNonBottomClassNode(Collection<ElkClass> members)

addToBottomNode

public boolean addToBottomNode(ElkClass elkClass)
Specified by:
addToBottomNode in interface UpdateableTaxonomy<ElkClass>

getCreateNode

public UpdateableTaxonomyNode<ElkClass> getCreateNode(Collection<ElkClass> members)
Specified by:
getCreateNode in interface UpdateableTaxonomy<ElkClass>

removeNode

public boolean removeNode(UpdateableTaxonomyNode<ElkClass> node)
Specified by:
removeNode in interface UpdateableTaxonomy<ElkClass>

getUpdateableNode

public UpdateableTaxonomyNode<ElkClass> getUpdateableNode(ElkClass elkObject)
Specified by:
getUpdateableNode in interface UpdateableTaxonomy<ElkClass>

getUpdateableTopNode

public UpdateableTaxonomyNode<ElkClass> getUpdateableTopNode()
Specified by:
getUpdateableTopNode in interface UpdateableTaxonomy<ElkClass>

getUpdateableNodes

public Set<? extends UpdateableTaxonomyNode<ElkClass>> getUpdateableNodes()
Specified by:
getUpdateableNodes in interface UpdateableTaxonomy<ElkClass>


Copyright © 2011-2013 Department of Computer Science, University of Oxford. All Rights Reserved.