public void run() { if(SUtil.arrayToSet(SFlyweightFunctionality.getBeliefNames(getState(), getHandle(), getScope())).contains(name)) { IBelief bel = (IBelief)SFlyweightFunctionality.getBelief(getState(), getHandle(), getScope(), name); bel.setFact(value); } else if(SUtil.arrayToSet(SFlyweightFunctionality.getBeliefSetNames(getState(), getHandle(), getScope())).contains(name)) { IBeliefSet belset = (IBeliefSet)SFlyweightFunctionality.getBeliefSet(getState(), getHandle(), getScope(), name); belset.removeFacts(); if(SReflect.isIterable(value)) { for(Iterator it=SReflect.getIterator(value); it.hasNext(); ) { belset.addFact(it.next()); } } else { belset.addFact(value); } } else { throw new RuntimeException("Unknown belief/set name: "+name); } } };
belset.removeFacts(); if(SReflect.isIterable(value))