/** * Public ctor. * @param github Github * @param req Request */ RtLimits( final Github github, final Request req ) { this.entry = req.uri().path("rate_limit").back(); this.ghub = github; }
/** * Public ctor. * @param github Github * @param req Request */ RtGists(final Github github, final Request req) { this.entry = req; this.ghub = github; this.request = this.entry.uri().path("/gists").back(); }
/** * Public CTOR. * @param github Github */ public RtGitignores( final Github github) { this.ghub = github; this.request = github().entry().uri() .path("/gitignore/templates").back(); }
@Override public void remove(final int number) throws IOException { this.request.method(Request.DELETE) .uri().path(Integer.toString(number)).back() .fetch() .as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_NO_CONTENT); }
@Override public void unlock() { try { this.request.method(Request.DELETE).uri().path("/lock").back() .fetch() .as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_NO_CONTENT); } catch (final IOException error) { throw new IllegalStateException(error); } }
@Override public void remove(final int number) throws IOException { this.request.method(Request.DELETE) .uri().path(Integer.toString(number)).back() .fetch() .as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_NO_CONTENT); }
@Override public void remove(final int number) throws IOException { this.request.uri().path(String.valueOf(number)).back() .method(Request.DELETE) .fetch().as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_NO_CONTENT); } }
@Override public void delete(final String name) throws IOException { this.request.method(Request.DELETE) .uri().path(name).back() .fetch() .as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_NO_CONTENT); }
@Override public Iterable<Reaction> reactions() { return new RtPagination<>( this.request.uri().path("/reactions").back(), (object) -> new Reaction.Simple(object.getString(RtComment.CONTENT)) ); } }
@Override public JsonObject meta() throws IOException { return this.request.uri().path("meta").back().fetch() .as(JsonResponse.class) .json().readObject(); }
@Override public void star() throws IOException { this.request.uri().path("star").back() .method("PUT") .fetch().as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_NO_CONTENT); }
@Override public JsonObject emojis() throws IOException { return this.request.uri().path("emojis").back().fetch() .as(JsonResponse.class) .json().readObject(); }
@Override public void unstar() throws IOException { this.request.uri().path("star").back() .method(Request.DELETE) .fetch().as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_NO_CONTENT); }
@Override public void publicize( final User user ) throws IOException { this.request .uri().path(user.login()).back() .method(Request.PUT) .fetch().as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_NO_CONTENT); }
@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 boolean starred() throws IOException { return this.request.uri().path("star").back() .method("GET").fetch() .as(RestResponse.class).assertStatus( Matchers.isOneOf( HttpURLConnection.HTTP_NO_CONTENT, HttpURLConnection.HTTP_NOT_FOUND ) ).status() == HttpURLConnection.HTTP_NO_CONTENT; }
@Override public Gist fork() throws IOException { return new RtGist( this.ghub, this.entry, this.request.uri().path("/forks").back() .method(Request.POST) .fetch().as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_CREATED) .as(JsonResponse.class) .json().readObject().getString("id") ); }