private static void assertHandleIntoOTN(MarshallerReaderContext context,
InternalWorkingMemory wm,
InternalFactHandle handle,
List<PropagationContextImpl> pctxs) {
Object object = handle.getObject();
InternalWorkingMemoryEntryPoint ep = (InternalWorkingMemoryEntryPoint) handle.getEntryPoint();
ObjectTypeConf typeConf = ((InternalWorkingMemoryEntryPoint) handle.getEntryPoint()).getObjectTypeConfigurationRegistry().getObjectTypeConf( ep.getEntryPoint(),
object );
PropagationContextImpl propagationContext = new PropagationContextImpl( wm.getNextPropagationIdCounter(),
PropagationContext.INSERTION,
null,
null,
handle,
ep.getEntryPoint(),
context );
// keeping this list for a later cleanup is necessary because of the lazy propagations that might occur
pctxs.add( propagationContext );
ep.getEntryPointNode().assertObject( handle,
propagationContext,
typeConf,
wm );
propagationContext.evaluateActionQueue( wm );