@Override
    protected HttpApiSpecificInfo doParse(final ApiBean.ApiDefinition apiDefinition) {

        RequestMapping requestMapping = apiDefinition.getAnnotation(RequestMapping.class);

        String produce = requestMapping.produces().length == 0 ? ShenyuClientConstants.MEDIA_TYPE_ALL_VALUE : String.join(",", requestMapping.produces());
        String consume = requestMapping.consumes().length == 0 ? ShenyuClientConstants.MEDIA_TYPE_ALL_VALUE : String.join(",", requestMapping.consumes());

        RequestMethod[] requestMethods = requestMapping.method();
        if (requestMethods.length == 0) {
            requestMethods = RequestMethod.values();
        }

        List<ApiHttpMethodEnum> apiHttpMethodEnums =
                Stream.of(requestMethods)
                        .map(item -> ApiHttpMethodEnum.of(item.name()))
                        .collect(Collectors.toList());

        return new HttpApiSpecificInfo(produce, consume, apiHttpMethodEnums);
    }
@Test
    public void testDoParse() throws Exception {
        
        ApiBean apiBean = createSimpleApiBean();
        
        AbstractApiDocRegistrar.HttpApiSpecificInfo httpApiSpecificInfo =
                httpApiDocRegistrar.doParse(apiBean.getApiDefinitions().get(0));
        List<ApiHttpMethodEnum> apiHttpMethodEnums =
                Lists.newArrayList(ApiHttpMethodEnum.values());
        
        apiHttpMethodEnums.remove(ApiHttpMethodEnum.NOT_HTTP);
        
        assertThat(httpApiSpecificInfo.getApiHttpMethodEnums(), Matchers.contains(
                apiHttpMethodEnums.toArray(new ApiHttpMethodEnum[0])));
        
        assertThat(httpApiSpecificInfo.getConsume(), Matchers.is("application/json"));
        
        assertThat(httpApiSpecificInfo.getProduce(), Matchers.is("application/json"));
        
    }