/** * Send a request with payload. */ private ResponseEntity retrieveResponseFromRequest( final String method, final String uri, final String payload, final MediaType payloadType, final int responseCode, final MediaType accept, final List<Pair<String,Predicate<String>>> headerFields ) { ClientRequest request; try { if ( payload != null ) { request = withHeaders( REQUEST_BUILDER ).type( payloadType ).accept( accept ).entity( payload ) .build( new URI( uri ), method ); } else { request = withHeaders( REQUEST_BUILDER ).accept( accept ).build( new URI( uri ), method ); } } catch ( URISyntaxException e ) { throw new RuntimeException( e ); } return retrieveResponse( uri, responseCode, accept, headerFields, request ); }
public GedcomxApplicationState post(E entity, StateTransitionOption... options) { ClientRequest.Builder builder = createAuthenticatedRequest(); Object accept = this.request.getHeaders().getFirst("Accept"); Object contentType = this.request.getHeaders().getFirst("Content-Type"); if (accept != null) { builder = builder.accept(String.valueOf(accept)); } if (contentType != null) { builder = builder.type(String.valueOf(contentType)); } ClientRequest request = builder.entity(entity).build(getSelfUri(), HttpMethod.POST); return clone(request, invoke(request, options)); }
public GedcomxApplicationState put(E entity, StateTransitionOption... options) { ClientRequest.Builder builder = createAuthenticatedRequest(); Object accept = this.request.getHeaders().getFirst("Accept"); Object contentType = this.request.getHeaders().getFirst("Content-Type"); if (accept != null) { builder = builder.accept(String.valueOf(accept)); } if (contentType != null) { builder = builder.type(String.valueOf(contentType)); } ClientRequest request = builder.entity(entity).build(getSelfUri(), HttpMethod.PUT); return clone(request, invoke(request, options)); }
.type(MediaType.APPLICATION_FORM_URLENCODED_TYPE) .entity(formData) .build(tokenUri, HttpMethod.POST);
ClientRequest request = state.createAuthenticatedGedcomxRequest().type(MediaType.MULTIPART_FORM_DATA_TYPE).entity(multiPart).build(link.getHref().toURI(), HttpMethod.POST); return state.stateFactory.newSourceDescriptionState(request, state.invoke(request, options), state.accessToken);
ClientRequest request = createAuthenticatedGedcomxRequest().type(MediaType.MULTIPART_FORM_DATA_TYPE).entity(multiPart).build(link.getHref().toURI(), HttpMethod.POST); return this.stateFactory.newSourceDescriptionState(request, invoke(request, options), this.accessToken);
private void reportSync(final Measurement[] measurements) { final ClientRequest request = ClientRequest.create() .type(MediaType.APPLICATION_JSON_TYPE) .entity(measurements) .build(batchResource.getURI(), HttpMethod.POST); final ClientResponse response; try { response = batchResource.getHeadHandler().handle(request); } catch (final ClientHandlerException e) { LOGGER.log(Level.WARNING, String.format("Unable to send measurements to %s", batchResource.getURI()), e); saveMeasurements(measurements); return; } switch (response.getStatus()) { case 204: case 200: LOGGER.fine("Successfully submitted measurements"); //only one thread can be used for resending measurements at a time if (resending.compareAndSet(false, true)) try { resendMeasurements(); } finally { resending.set(false); } return; default: LOGGER.warning(String.format("Failed to submit measurements. Response code is %s (%s)", response.getStatus(), response.getStatusInfo().getReasonPhrase())); saveMeasurements(measurements); } }
protected GedcomxApplicationState readPage(String rel, StateTransitionOption... options) { Link link = getLink(rel); if (link == null || link.getHref() == null) { return null; } ClientRequest.Builder builder = createAuthenticatedRequest(); Object accept = this.request.getHeaders().getFirst("Accept"); Object contentType = this.request.getHeaders().getFirst("Content-Type"); if (accept != null) { builder = builder.accept(String.valueOf(accept)); } if (contentType != null) { builder = builder.type(String.valueOf(contentType)); } ClientRequest request = builder.build(link.getHref().toURI(), HttpMethod.GET); return clone(request, invoke(request, options)); }
public static ClientRequest.Builder applyFamilySearchConneg(ClientRequest.Builder request) { return request.accept(FamilySearchPlatform.JSON_MEDIA_TYPE).type(FamilySearchPlatform.JSON_MEDIA_TYPE); }
protected ClientRequest.Builder createAuthenticatedGedcomxRequest() { return createAuthenticatedRequest().accept(GedcomxConstants.GEDCOMX_JSON_MEDIA_TYPE).type(GedcomxConstants.GEDCOMX_JSON_MEDIA_TYPE); }
protected ClientRequest.Builder createAuthenticatedFeedRequest() { return createAuthenticatedRequest().accept(AtomModel.ATOM_GEDCOMX_JSON_MEDIA_TYPE).type(AtomModel.ATOM_GEDCOMX_JSON_MEDIA_TYPE); }
public static ClientRequest.Builder applyFamilySearchXml(ClientRequest.Builder request) { return request.accept(AtomModel.ATOM_XML_MEDIA_TYPE).type(GedcomxConstants.GEDCOMX_XML_MEDIA_TYPE); } }
public PersonMatchResultsState updateMatchStatus(Entry entry, MatchStatus status, StateTransitionOption... options) { URI updateStatusUri = UriBuilder.fromUri(getSelfUri()).replaceQueryParam(FamilySearchOptions.STATUS, status.name().toLowerCase()).build(); ClientRequest request = createAuthenticatedRequest() .type(GedcomxConstants.GEDCOMX_JSON_MEDIA_TYPE) .accept(AtomModel.ATOM_GEDCOMX_JSON_MEDIA_TYPE) .entity(new Gedcomx().person(new Person().identifier(new Identifier(entry.getId(), IdentifierType.Persistent)))) .build(updateStatusUri, HttpMethod.POST); return ((FamilySearchStateFactory)this.stateFactory).newPersonMatchResultsState(request, invoke(request, options), this.accessToken); }
/** * Add Accept and Content-Type headers for basic JSON; this is used when retrieving RDF data * * @param request the request to add the headers to * @return the request with Accept and Content-Type headers for basic JSON added */ public static ClientRequest.Builder applyFamilySearchJson(ClientRequest.Builder request) { return request.accept(MediaType.APPLICATION_JSON_TYPE).type(MediaType.APPLICATION_JSON_TYPE); }