Java 类org.springframework.boot.json.JacksonJsonParser 实例源码

项目:spring-security-oauth    文件:OAuthMvcTest.java   
private String obtainAccessToken(String username, String password) throws Exception {
    final MultiValueMap<String, String> params = new LinkedMultiValueMap<>();
    params.add("grant_type", "password");
    params.add("client_id", CLIENT_ID);
    params.add("username", username);
    params.add("password", password);

    // @formatter:off

    ResultActions result = mockMvc.perform(post("/oauth/token")
                           .params(params)
                           .with(httpBasic(CLIENT_ID, CLIENT_SECRET))
                           .accept(CONTENT_TYPE))
                           .andExpect(status().isOk())
                           .andExpect(content().contentType(CONTENT_TYPE));

    // @formatter:on

    String resultString = result.andReturn().getResponse().getContentAsString();

    JacksonJsonParser jsonParser = new JacksonJsonParser();
    return jsonParser.parseMap(resultString).get("access_token").toString();
}
项目:microservices-dashboard-server    文件:NettyServiceCaller.java   
/**
 * Calls the remote service using the provided request, applies error handling and
 * converts the response into a {@link Map}. The entire request and response are
 * executed and handled in a hot observable.
 *
 * @param serviceId the id of the service for which the request is made
 * @param request   the request which has to be executed using RxNetty
 * @return an {@link Observable} emitting the JSON response as a Map with String keys
 * and Object values.
 */
public Observable<Map<String, Object>> retrieveJsonFromRequest(String serviceId, HttpClientRequest<ByteBuf> request) {
    RxClient.ServerInfo serverInfo = getServerInfoFromRequestOrClient(request, rxClient);

    return rxClient.submit(serverInfo, request)
            .publish().autoConnect()
            .doOnError(el -> errorHandler.handleNodeError(serviceId, format("Error retrieving node(s) for url {0} with headers {1}: {2}",
                    request.getUri(), request.getHeaders().entries(), el), el))
            .filter(r -> {
                if (r.getStatus().code() < 400) {
                    return true;
                } else {
                    errorHandler.handleNodeWarning(serviceId, "Exception " + r.getStatus() + " for url " + request.getUri() + " with headers " + r.getHeaders().entries());
                    return false;
                }
            })
            .flatMap(AbstractHttpContentHolder::getContent)
            .map(data -> data.toString(Charset.defaultCharset()))
            .map(response -> {
                JacksonJsonParser jsonParser = new JacksonJsonParser();
                return jsonParser.parseMap(response);
            })
            .doOnNext(r -> logger.info("Json retrieved from call: {}", r))
            .onErrorResumeNext(Observable.empty());
}
项目:sagan    文件:ProjectsMetadataApiTests.java   
public List<Object> getAndCheckProjectReleases(String projectId, String expectedProjectName) throws Exception {
    MvcResult result = mockMvc.perform(
            MockMvcRequestBuilders.get("/project_metadata/" + projectId
                    + "?callback=a_function_name")).andReturn();

    String content = result.getResponse().getContentAsString();

    String functionNameRegex = "^([^(]*)\\((.*)\\);$";
    Matcher matcher = Pattern.compile(functionNameRegex).matcher(content);
    if (matcher.find()) {
        assertThat(matcher.group(1), equalTo("/**/a_function_name"));

        Map<String, Object> projectMetadata = new JacksonJsonParser().parseMap(matcher.group(2));

        assertThat((String) projectMetadata.get("name"), equalTo(expectedProjectName));
        @SuppressWarnings("unchecked")
        List<Object> list = (List<Object>) projectMetadata.get("projectReleases");
        return list;
    } else {
        fail(String.format("no match found: %s", content));
        return null;
    }
}