code: @Override
  	protected HttpRequestBase onInitiate(ProcessorChainLink<HttpRequestBase, RequestProcessorException> root, Object... args) {
  		
  		InvocationContext context = assertAssignable(assertNotEmpty(args)[0], InvocationContext.class);
  		
  		HttpRequestBase request = RequestUtils.translateRequestMethod(context);
  		
  		return root.getProcessor().run(context, request); //allow any exceptions to elevate to a chain-wide failure
  	}
docs: <p>Accepts the {@link InvocationContext} given to {@link #run(Object...)}} the {@link RequestProcessorChain}
  and translates the request metadata to a concrete instance of {@link HttpRequestBase}. The
  {@link HttpRequestBase}, together with the {@link InvocationContext} is then given to the root link
  which runs the {@link UriProcessor} and returns the resulting {@link HttpRequestBase}.</p>
  
  <p>See {@link AbstractRequestProcessor}.</p>
  
  {@inheritDoc}