@Override protected void signRequest(final OAuth20Service service, final OAuth2AccessToken accessToken, final OAuthRequest request) { request.addHeader(HttpConstants.CONTENT_TYPE_HEADER, HttpConstants.APPLICATION_JSON); request.addHeader(HttpConstants.AUTHORIZATION_HEADER, HttpConstants.BEARER_HEADER_PREFIX + accessToken.getAccessToken()); request.setPayload("null"); } }
MultipartFormEntityBytes bytes = ApacheHttpClientUtils.buildMultipartFormEntityBytes(params); request.addHeader(bytes.contentTypeName, bytes.contentTypeValue); request.setPayload(bytes.bytes); } else { data.getContentType().ifPresent(value -> request.addHeader("Content-Type", value));
@Override public void onAuthCodeReceived(String authCode) { authCallbackHandler.setListener(null); try { String contentJson = json.toJson(new CreateIssueBody(title, body)); OAuth2AccessToken accessToken = apiService.getAccessToken(authCode); OAuthRequest request = new OAuthRequest(Verb.POST, "https://api.github.com/repos/"+GITHUB_OWNER+"/"+GITHUB_REPO+"/issues"); request.setPayload(contentJson); apiService.signRequest(accessToken, request); Response response = apiService.execute(request); if (response.getCode() != 201) { resultHandler.onError(new IllegalStateException("GitHub returned bad code: " + response.getCode() + "\n" + response.getMessage() + "\n" + response.getBody())); } else { JsonValue jsonRoot = new JsonReader().parse(response.getBody()); String issueUrl = jsonRoot.getString("html_url"); resultHandler.onSuccess(issueUrl); } } catch (IOException | InterruptedException | ExecutionException | OAuthException e) { e.printStackTrace(); resultHandler.onError(e); } } });