org.drools.util
Class HierarchyEncoderImpl<T>
java.lang.Object
org.drools.util.AbstractCodedHierarchyImpl<T>
org.drools.util.CodedHierarchyImpl<T>
org.drools.util.HierarchyEncoderImpl<T>
- Type Parameters:
T -
- All Implemented Interfaces:
- Externalizable, Serializable, CodedHierarchy<T>, HierarchyEncoder<T>
public class HierarchyEncoderImpl<T>
- extends CodedHierarchyImpl<T>
- implements HierarchyEncoder<T>, Externalizable
Encodes a hierachy using bit masks, according to the algorithm described in
M.F. van Bommel, P. Wang, Encoding Multiple Inheritance Hierarchies for Lattice Operations
Data & Knowledge Enfineering 50 (2004) 175-194
- See Also:
- Serialized Form
| Methods inherited from class org.drools.util.AbstractCodedHierarchyImpl |
addMember, ancestorNodes, ancestors, ancestors, ancestorValues, children, children, childrenValues, contains, descendantNodes, descendants, descendants, descendantValues, getCode, getMember, getNodeByKey, getNodes, getSortedMap, getSortedMembers, hasKey, immediateChildren, immediateParents, isEmpty, joinCode, jointMembersCode, lowerBorder, lowerDescendants, meetCode, metMembersCode, numBit, parents, parents, parentValues, remove, removeMember, removeMember, size, stringToBitSet, supersetOrEqualset, toBinaryString, toBinaryString, upperAncestors, upperBorder |
| Methods inherited from interface org.drools.util.CodedHierarchy |
addMember, ancestors, ancestors, children, children, descendants, descendants, getCode, getMember, getSortedMap, getSortedMembers, hasKey, immediateChildren, immediateParents, joinCode, jointMembersCode, lowerBorder, lowerDescendants, meetCode, metMembersCode, parents, parents, removeMember, removeMember, size, upperAncestors, upperBorder |
HierarchyEncoderImpl
public HierarchyEncoderImpl()
getBottom
public BitSet getBottom()
- Specified by:
getBottom in interface HierarchyEncoder<T>
writeExternal
public void writeExternal(ObjectOutput objectOutput)
throws IOException
- Specified by:
writeExternal in interface Externalizable- Overrides:
writeExternal in class AbstractCodedHierarchyImpl<T>
- Throws:
IOException
readExternal
public void readExternal(ObjectInput objectInput)
throws IOException,
ClassNotFoundException
- Specified by:
readExternal in interface Externalizable- Overrides:
readExternal in class AbstractCodedHierarchyImpl<T>
- Throws:
IOException
ClassNotFoundException
encode
public BitSet encode(T member,
Collection<T> parents)
- Specified by:
encode in interface HierarchyEncoder<T>
add
protected void add(AbstractCodedHierarchyImpl.HierNode<T> node)
- Overrides:
add in class CodedHierarchyImpl<T>
clear
public void clear()
- Specified by:
clear in interface HierarchyEncoder<T>- Overrides:
clear in class AbstractCodedHierarchyImpl<T>
encode
protected void encode(AbstractCodedHierarchyImpl.HierNode<T> node)
resolveConflicts
protected void resolveConflicts(AbstractCodedHierarchyImpl.HierNode<T> x)
modify
protected void modify(AbstractCodedHierarchyImpl.HierNode<T> x,
AbstractCodedHierarchyImpl.HierNode<T> y)
updateMask
protected void updateMask(AbstractCodedHierarchyImpl.HierNode<T> node,
BitSet mask)
inheritMerged
protected void inheritMerged(AbstractCodedHierarchyImpl.HierNode<T> x)
gcs
protected Set<AbstractCodedHierarchyImpl.HierNode<T>> gcs(Set<AbstractCodedHierarchyImpl.HierNode<T>> set)
ceil
protected Set<AbstractCodedHierarchyImpl.HierNode<T>> ceil(Set<AbstractCodedHierarchyImpl.HierNode<T>> s)
floor
protected Set<AbstractCodedHierarchyImpl.HierNode<T>> floor(Set<AbstractCodedHierarchyImpl.HierNode<T>> s)
propagate
protected void propagate(AbstractCodedHierarchyImpl.HierNode<T> y,
int bit)
freeBit
protected int freeBit(AbstractCodedHierarchyImpl.HierNode<T> x)
freeBit
protected int freeBit(AbstractCodedHierarchyImpl.HierNode<T> x,
AbstractCodedHierarchyImpl.HierNode<T> z)
incomparable
protected boolean incomparable(AbstractCodedHierarchyImpl.HierNode<T> c1,
AbstractCodedHierarchyImpl.HierNode<T> c2)
Copyright © 2001-2013 JBoss by Red Hat. All Rights Reserved.