this.reentrant_set = true;
}
public Component eval(){
checkMandatory("name", name);
final Component target = getMandatory();
final String phase = name.toLowerCase(Locale.US)
.trim();
if(DefaultLifecycleDescriptor
.DEFAULT_INITIALIZER_NAME.equals(phase)){
//initializer runs right away.
return target;
}
else{
//The object identity of the factory determines if this factory
//can be called multiple times by the lifecycle manager.
//so cannot use singleton even if it carries no state.
final Component factory =
target.factory();
final LifecycleManager man = super.getNutEnvironment()
.getLifecycleManager();
final Lifecycle lifecycle = new Lifecycle();
lifecycle.put(phase, FactoryProcedure.instance(), isReentrant(phase));