private List parseHandleMethodParameter()

in restful/src/main/java/org/apache/shardingsphere/elasticjob/restful/handler/Handler.java [80:98]


    private List<HandlerParameter> parseHandleMethodParameter() {
        List<HandlerParameter> params = new LinkedList<>();
        Parameter[] parameters = handleMethod.getParameters();
        for (int i = 0; i < parameters.length; i++) {
            Parameter parameter = parameters[i];
            Param annotation = parameter.getAnnotation(Param.class);
            HandlerParameter handlerParameter;
            RequestBody requestBody;
            if (null != annotation) {
                handlerParameter = new HandlerParameter(i, parameter.getType(), annotation.source(), annotation.name(), annotation.required());
            } else if (null != (requestBody = parameter.getAnnotation(RequestBody.class))) {
                handlerParameter = new HandlerParameter(i, parameter.getType(), ParamSource.BODY, parameter.getName(), requestBody.required());
            } else {
                handlerParameter = new HandlerParameter(i, parameter.getType(), ParamSource.UNKNOWN, parameter.getName(), false);
            }
            params.add(handlerParameter);
        }
        return Collections.unmodifiableList(params);
    }