code: public void register(Object locator, IComponentFactory factory) {
  		if (locator == null)
  			throw new NullPointerException("Locator cannot be null");
  		if (factory == null)
  			throw new NullPointerException("Factory cannot be null");
  
  		_registrations.add(new Registration(locator, factory));
  	}
docs: Registers a component using a factory method.
  
  @param locator a locator to identify component to be created.
  @param factory a factory function that receives a locator and returns a
  created component.