void initialize(final Object object, final Descriptor descriptor, final boolean isDelayable) { final InitializationType initializationType = getInitializationType(object, descriptor, isDelayable); if (initializationType == InitializationType.IMMEDIATE) { performInitialization(object, descriptor); } else if (initializationType == InitializationType.DELAYEBLE) { addPendingInitialization(object, descriptor); } else { final String objectName = descriptor.getName(); if (objectName != null) { set(objectName, object); } } }