code: @SuppressWarnings("unchecked")
  	// Suppressing warnings since Commons Collections is gangster...
  	@Override
  	public void addBindings(Bindings bindings) {
  		try {
  			SlingHttpServletRequest request = (SlingHttpServletRequest) bindings
  					.get("request");
  			String resourceType = request.getResource().getResourceType();
  			Collection<ComponentBindingsProvider> cis = cif
  					.getComponentBindingsProviders(resourceType);
  			if (cis != null && cis.size() > 0) {
  				CQVariables variables = variablesService.getVariables(bindings);
  				for (ComponentBindingsProvider ci : cis) {
  					try {
  						log.debug("Invoking component bindings provider {}", ci);
  						ci.addBindings(variables, bindings);
  					} catch (Exception e) {
  						log.error(
  								"Exception invoking component bindings provider "
  										+ ci, e);
  						recentExceptions
  								.add(new ComponentBindingsExceptionData(ci, e));
  					}
  				}
  			}
  		} catch (Exception e) {
  			log.error("Exception invoking component binding providers", e);
  		}
  	}
docs: /*
  (non-Javadoc)
  
  @see
  org.apache.sling.scripting.api.BindingsValuesProvider#addBindings(javax
  .script.Bindings)