final Activation activation,
final PropagationContext context,
final RuleImpl rule,
final ObjectTypeConf typeConf,
final boolean read) {
BeliefSystem beliefSystem = defaultBeliefSystem;
if ( value != null && value instanceof Mode & !( value instanceof SimpleMode ) ) {
Mode mode = (Mode) value;
beliefSystem = (BeliefSystem) mode.getBeliefSystem();
}
BeliefSet beliefSet = handle.getEqualityKey().getBeliefSet();
if ( beliefSet == null ) {
if ( context.getType() == PropagationContext.MODIFICATION ) {
// if this was a update, chances are its trying to retract a logical assertion
}
beliefSet = beliefSystem.newBeliefSet( handle );
handle.getEqualityKey().setBeliefSet( beliefSet );
}
final LogicalDependency node = beliefSystem.newLogicalDependency( activation, beliefSet, object, value );
activation.getRule().setHasLogicalDependency( true );
activation.addLogicalDependency( node );
if ( read ) {
// used when deserialising
beliefSystem.read( node, beliefSet, context, typeConf );
} else {
beliefSystem.insert( node, beliefSet, context, typeConf );
}
}