Rete extends ObjectSource implements
    Externalizable,
    ObjectSink { public List<ObjectTypeNode> getObjectTypeNodes() { List<ObjectTypeNode> allNodes = new LinkedList<ObjectTypeNode>(); for ( EntryPointNode node : this.entryPoints.values() ) { allNodes.addAll( node.getObjectTypeNodes().values() ); } return allNodes; } Rete();  Rete(InternalKnowledgeBase kBase); short getType(); void assertObject(final InternalFactHandle factHandle,
                             final PropagationContext context,
                             final InternalWorkingMemory workingMemory); void retractObject(final InternalFactHandle handle,
                              final PropagationContext context,
                              final InternalWorkingMemory workingMemory); void modifyObject(final InternalFactHandle factHandle,
                             final ModifyPreviousTuples modifyPreviousTuples,
                             final PropagationContext context,
                             final InternalWorkingMemory workingMemory); void addObjectSink(final ObjectSink objectSink); void removeObjectSink(final ObjectSink objectSink); void attach( BuildContext context ); void networkUpdated(UpdateContext updateContext); EntryPointNode getEntryPointNode(final EntryPointId entryPoint); List<ObjectTypeNode> getObjectTypeNodes(); Map<ObjectType, ObjectTypeNode> getObjectTypeNodes(EntryPointId entryPoint); @Override InternalKnowledgeBase getKnowledgeBase(); @Override boolean equals(final Object object); void updateSink(final ObjectSink sink,
                           final PropagationContext context,
                           final InternalWorkingMemory workingMemory); void writeExternal(ObjectOutput out); @SuppressWarnings("unchecked") void readExternal(ObjectInput in); Map<EntryPointId,EntryPointNode> getEntryPointNodes(); void byPassModifyToBetaNode(InternalFactHandle factHandle,
                                       ModifyPreviousTuples modifyPreviousTuples,
                                       PropagationContext context,
                                       InternalWorkingMemory workingMemory); @Override BitMask calculateDeclaredMask(Class modifiedClass, List<String> settableProperties);  }
@Test public void testAssertObjectWithNoMatchingObjectTypeNode() { StatefulKnowledgeSessionImpl ksession = (StatefulKnowledgeSessionImpl)kBase.newKieSession(); final Rete rete = kBase.getRete(); assertEquals(1, rete.getObjectTypeNodes().size()); List list = new ArrayList(); ksession.insert(list); ksession.fireAllRules(); assertEquals(1, rete.getObjectTypeNodes().size()); }