Java Code Examples for org.springframework.web.bind.annotation.RequestMapping.method()

The following are Jave code examples for showing how to use method() of the org.springframework.web.bind.annotation.RequestMapping class. You can vote up the examples you like. Your votes will be used in our system to get more good examples.
Example 1
Project: RestyPass   File: RequestMappingProcessor.java   Source Code and License Vote up 5 votes
@Override
public boolean process(RestyRequestTemplate requestTemplate, Annotation annotation) {

    RequestMapping methodMapping = ANNOTATION.cast(annotation);
    // HTTP Method
    RequestMethod[] methods = methodMapping.method();
    if (methods.length == 0) {
        methods = new RequestMethod[]{RequestMethod.GET};
    }
    checkOne(methods, "method");
    requestTemplate.setHttpMethod(methods[0].name());

    // path
    checkAtMostOne(methodMapping.value(), "value");
    if (methodMapping.value().length > 0) {
        String pathValue = emptyToNull(methodMapping.value()[0]);
        if (pathValue != null) {
            pathValue = resolve(pathValue);
            // Append path from @RequestMapping if value is present on httpMethod
            if (!pathValue.startsWith("/")) {
                pathValue = "/" + pathValue;
            }
            requestTemplate.setMethodUrl(pathValue);
        }
    }

    // produces #不需要解析consumes, 无视接口返回的content-type,只处理application/json
    // parseProduces(requestTemplate, method, methodMapping);

    // consumes #不需要解析consumes, 无视接口所需的content-type,只提交application/json
    // parseConsumes(requestTemplate, method, methodMapping);

    // params
    parseParams(requestTemplate, null, methodMapping);

    // headers
    parseHeaders(requestTemplate, null, methodMapping);
    return false;
}
 
Example 2
Project: xDoc   File: SpringXDocOutputImpl.java   Source Code and License Vote up 5 votes
/**
 * 获取接口上允许的访问方式
 *
 * @param requestMappingAnno
 * @return
 */
protected List<String> getMethods(RequestMapping requestMappingAnno) {
    List<String> methods = new ArrayList<String>();
    RequestMethod[] method = requestMappingAnno.method();
    for (RequestMethod requestMethod : method) {
        methods.add(requestMethod.name());
    }
    return methods;
}
 
Example 3
Project: openapi-annotation-processor   File: SpringParser.java   Source Code and License Vote up 5 votes
private void addOperation(Path path, Operation operation, RequestMapping requestMapping) {
    RequestMethod[] methods = requestMapping.method();
    if (methods.length == 0) {
        methods = new RequestMethod[]{RequestMethod.GET};
    }
    Stream.of(methods)
            .forEach(requestMethod -> path.set(requestMethod.name().toLowerCase(), operation));
}
 
Example 4
Project: meparty   File: RestApiProxyInvocationHandler.java   Source Code and License Vote up 4 votes
/**
 * Searches {@link org.springframework.web.bind.annotation.RequestMapping RequestMapping}
 * annotation on the given method argument and extracts
 * If RequestMapping annotation is not found, NoRequestMappingFoundException is thrown.
 * {@link org.springframework.http.HttpMethod HttpMethod} type equivalent to
 * {@link org.springframework.web.bind.annotation.RequestMethod RequestMethod} type
 *
 * @param element AnnotatedElement object to be examined.
 * @return Mapping object
 */
Mapping extractMapping(AnnotatedElement element) {
  Annotation annotation = findMappingAnnotation(element);
  String[] urls;
  RequestMethod requestMethod;
  String consumes;

  if (annotation instanceof RequestMapping) {
    RequestMapping requestMapping = (RequestMapping) annotation;
    requestMethod = requestMapping.method().length == 0
        ? RequestMethod.GET : requestMapping.method()[0];
    urls = requestMapping.value();
    consumes = StringHelper.getFirstOrEmpty(requestMapping.consumes());

  } else if (annotation instanceof GetMapping) {

    requestMethod = RequestMethod.GET;
    urls = ((GetMapping) annotation).value();
    consumes = StringHelper.getFirstOrEmpty(((GetMapping) annotation).consumes());

  } else if (annotation instanceof PostMapping) {

    requestMethod = RequestMethod.POST;
    urls = ((PostMapping) annotation).value();
    consumes = StringHelper.getFirstOrEmpty(((PostMapping) annotation).consumes());

  } else if (annotation instanceof PutMapping) {

    requestMethod = RequestMethod.PUT;
    urls = ((PutMapping) annotation).value();
    consumes = StringHelper.getFirstOrEmpty(((PutMapping) annotation).consumes());

  } else if (annotation instanceof DeleteMapping) {

    requestMethod = RequestMethod.DELETE;
    urls = ((DeleteMapping) annotation).value();
    consumes = StringHelper.getFirstOrEmpty(((DeleteMapping) annotation).consumes());

  } else if (annotation instanceof PatchMapping) {

    requestMethod = RequestMethod.PATCH;
    urls = ((PatchMapping) annotation).value();
    consumes = StringHelper.getFirstOrEmpty(((PatchMapping) annotation).consumes());

  } else {
    throw new NoRequestMappingFoundException(element);
  }

  HttpMethod httpMethod = HttpMethod.resolve(requestMethod.name());
  String url = StringHelper.getFirstOrEmpty(urls);

  MediaType mediaType;
  try {
    mediaType =  MediaType.valueOf(consumes);
  } catch (InvalidMediaTypeException exception) {
    mediaType = MediaType.APPLICATION_JSON_UTF8;
  }

  return new Mapping(httpMethod, url, mediaType);

}