code: @Override
  	@SuppressWarnings (
  		value = {"unchecked"}
  	)
  	public boolean add(C container){
  
  		if(container == null){
  			throw new NullPointerException("The Container is null");
  		} // End if
  
  		if(container.getId() == null){
  			throw new NullPointerException("The identifier of the Container is null");
  		} // End if
  
  		if(container.getRegistry() != null){
  			throw new IllegalStateException("The Container is already registered with a Container registry");
  		}
  
  		if(contains(container)){
  			throw new IllegalArgumentException("Duplicate Container \"" + container.getId() + "\"");
  		}
  
  		this.containerMap.put(container.getId(), container);
  
  		if(this.ordering != null){
  			int index = Collections.binarySearch(getList(), container, this.ordering);
  
  			// Container not found
  			if(index < 0){
  				index = -(index + 1);
  			}
  
  			getList().add(index, container);
  		} else {
  			getList().add(container);
  		}
  
  		container.setState(State.ADDED);
  		container.setRegistry((R)this);
  
  		return true;
  	}
docs: @throws NullPointerException If the Container itself or its {@link Container#getId() Id attribute} is <code>null</code>.
  @throws IllegalStateException If the Container is already registered with a Container registry.
  @throws IllegalArgumentException If this Container registry already contains a Container with the same {@link Container#getId() Id attribute}.
  
  @return <code>true</code> Always.