code: protected ToolConsumer buildToolConsumerProfile(HttpServletRequest request, Map<String, Object> deploy, String profile_id)
  	{
  		// Load the configuration data
  		LTI2Config cnf = new org.imsglobal.lti2.LTI2ConfigSample();
  
  		ToolConsumer consumer = new ToolConsumer(profile_id, "LTI-2p0", getServiceURL(request), cnf);
  
  		// Normally we would check permissions before we offer capabilities
  		List<String> capabilities = consumer.getCapability_offered();
  		LTI2Util.allowEmail(capabilities);
  		LTI2Util.allowName(capabilities);
  		LTI2Util.allowSettings(capabilities);
  		LTI2Util.allowResult(capabilities);
  
  		// Normally we would check permissions before we offer services
  		List<ServiceOffered> services = consumer.getService_offered();
  		services.add(StandardServices.LTI2Registration(getServiceURL(request) +
  			SVC_tc_registration + "/" + profile_id));
  		services.add(StandardServices.LTI2ResultItem(getServiceURL(request) +
  			SVC_Result + "/{" + BasicLTIConstants.LIS_RESULT_SOURCEDID + "}"));
  		services.add(StandardServices.LTI2LtiLinkSettings(getServiceURL(request) +
  			SVC_Settings + "/" + LTI2Util.SCOPE_LtiLink + "/{" + BasicLTIConstants.RESOURCE_LINK_ID + "}"));
  		services.add(StandardServices.LTI2ToolProxySettings(getServiceURL(request) +
  			SVC_Settings + "/" + LTI2Util.SCOPE_ToolProxyBinding + "/{" + BasicLTIConstants.CONTEXT_ID + "}"));
  		services.add(StandardServices.LTI2ToolProxySettings(getServiceURL(request) +
  			SVC_Settings + "/" + LTI2Util.SCOPE_ToolProxy + "/{" + LTI2Constants.TOOL_PROXY_GUID + "}"));
  		return consumer;
  	}
docs: it is always null and we allow everything