code: @Override
      protected void processComponent(final Object component) {
          injectFields(component);
          if (component instanceof Initiated) {
              try {
                  ((Initiated) component).initiate();
              } catch (final Exception exception) {
                  throw new RuntimeException("Unable to initiate component: " + component, exception);
              }
          }
          if (component instanceof Destructible) {
              destructibles.add((Destructible) component);
          }
      }
docs: Note: this method should be invoked only with externally registered components.
  
  @param component will be initiated.
  @see #processScannedComponent(Object, Array)