private Object scanAnnotation(AQuery $, Class<?> type, Annotation annotation, Ajax ajax) throws Exception { if (annotation instanceof Header) { return ajax.getHeaders().get(((Header) annotation).value()); } else if (annotation instanceof Headers) { return ajax.getHeaders(); } else if (annotation instanceof Method) { return ajax.getMethod(); } else if (annotation instanceof NetError) { if (type == int.class || type == Integer.class) { return getVolleyErrorType(ajax.getResponseError()); } return ajax.getResponseError(); } else if (annotation instanceof Param) { return ajax.getParams().get(((Param) annotation).value()); } else if (annotation instanceof Params) { return ajax.getParams(); } else if (annotation instanceof RequestBody) { return antiSerialize($, type, ajax.getRequestBody()); } else if (annotation instanceof RequestEntity) { if (type == Request.class) return ajax.getRequestEntity(); if (type == Ajax.class) return ajax; } else if (annotation instanceof RequestID) { return ajax.hashCode(); } else if (annotation instanceof ResponseBody) { return antiSerialize($, type, ajax.getResponseBody()); } else if (annotation instanceof URL) { return ajax.getURL(); } return null; }