@Override
		public void invokeNext(Request request, Response response,
				ValveContext valveContext) throws ValveException {
			int subscript = stage;
			stage = stage + 1;
			// Invoke the requested Valve for the current request thread
			if (subscript < valves.length) {
				valves[subscript].invoke(this);
			} else if (subscript == valves.length && (basic != null)) {
				basic.invoke(this);
			} else {
				throw new ValveException(404, "No valve");
			}
		}