Search in sources :

Example 1 with PATCH

use of javax.ws.rs.PATCH in project edammap by edamontology.

the class Resource method patch.

/* TODO JSON
	// curl -H "Content-Type: application/json" -X POST -d '{"threads":2,"reportPaginationSize":"7","mapperArgs":{"algorithmArgs":{"compoundWords":2}}}' http://localhost:8080/api
	@POST
	@Consumes(MediaType.APPLICATION_JSON)
	@Produces(MediaType.TEXT_PLAIN)
	public String json(JsonObject json) {
		StringBuilder sb = new StringBuilder();
		for (Map.Entry<String, JsonValue> entry : json.entrySet()) {
			if (entry.getValue().getValueType() == JsonValue.ValueType.STRING || entry.getValue().getValueType() == JsonValue.ValueType.NUMBER) {
				sb.append(entry.getKey()).append(" --> ").append(entry.getValue().toString()).append("\n");
			}
		}
		return sb.toString();
	}
*/
private Response patch(String requestString, Request request, String resource, Class<?> clazz, boolean doc, int max) {
    try {
        logger.info("PATCH {} {} from {}", resource, requestString, request.getRemoteAddr());
        // TODO get actual args from form
        FetcherArgs fetcherArgs = new FetcherArgs();
        fetcherArgs.setPrivateArgs(Server.args.getFetcherPrivateArgs());
        Response response = Response.ok(Server.processor.getDatabaseEntries(QueryLoader.fromServerEntry(requestString, clazz, max), fetcherArgs, clazz, doc).stream().map(p -> p.toStringId() + " : " + p.getStatusString(fetcherArgs).toUpperCase(Locale.ROOT)).collect(Collectors.joining("\n"))).build();
        logger.info("PATCHED {} {}", resource, response.getEntity());
        return response;
    } catch (IllegalArgumentException e) {
        logger.error("Exception!", e);
        return Response.status(Status.BAD_REQUEST).entity(e.getMessage()).build();
    } catch (Throwable e) {
        logger.error("Exception!", e);
        throw e;
    }
}
Also used : Response(javax.ws.rs.core.Response) Results(org.edamontology.edammap.core.benchmarking.Results) Query(org.edamontology.edammap.core.query.Query) Request(org.glassfish.grizzly.http.server.Request) Produces(javax.ws.rs.Produces) GET(javax.ws.rs.GET) URISyntaxException(java.net.URISyntaxException) Path(javax.ws.rs.Path) Benchmark(org.edamontology.edammap.core.benchmarking.Benchmark) PreProcessor(org.edamontology.edammap.core.preprocessing.PreProcessor) Output(org.edamontology.edammap.core.output.Output) ConceptProcessed(org.edamontology.edammap.core.processing.ConceptProcessed) QueryLoader(org.edamontology.edammap.core.query.QueryLoader) MediaType(javax.ws.rs.core.MediaType) Consumes(javax.ws.rs.Consumes) FetcherArgs(org.edamontology.pubfetcher.FetcherArgs) Locale(java.util.Locale) Map(java.util.Map) URI(java.net.URI) PATCH(javax.ws.rs.PATCH) ParseException(java.text.ParseException) Status(javax.ws.rs.core.Response.Status) POST(javax.ws.rs.POST) Context(javax.ws.rs.core.Context) Files(java.nio.file.Files) Idf(org.edamontology.edammap.core.idf.Idf) IOException(java.io.IOException) QueryProcessed(org.edamontology.edammap.core.processing.QueryProcessed) UUID(java.util.UUID) Mapping(org.edamontology.edammap.core.mapping.Mapping) Instant(java.time.Instant) Collectors(java.util.stream.Collectors) EdamUri(org.edamontology.edammap.core.edam.EdamUri) CoreArgs(org.edamontology.edammap.core.args.CoreArgs) QueryType(org.edamontology.edammap.core.query.QueryType) MultivaluedMap(javax.ws.rs.core.MultivaluedMap) ServerInput(org.edamontology.edammap.core.input.ServerInput) List(java.util.List) Logger(org.apache.logging.log4j.Logger) Response(javax.ws.rs.core.Response) Webpage(org.edamontology.pubfetcher.Webpage) Paths(java.nio.file.Paths) Publication(org.edamontology.pubfetcher.Publication) UriInfo(javax.ws.rs.core.UriInfo) Collections(java.util.Collections) LogManager(org.apache.logging.log4j.LogManager) Mapper(org.edamontology.edammap.core.mapping.Mapper) FetcherArgs(org.edamontology.pubfetcher.FetcherArgs)

Example 2 with PATCH

use of javax.ws.rs.PATCH in project Payara by payara.

the class RestEndpointModel method getRequestMethodAnnotation.

/**
 * Reads request method annotations to determine the request method.
 *
 * @param element the annotated element
 * @return the correct {@link HttpMethod}
 */
private static String getRequestMethodAnnotation(AnnotatedElement element) {
    GET get = element.getAnnotation(GET.class);
    if (get != null) {
        return HttpMethod.GET;
    }
    POST post = element.getAnnotation(POST.class);
    if (post != null) {
        return HttpMethod.POST;
    }
    PUT put = element.getAnnotation(PUT.class);
    if (put != null) {
        return HttpMethod.PUT;
    }
    DELETE delete = element.getAnnotation(DELETE.class);
    if (delete != null) {
        return HttpMethod.DELETE;
    }
    HEAD head = element.getAnnotation(HEAD.class);
    if (head != null) {
        return HttpMethod.HEAD;
    }
    OPTIONS options = element.getAnnotation(OPTIONS.class);
    if (options != null) {
        return HttpMethod.OPTIONS;
    }
    PATCH patch = element.getAnnotation(PATCH.class);
    if (patch != null) {
        return HttpMethod.PATCH;
    }
    return null;
}
Also used : HEAD(javax.ws.rs.HEAD) DELETE(javax.ws.rs.DELETE) POST(javax.ws.rs.POST) GET(javax.ws.rs.GET) OPTIONS(javax.ws.rs.OPTIONS) PUT(javax.ws.rs.PUT) PATCH(javax.ws.rs.PATCH)

Aggregations

GET (javax.ws.rs.GET)2 PATCH (javax.ws.rs.PATCH)2 POST (javax.ws.rs.POST)2 IOException (java.io.IOException)1 URI (java.net.URI)1 URISyntaxException (java.net.URISyntaxException)1 Files (java.nio.file.Files)1 Paths (java.nio.file.Paths)1 ParseException (java.text.ParseException)1 Instant (java.time.Instant)1 Collections (java.util.Collections)1 List (java.util.List)1 Locale (java.util.Locale)1 Map (java.util.Map)1 UUID (java.util.UUID)1 Collectors (java.util.stream.Collectors)1 Consumes (javax.ws.rs.Consumes)1 DELETE (javax.ws.rs.DELETE)1 HEAD (javax.ws.rs.HEAD)1 OPTIONS (javax.ws.rs.OPTIONS)1