code: public Object create(Object locator) throws CreateException {
  		if (locator == null)
  			throw new NullPointerException("Locator cannot be null");
  
  		// Iterate from the latest factories
  		for (int index = _factories.size() - 1; index >= 0; index--) {
  			IFactory factory = _factories.get(index);
  			if (factory.canCreate(locator) != null)
  				return factory.create(locator);
  		}
  
  		throw new CreateException(null, locator);
  	}
docs: Creates a component identified by given locator.
  
  @param locator a locator to identify component to be created.
  @return the created component.
  
  @throws CreateException if the factory is not able to create the component.