code: protected void register(final Class<? extends Component<?>> interfaceClass, final Class<? extends Component<?>> implClass, final PriorityLevel priority, final int weight) {
  
          preloadClass(interfaceClass);
  
          getFacade().componentFactory().register(
                                                  RegistrationItemBase.create()
                                                                      .interfaceClass(interfaceClass)
                                                                      .implClass(implClass)
                                                                      .priority(priority)
                                                                      .weight(weight));
      }
docs: Register a new component implementation.
  
  @param interfaceClass the interface class implemented
  @param implClass the implementation class
  @param priority the priority level
  @param weight the priority weight strictly less than 1000