context.getRuleBase().getConfiguration().isMultithreadEvaluation(),
objectSource,
context.getRuleBase().getConfiguration().getAlphaNodeHashingThreshold());
// needs to be cloned as the list is managed externally
this.constraints = new ArrayList<AlphaNodeFieldConstraint>(constraints);
this.behavior = new BehaviorManager(behaviors);
this.entryPoint = context.getCurrentEntryPoint();
for ( Behavior b : behaviors ) {
if ( b instanceof SlidingTimeWindow ) {
((SlidingTimeWindow)b).setWindowNode( this );
}