@Override public Request reset(final String name) { return this.base.reset(name); }
@Override public Request reset(final String name) { return this.base.reset(name); }
@Override public Request reset(final String name) { return this.base.reset(name); }
@Override public Request reset(final String name) { return new SearchRequest(this.request.reset(name)); } @Override
@Override public InputStream raw() throws IOException { return new ByteArrayInputStream( this.request.reset(HttpHeaders.ACCEPT) .header( HttpHeaders.ACCEPT, "application/vnd.github.v3.raw" ).fetch() .as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_OK).binary() ); } }
/** * Get raw release asset content. * * @see <a href="http://developer.github.com/v3/repos/releases/">Releases API</a> * @return Stream with content * @throws IOException If some problem inside. */ @Override public InputStream raw() throws IOException { return new ByteArrayInputStream( this.request.method(Request.GET) .reset(HttpHeaders.ACCEPT).header( HttpHeaders.ACCEPT, "application/vnd.github.v3.raw" ) .fetch() .as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_OK) .binary() ); }
@Override public String diff( final String base, final String head) throws IOException { return this.comp.reset(HttpHeaders.ACCEPT) .header(HttpHeaders.ACCEPT, "application/vnd.github.v3.diff") .uri() .path(String.format("%s...%s", base, head)) .back() .fetch().as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_OK) .body(); }
@Override public String patch( final String base, final String head) throws IOException { return this.comp.reset(HttpHeaders.ACCEPT) .header(HttpHeaders.ACCEPT, "application/vnd.github.v3.patch") .uri() .path(String.format("%s...%s", base, head)) .back() .fetch().as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_OK) .body(); }
@Override public String template( final String name) throws IOException { return this.request.reset(HttpHeaders.ACCEPT) .header(HttpHeaders.ACCEPT, "application/vnd.github.v3.raw") .uri().path(name).back().fetch() .as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_OK) .body(); } }
@Override public String raw( final String text) throws IOException { return this.request .body() .set(text) .back() .uri().path("raw").back() .reset(HttpHeaders.CONTENT_TYPE) .header(HttpHeaders.CONTENT_TYPE, MediaType.TEXT_PLAIN) .fetch() .as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_OK) .assertHeader( HttpHeaders.CONTENT_TYPE, Matchers.everyItem( Matchers.startsWith(MediaType.TEXT_HTML) ) ) .body(); }
@Override public ReleaseAsset upload( final byte[] content, final String type, final String name ) throws IOException { return this.get( this.request.uri() .set(URI.create("https://uploads.github.com")) .path("/repos") .path(this.owner.repo().coordinates().user()) .path(this.owner.repo().coordinates().repo()) .path("/releases") .path(String.valueOf(this.owner.number())) .path("/assets") .queryParam("name", name) .back() .method(Request.POST) .reset(HttpHeaders.CONTENT_TYPE) .header(HttpHeaders.CONTENT_TYPE, type) .body().set(content).back() .fetch().as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_CREATED) .as(JsonResponse.class) .json().readObject().getInt("id") ); }