Object instance = objectFactory.getInstance();
// handle @Init
if (initInvoker != null) {
initInvoker.invokeEvent(instance);
}
publish(new InstanceCreated(this));
lifecycleState = RUNNING;
if (stateless) {
return instance;
} else {
cachedTargetInstance = instance; // cache the instance