public class ClassHierarchyManager extends Object
Modifier and Type | Field and Description |
---|---|
protected KnowledgeBuilderImpl |
kbuilder |
protected List<AbstractClassTypeDeclarationDescr> |
sortedDescriptors |
protected Map<QualifiedName,Collection<QualifiedName>> |
taxonomy |
Constructor and Description |
---|
ClassHierarchyManager(Collection<AbstractClassTypeDeclarationDescr> unsortedDescrs,
KnowledgeBuilderImpl kbuilder) |
Modifier and Type | Method and Description |
---|---|
void |
addDeclarationToPackagePreservingOrder(org.drools.core.rule.TypeDeclaration type,
AbstractClassTypeDeclarationDescr typeDescr,
org.drools.core.definitions.InternalKnowledgePackage tgtPackage,
Map<String,PackageRegistry> pkgRegistryMap) |
protected TypeFieldDescr |
buildInheritedFieldDescrFromDefinition(org.kie.api.definition.type.FactField fld,
TypeDeclarationDescr typeDescr) |
List<AbstractClassTypeDeclarationDescr> |
getSortedDescriptors() |
protected static boolean |
hasCircularDependency(QualifiedName name,
QualifiedName typeName,
Map<QualifiedName,Collection<QualifiedName>> taxonomy) |
void |
inheritFields(PackageRegistry pkgRegistry,
AbstractClassTypeDeclarationDescr typeDescr,
Collection<AbstractClassTypeDeclarationDescr> sortedTypeDescriptors,
List<org.drools.compiler.builder.impl.TypeDefinition> unresolvedTypes,
Map<String,AbstractClassTypeDeclarationDescr> unprocessableDescrs) |
protected boolean |
mergeFields(String simpleSuperTypeName,
String superTypePackageName,
String fullSuper,
TypeDeclarationDescr typeDescr,
List<org.drools.compiler.builder.impl.TypeDefinition> unresolvedTypes,
Map<String,AbstractClassTypeDeclarationDescr> unprocessableDescrs,
org.drools.core.base.TypeResolver resolver) |
protected boolean |
mergeInheritedFields(TypeDeclarationDescr typeDescr,
List<org.drools.compiler.builder.impl.TypeDefinition> unresolvedTypes,
Map<String,AbstractClassTypeDeclarationDescr> unprocessableDescrs,
org.drools.core.base.TypeResolver typeResolver)
In order to build a declared class, the fields inherited from its
superclass(es) are added to its declaration.
|
protected List<AbstractClassTypeDeclarationDescr> |
sortByHierarchy(Collection<AbstractClassTypeDeclarationDescr> unsortedDescrs,
KnowledgeBuilderImpl kbuilder)
Utility method to sort declared beans.
|
protected KnowledgeBuilderImpl kbuilder
protected List<AbstractClassTypeDeclarationDescr> sortedDescriptors
protected Map<QualifiedName,Collection<QualifiedName>> taxonomy
public ClassHierarchyManager(Collection<AbstractClassTypeDeclarationDescr> unsortedDescrs, KnowledgeBuilderImpl kbuilder)
public List<AbstractClassTypeDeclarationDescr> getSortedDescriptors()
protected List<AbstractClassTypeDeclarationDescr> sortByHierarchy(Collection<AbstractClassTypeDeclarationDescr> unsortedDescrs, KnowledgeBuilderImpl kbuilder)
protected static boolean hasCircularDependency(QualifiedName name, QualifiedName typeName, Map<QualifiedName,Collection<QualifiedName>> taxonomy)
public void inheritFields(PackageRegistry pkgRegistry, AbstractClassTypeDeclarationDescr typeDescr, Collection<AbstractClassTypeDeclarationDescr> sortedTypeDescriptors, List<org.drools.compiler.builder.impl.TypeDefinition> unresolvedTypes, Map<String,AbstractClassTypeDeclarationDescr> unprocessableDescrs)
protected boolean mergeInheritedFields(TypeDeclarationDescr typeDescr, List<org.drools.compiler.builder.impl.TypeDefinition> unresolvedTypes, Map<String,AbstractClassTypeDeclarationDescr> unprocessableDescrs, org.drools.core.base.TypeResolver typeResolver)
typeDescr
- The base class descriptor, to be completed with the inherited
fields descriptorsprotected boolean mergeFields(String simpleSuperTypeName, String superTypePackageName, String fullSuper, TypeDeclarationDescr typeDescr, List<org.drools.compiler.builder.impl.TypeDefinition> unresolvedTypes, Map<String,AbstractClassTypeDeclarationDescr> unprocessableDescrs, org.drools.core.base.TypeResolver resolver)
protected TypeFieldDescr buildInheritedFieldDescrFromDefinition(org.kie.api.definition.type.FactField fld, TypeDeclarationDescr typeDescr)
public void addDeclarationToPackagePreservingOrder(org.drools.core.rule.TypeDeclaration type, AbstractClassTypeDeclarationDescr typeDescr, org.drools.core.definitions.InternalKnowledgePackage tgtPackage, Map<String,PackageRegistry> pkgRegistryMap)
Copyright © 2001–2018 JBoss by Red Hat. All rights reserved.