类javax.ws.rs.core.Request源码实例Demo

下面列出了怎么用javax.ws.rs.core.Request的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: render   文件: RenderImageService.java
@Path("v1/owner/{owner}/project/{project}/stack/{stack}/largeDataTileSource/{width}/{height}/small/{z}.png")
@GET
@Produces(RenderServiceUtil.IMAGE_PNG_MIME_TYPE)
@ApiOperation(
        tags = "Bounding Box Image APIs",
        value = "Render PNG image for the specified large data (type 5) section overview")
public Response renderLargeDataOverviewPng(@PathParam("owner") final String owner,
                                           @PathParam("project") final String project,
                                           @PathParam("stack") final String stack,
                                           @PathParam("width") final Integer width,
                                           @PathParam("height") final Integer height,
                                           @PathParam("z") final Double z,
                                           @QueryParam("maxOverviewWidthAndHeight") final Integer maxOverviewWidthAndHeight,
                                           @BeanParam final RenderQueryParameters renderQueryParameters,
                                           @QueryParam("maxTileSpecsToRender") final Integer maxTileSpecsToRender,
                                           @QueryParam("translateOrigin") final Boolean translateOrigin,
                                           @Context final Request request) {

    return renderLargeDataOverview(owner, project, stack, width, height, z,
                                   Utils.PNG_FORMAT, RenderServiceUtil.IMAGE_PNG_MIME_TYPE,
                                   maxOverviewWidthAndHeight, renderQueryParameters,
                                   maxTileSpecsToRender, translateOrigin, request);
}
 
源代码2 项目: neo4j-sparql-extension   文件: SPARQLQuery.java
/**
 * Query via GET.
 *
 * @see <a href="http://www.w3.org/TR/sparql11-protocol/#query-operation">
 * SPARQL 1.1 Protocol
 * </a>
 * @param req JAX-RS {@link Request} object
 * @param uriInfo JAX-RS {@link UriInfo} object
 * @param queryString the "query" query parameter
 * @param defgraphs the "default-graph-uri" query parameter
 * @param namedgraphs the "named-graph-uri" query parameter
 * @param inference the "inference" query parameter
 * @return the result of the SPARQL query
 */
@GET
@Produces({
	RDFMediaType.SPARQL_RESULTS_JSON,
	RDFMediaType.SPARQL_RESULTS_XML,
	RDFMediaType.SPARQL_RESULTS_CSV,
	RDFMediaType.SPARQL_RESULTS_TSV,
	RDFMediaType.RDF_TURTLE,
	RDFMediaType.RDF_NTRIPLES,
	RDFMediaType.RDF_XML,
	RDFMediaType.RDF_JSON
})
public Response query(
		@Context Request req,
		@Context UriInfo uriInfo,
		@QueryParam("query") String queryString,
		@QueryParam("default-graph-uri") List<String> defgraphs,
		@QueryParam("named-graph-uri") List<String> namedgraphs,
		@QueryParam("inference") String inference) {
	return handleQuery(
			req, uriInfo, queryString, defgraphs, namedgraphs, inference);
}
 
源代码3 项目: org.openntf.domino   文件: TermsResource.java
private ResponseBuilder getBuilder(final String jsonEntity, final Date lastMod, final boolean includeEtag, final Request request) {
	String etagSource = DominoUtils.md5(jsonEntity);
	EntityTag etag = new EntityTag(etagSource);
	ResponseBuilder berg = null;
	if (request != null) {
		berg = request.evaluatePreconditions(etag);
	}
	if (berg == null) {
		berg = Response.ok();
		if (includeEtag) {
			berg.tag(etag);
		}
		berg.type(MediaType.APPLICATION_JSON_TYPE);
		berg.entity(jsonEntity);
		berg.lastModified(lastMod);
		CacheControl cc = new CacheControl();
		cc.setMustRevalidate(true);
		cc.setPrivate(true);
		cc.setMaxAge(86400);
		cc.setNoTransform(true);
		berg.cacheControl(cc);
	}
	return berg;
}
 
源代码4 项目: olat   文件: LearningGroupWebService.java
/**
 * Return the group specified by the key of the group.
 * 
 * @response.representation.200.qname {http://www.example.com}groupVO
 * @response.representation.200.mediaType application/xml, application/json
 * @response.representation.200.doc A business group in the OLAT system
 * @response.representation.200.example {@link org.olat.connectors.rest.support.vo.Examples#SAMPLE_GROUPVO}
 * @param groupKey
 *            The key of the group
 * @param request
 *            The REST request
 * @param httpRequest
 *            The HTTP request
 * @return
 */
@GET
@Path("{groupKey}")
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
public Response findById(@PathParam("groupKey") final Long groupKey, @Context final Request request, @Context final HttpServletRequest httpRequest) {
    final BusinessGroup bg = businessGroupService.loadBusinessGroup(groupKey, false);
    if (bg == null) {
        return Response.serverError().status(Status.NOT_FOUND).build();
    }
    final Identity identity = RestSecurityHelper.getIdentity(httpRequest);
    if (!isGroupManager(httpRequest) && !businessGroupService.isIdentityInBusinessGroup(identity, bg)) {
        return Response.serverError().status(Status.UNAUTHORIZED).build();
    }

    final Date lastModified = bg.getLastModified();
    Response.ResponseBuilder response = request.evaluatePreconditions(lastModified);
    if (response == null) {
        final GroupVO vo = ObjectFactory.get(bg);
        response = Response.ok(vo);
    }
    return response.build();
}
 
源代码5 项目: ldp4j   文件: ServerFrontend.java
@POST
@Path(ENDPOINT_PATH)
public Response post(
	@Context UriInfo uriInfo,
	@PathParam(ENDPOINT_PATH_PARAM) String path,
	@Context HttpHeaders headers,
	@Context Request request,
	String entity) {
	OperationContext context =
		newOperationBuilder(HttpMethod.POST).
			withEndpointPath(path).
			withUriInfo(uriInfo).
			withHeaders(headers).
			withRequest(request).
			withEntity(entity).
			build();
	return
		EndpointControllerFactory.
			newController().
				createResource(context);
}
 
源代码6 项目: trellis   文件: TrellisHttpResource.java
/**
 * Perform a PATCH operation on an LDP Resource.
 *
 * @param uriInfo the URI info
 * @param secContext the security context
 * @param headers the HTTP headers
 * @param request the request
 * @param body the body
 * @return the async response
 */
@PATCH
@Timed
@Operation(summary = "Update a linked data resource")
public CompletionStage<Response> updateResource(@Context final Request request, @Context final UriInfo uriInfo,
        @Context final HttpHeaders headers, @Context final SecurityContext secContext,
        @RequestBody(description = "The update request for RDF resources, typically as SPARQL-Update",
                     required = true,
                     content = @Content(mediaType = "application/sparql-update")) final String body) {
    final TrellisRequest req = new TrellisRequest(request, uriInfo, headers, secContext);
    final String urlBase = getBaseUrl(req);
    final IRI identifier = buildTrellisIdentifier(req.getPath());
    final PatchHandler patchHandler = new PatchHandler(req, body, trellis, extensions, supportsCreateOnPatch,
            defaultJsonLdProfile, urlBase);

    return getParent(identifier).thenCombine(trellis.getResourceService().get(identifier), patchHandler::initialize)
        .thenCompose(patchHandler::updateResource).thenCompose(patchHandler::updateMemento)
        .thenApply(ResponseBuilder::build).exceptionally(this::handleException);
}
 
源代码7 项目: trellis   文件: TrellisHttpResource.java
/**
 * Perform a POST operation on a LDP Resource.
 *
 * @param uriInfo the URI info
 * @param secContext the security context
 * @param headers the HTTP headers
 * @param request the request
 * @param body the body
 * @return the async response
 */
@POST
@Timed
@Operation(summary = "Create a linked data resource")
public CompletionStage<Response> createResource(@Context final Request request, @Context final UriInfo uriInfo,
        @Context final HttpHeaders headers, @Context final SecurityContext secContext,
        @RequestBody(description = "The new resource") final InputStream body) {
    final TrellisRequest req = new TrellisRequest(request, uriInfo, headers, secContext);
    final String urlBase = getBaseUrl(req);
    final String path = req.getPath();
    final String identifier = getIdentifier(req);
    final String separator = path.isEmpty() ? "" : "/";

    final IRI parent = buildTrellisIdentifier(path);
    final IRI child = buildTrellisIdentifier(path + separator + identifier);
    final PostHandler postHandler = new PostHandler(req, parent, identifier, body, trellis, extensions, urlBase);

    return trellis.getResourceService().get(parent)
        .thenCombine(trellis.getResourceService().get(child), postHandler::initialize)
        .thenCompose(postHandler::createResource).thenCompose(postHandler::updateMemento)
        .thenApply(ResponseBuilder::build).exceptionally(this::handleException);
}
 
源代码8 项目: olat   文件: CourseWebService.java
/**
 * Get the editor tree model of the course by id
 * 
 * @response.representation.200.mediaType application/xml
 * @response.representation.200.doc The editor tree model of the course
 * @response.representation.401.doc The roles of the authenticated user are not sufficient
 * @response.representation.404.doc The course not found
 * @param courseId
 *            The course resourceable's id
 * @param httpRequest
 *            The HTTP request
 * @param request
 *            The REST request
 * @return It returns the XML representation of the <code>Editor model</code> object representing the course.
 */
@GET
@Path("editortreemodel")
@Produces(MediaType.APPLICATION_XML)
public Response findEditorTreeModelById(@PathParam("courseId") final Long courseId, @Context final HttpServletRequest httpRequest, @Context final Request request) {
    if (!isAuthor(httpRequest)) {
        return Response.serverError().status(Status.UNAUTHORIZED).build();
    }

    final ICourse course = loadCourse(courseId);
    if (course == null) {
        return Response.serverError().status(Status.NOT_FOUND).build();
    } else if (!isAuthorEditor(course, httpRequest)) {
        return Response.serverError().status(Status.UNAUTHORIZED).build();
    }
    final VFSItem editorModelItem = course.getCourseBaseContainer().resolve("editortreemodel.xml");
    final Date lastModified = new Date(editorModelItem.getLastModified());

    final Response.ResponseBuilder response = request.evaluatePreconditions(lastModified);
    if (response == null) {
        return Response.ok(myXStream.toXML(course.getEditorTreeModel())).build();
    }
    return response.build();
}
 
源代码9 项目: trellis   文件: TrellisWebDAV.java
/**
 * Get properties for a resource.
 * @param response the response
 * @param request the request
 * @param uriInfo the URI info
 * @param headers the headers
 * @param propfind the propfind
 * @throws ParserConfigurationException if the XML parser is not properly configured
 */
@PROPFIND
@Consumes({APPLICATION_XML})
@Produces({APPLICATION_XML})
@Timed
public void getProperties(@Suspended final AsyncResponse response, @Context final Request request,
        @Context final UriInfo uriInfo, @Context final HttpHeaders headers, final DavPropFind propfind)
        throws ParserConfigurationException {
    final TrellisRequest req = new TrellisRequest(request, uriInfo, headers);
    final IRI identifier = rdf.createIRI(TRELLIS_DATA_PREFIX + req.getPath());
    final String location = fromUri(getBaseUrl(req)).path(req.getPath()).build().toString();
    final Document doc = getDocument();
    services.getResourceService().get(identifier)
        .thenApply(this::checkResource)
        .thenApply(propertiesToMultiStatus(doc, location, propfind))
        .thenApply(multistatus -> status(MULTI_STATUS).entity(multistatus).build())
        .exceptionally(this::handleException).thenApply(response::resume);
}
 
源代码10 项目: development   文件: RestResource.java
/**
 * Wrapper for backend GET commands. Prepares, validates and revises data
 * for commands and assembles responses.
 * 
 * @param request
 *            the request context
 * @param backend
 *            the backend command
 * @param params
 *            the request parameters
 * @param id
 *            true if id needs to be validated
 * @return the response with representation or -collection
 */
protected <R extends Representation, P extends RequestParameters> Response get(
        Request request, RestBackend.Get<R, P> backend, P params,
        boolean id) throws Exception {

    int version = getVersion(request);

    prepareData(version, params, id, null, false);

    Representation item = backend.get(params);

    reviseData(version, item);

    String tag = "";
    if (item.getETag() != null) {
        tag = item.getETag().toString();
    }

    return Response.ok(item).tag(tag).build();
}
 
源代码11 项目: ldp4j   文件: ServerFrontend.java
@DELETE
@Path(ENDPOINT_PATH)
public Response delete(
	@Context UriInfo uriInfo,
	@PathParam(ENDPOINT_PATH_PARAM) String path,
	@Context HttpHeaders headers,
	@Context Request request) {
	OperationContext context =
		newOperationBuilder(HttpMethod.DELETE).
			withEndpointPath(path).
			withUriInfo(uriInfo).
			withHeaders(headers).
			withRequest(request).
			build();
	return
		EndpointControllerFactory.
			newController().
				deleteResource(context);
}
 
public Response getTaskCountByCandidateGroupReport(Request request) {
  Variant variant = request.selectVariant(VARIANTS);
  if (variant != null) {
    MediaType mediaType = variant.getMediaType();

    if (MediaType.APPLICATION_JSON_TYPE.equals(mediaType)) {
      List<TaskCountByCandidateGroupResultDto> result = getTaskCountByCandidateGroupResultAsJson();
      return Response.ok(result, mediaType).build();
    }
    else if (APPLICATION_CSV_TYPE.equals(mediaType) || TEXT_CSV_TYPE.equals(mediaType)) {
      String csv = getReportResultAsCsv();
      return Response
        .ok(csv, mediaType)
        .header("Content-Disposition", "attachment; filename=\"task-count-by-candidate-group.csv\"")
        .build();
    }
  }
  throw new InvalidRequestException(Status.NOT_ACCEPTABLE, "No acceptable content-type found");
}
 
源代码13 项目: eplmp   文件: DocumentBinaryResourceTest.java
/**
 * Test to download a document file as a regular user who has no read access on it
 *
 * @throws Exception
 */
@Test
public void downloadDocumentFileAsUserWithNoAccessRights() throws Exception {

    //Given
    Request request = Mockito.mock(Request.class);
    String fullName = ResourceUtil.WORKSPACE_ID + "/documents/" + ResourceUtil.DOCUMENT_ID + "/" + ResourceUtil.VERSION + "/" + ResourceUtil.ITERATION + "/" + ResourceUtil.FILENAME1;

    BinaryResource binaryResource = new BinaryResource(ResourceUtil.FILENAME1, ResourceUtil.DOCUMENT_SIZE, new Date());
    Mockito.when(documentService.canAccess(new DocumentIterationKey(ResourceUtil.WORKSPACE_ID, ResourceUtil.DOCUMENT_ID, ResourceUtil.VERSION, ResourceUtil.ITERATION))).thenReturn(false);
    Mockito.when(documentService.getBinaryResource(fullName)).thenReturn(binaryResource);
    Mockito.when(storageManager.getBinaryResourceInputStream(binaryResource)).thenReturn(new FileInputStream(new File(ResourceUtil.getFilePath(ResourceUtil.SOURCE_FILE_STORAGE + ResourceUtil.FILENAME1))));
    Mockito.when(publicEntityManager.getBinaryResourceForSharedEntity(fullName)).thenReturn(binaryResource);
    Mockito.when(contextManager.isCallerInRole(UserGroupMapping.REGULAR_USER_ROLE_ID)).thenReturn(true);
    Mockito.when(publicEntityManager.canAccess(Matchers.any(DocumentIterationKey.class))).thenReturn(false);

    //When
    try {
        Response response = documentBinaryResource.downloadDocumentFile(request, ResourceUtil.WORKSPACE_ID, ResourceUtil.DOCUMENT_ID, ResourceUtil.VERSION, ResourceUtil.ITERATION, ResourceUtil.FILENAME1, ResourceUtil.FILE_TYPE, null, ResourceUtil.RANGE, null, null, null);
        assertTrue(false);
    } catch (NotAllowedException e) {
        assertTrue(true);
    }

}
 
源代码14 项目: eplmp   文件: PartBinaryResourceTest.java
/**
 * Test to download a part file as a guest and the part is public
 *
 * @throws Exception
 */
@Test
public void downloadPartFileAsGuestPartPublic() throws Exception {

    //Given
    Request request = Mockito.mock(Request.class);
    BinaryResource binaryResource = Mockito.spy(new BinaryResource(ResourceUtil.FILENAME1, ResourceUtil.PART_SIZE, new Date()));
    Mockito.when(storageManager.getBinaryResourceInputStream(binaryResource)).thenReturn(new FileInputStream(new File(ResourceUtil.getFilePath(ResourceUtil.SOURCE_FILE_STORAGE + ResourceUtil.FILENAME1))));
    Mockito.when(contextManager.isCallerInRole(UserGroupMapping.REGULAR_USER_ROLE_ID)).thenReturn(false);
    Mockito.when(publicEntityManager.canAccess(Mockito.any(PartIterationKey.class))).thenReturn(true);
    Mockito.when(productService.canAccess(Matchers.any(PartIterationKey.class))).thenReturn(false);
    Mockito.when(storageManager.getBinaryResourceInputStream(binaryResource)).thenReturn(new FileInputStream(new File(ResourceUtil.getFilePath(ResourceUtil.SOURCE_PART_STORAGE + ResourceUtil.TEST_PART_FILENAME1))));
    Mockito.when(productService.getPartRevision(Matchers.any(PartRevisionKey.class))).thenReturn(new PartRevision());

    //When
    Mockito.when(publicEntityManager.getPublicBinaryResourceForPart(Matchers.anyString())).thenReturn(binaryResource);
    Response response = partBinaryResource.downloadPartFile(request, ResourceUtil.WORKSPACE_ID,
            ResourceUtil.PART_NUMBER, ResourceUtil.VERSION, ResourceUtil.ITERATION, "attached-files",
            ResourceUtil.TEST_PART_FILENAME1, ResourceUtil.FILE_TYPE, null, ResourceUtil.RANGE, null, null, null);
    //Then
    assertNotNull(response);
    assertEquals(response.getStatus(), 206);
    assertNotNull(response.getEntity());
    assertTrue(response.getEntity() instanceof BinaryResourceBinaryStreamingOutput);
}
 
源代码15 项目: eplmp   文件: PartBinaryResourceTest.java
/**
 * Test to download a part file as a regular user who has read access
 *
 * @throws Exception
 */
@Test
public void downloadPartFileAsRegularUserReadAccess() throws Exception {
    //Given
    Request request = Mockito.mock(Request.class);
    BinaryResource binaryResource = Mockito.spy(new BinaryResource(ResourceUtil.FILENAME1, ResourceUtil.PART_SIZE, new Date()));
    Mockito.when(storageManager.getBinaryResourceInputStream(binaryResource)).thenReturn(new FileInputStream(new File(ResourceUtil.getFilePath(ResourceUtil.SOURCE_FILE_STORAGE + ResourceUtil.FILENAME1))));
    Mockito.when(contextManager.isCallerInRole(UserGroupMapping.REGULAR_USER_ROLE_ID)).thenReturn(true);
    Mockito.when(productService.getBinaryResource(Matchers.anyString())).thenReturn(binaryResource);
    Mockito.when(productService.canAccess(Matchers.any(PartIterationKey.class))).thenReturn(true);
    Mockito.when(productService.getPartRevision(Matchers.any(PartRevisionKey.class))).thenReturn(new PartRevision());
    Mockito.when(storageManager.getBinaryResourceInputStream(binaryResource)).thenReturn(new FileInputStream(new File(ResourceUtil.getFilePath(ResourceUtil.SOURCE_PART_STORAGE + ResourceUtil.TEST_PART_FILENAME1))));
    Mockito.when(publicEntityManager.getPublicBinaryResourceForPart(Matchers.anyString())).thenReturn(binaryResource);
    //When
    Response response = partBinaryResource.downloadPartFile(request, ResourceUtil.WORKSPACE_ID,
            ResourceUtil.PART_NUMBER, ResourceUtil.VERSION, ResourceUtil.ITERATION, "attached-files",
            ResourceUtil.TEST_PART_FILENAME1, ResourceUtil.FILE_TYPE, null, ResourceUtil.RANGE, null, null, null);
    //Then
    assertNotNull(response);
    assertEquals(response.getStatus(), 206);
    assertNotNull(response.getEntity());
    assertTrue(response.getEntity() instanceof BinaryResourceBinaryStreamingOutput);

}
 
源代码16 项目: neo4j-sparql-extension   文件: SPARQLQuery.java
/**
 * Query via GET (with inference).
 *
 * @see <a href="http://www.w3.org/TR/sparql11-protocol/#query-operation">
 * SPARQL 1.1 Protocol
 * </a>
 * @param req JAX-RS {@link Request} object
 * @param uriInfo JAX-RS {@link UriInfo} object
 * @param queryString the "query" query parameter
 * @param defgraphs the "default-graph-uri" query parameter
 * @param namedgraphs the "named-graph-uri" query parameter
 * @return the result of the SPARQL query
 */
@GET
@Path("/inference")
@Produces({
	RDFMediaType.SPARQL_RESULTS_JSON,
	RDFMediaType.SPARQL_RESULTS_XML,
	RDFMediaType.SPARQL_RESULTS_CSV,
	RDFMediaType.SPARQL_RESULTS_TSV,
	RDFMediaType.RDF_TURTLE,
	RDFMediaType.RDF_NTRIPLES,
	RDFMediaType.RDF_XML,
	RDFMediaType.RDF_JSON
})
public Response queryInference(
		@Context Request req,
		@Context UriInfo uriInfo,
		@QueryParam("query") String queryString,
		@QueryParam("default-graph-uri") List<String> defgraphs,
		@QueryParam("named-graph-uri") List<String> namedgraphs) {
	return handleQuery(
			req, uriInfo, queryString, defgraphs, namedgraphs, "true");
}
 
源代码17 项目: org.openntf.domino   文件: FramedResource.java
private ResponseBuilder getBuilder(final String jsonEntity, final Date lastMod, final boolean includeEtag, final Request request) {
	String etagSource = DominoUtils.md5(jsonEntity);
	EntityTag etag = new EntityTag(etagSource);
	ResponseBuilder berg = null;
	if (request != null) {
		berg = request.evaluatePreconditions(etag);
	}
	if (berg == null) {
		// System.out.println("TEMP DEBUG creating a new builder");
		berg = Response.ok();
		if (includeEtag) {
			berg.tag(etag);
		}
		berg.type(MediaType.APPLICATION_JSON_TYPE);
		berg.entity(jsonEntity);
		berg.lastModified(lastMod);
		CacheControl cc = new CacheControl();
		cc.setMustRevalidate(true);
		cc.setPrivate(true);
		cc.setMaxAge(86400);
		cc.setNoTransform(true);
		berg.cacheControl(cc);
	}
	return berg;
}
 
源代码18 项目: micro-integrator   文件: PeopleRestService.java
@Produces({ MediaType.APPLICATION_JSON })
@Path("/options")
@OPTIONS
public Response getOptions(@Context HttpHeaders headers, @Context Request request) {
    return Response.ok().header(CorsHeaderConstants.HEADER_AC_ALLOW_METHODS, "GET POST DELETE PUT OPTIONS")
            .header(CorsHeaderConstants.HEADER_AC_ALLOW_CREDENTIALS, "false")
            .header(CorsHeaderConstants.HEADER_AC_REQUEST_HEADERS, MediaType.APPLICATION_JSON).build();
}
 
源代码19 项目: Processor   文件: Item.java
public Item(@Context UriInfo uriInfo, @Context Request request, @Context MediaTypes mediaTypes,
        @Context Service service, @Context com.atomgraph.processor.model.Application application, @Context Ontology ontology, @Context TemplateCall templateCall,
        @Context HttpHeaders httpHeaders, @Context ResourceContext resourceContext)
{
    super(uriInfo, request, mediaTypes,
            service, application, ontology, templateCall,
            httpHeaders, resourceContext);
    if (log.isDebugEnabled()) log.debug("Constructing {} as direct indication of GRAPH {}", getClass(), uriInfo.getAbsolutePath());
}
 
@Test
public void injectsRequest() throws Exception {
    processor.addApplication(new Application() {
        @Override
        public Set<Class<?>> getClasses() {
            return newHashSet(RequestResource.class);
        }
    });
    ContainerResponse response = launcher.service("POST", "/g/1", "", null, null, null);

    assertTrue(String.format("Expected %s injected", Request.class), response.getEntity() instanceof Request);
}
 
源代码21 项目: tessera   文件: ApiResourceTest.java
@Test
public void testGetHtmlDoc() throws Exception {
    Request request = mock(Request.class);
    Variant variant = mock(Variant.class);

    when(variant.getMediaType()).thenReturn(MediaType.TEXT_HTML_TYPE);

    when(request.selectVariant(any(List.class))).thenReturn(variant);

    Response result = apiResource.api(request);

    assertThat(result.getEntity()).isNotNull();
    assertThat(result.getStatus()).isEqualTo(200);
    assertThat(result.getMediaType()).isEqualTo(MediaType.TEXT_HTML_TYPE);
}
 
源代码22 项目: semanticMDR   文件: SPARQLService.java
/**
 * Runs SPARQL queries
 * 
 * @param type
 *            Result Format: N3, N-TRIPLE, RDF/XML, RDF/XML-ABBREV, TURTLE
 * @param query
 *            Sparql for the query
 * @return
 */
@GET
@Produces({ WebUtil.MEDIA_TYPE_APPLICATION_NTRIPLE,
		WebUtil.MEDIA_TYPE_APPLICATION_RDFJSON,
		WebUtil.MEDIA_TYPE_APPLICATION_RDFXML, MediaType.TEXT_PLAIN,
		WebUtil.MEDIA_TYPE_TEXT_N3, WebUtil.MEDIA_TYPE_TEXT_TURTLE })
public Response selectQuery(@QueryParam("sparql") String query,
		@Context Request request) {

	Variant variant = request.selectVariant(WebUtil.VARIANTS);
	MediaType mediaType = variant.getMediaType();

	Repository repository = RepositoryManager.getInstance().getRepository();
	OntModel ontModel = repository.getMDRDatabase().getOntModel();
	Query q = null;

	try {
		query = URLDecoder.decode(query, "UTF-8");
		q = QueryFactory.create(query);
	} catch (Exception exc) {
		logger.error("Error during the creation of the SPARQL query", exc);
		return Response.serverError().build();
	}

	QueryExecution qexec = QueryExecutionFactory.create(q, ontModel);
	Model resultModel = null;
	if (q.isSelectType()) {
		ResultSet resultSet = qexec.execSelect();
		resultModel = ResultSetFormatter.toModel(resultSet);
	} else {
		throw new WebApplicationException(Status.UNAUTHORIZED);
	}
	qexec.close();

	graphStream.setModel(resultModel);
	graphStream.setLanguage(WebUtil.getSerializationLanguage(mediaType
			.toString()));

	return Response.ok(graphStream).build();
}
 
源代码23 项目: proarc   文件: DefaultDisseminationHandler.java
@Override
    public Response getDissemination(Request httpRequest) throws DigitalObjectException, DigitalObjectNotFoundException {
        String pid = fobject.getPid();
        if (dsId == null) {
            return Response.ok(fobject.asText(), MediaType.TEXT_XML_TYPE)
                    .header("Content-Disposition", "inline; filename=\"" + pid + ".xml\"")
                    .build();
        }
        if (fobject instanceof LocalObject) {
            LocalObject lobject = (LocalObject) fobject;
            BinaryEditor loader = BinaryEditor.dissemination(lobject, dsId);
            if (loader == null) {
                throw new DigitalObjectNotFoundException(pid, null, dsId, null, null);
            }
            File entity = loader.read();
            if (entity == null) {
                throw new DigitalObjectNotFoundException(pid, null, dsId, "no content", null);
            }

            Date lastModification = new Date(loader.getLastModified());
            ResponseBuilder evaluatePreconditions = httpRequest == null
                    ? null : httpRequest.evaluatePreconditions(lastModification);
            if (evaluatePreconditions != null) {
                return evaluatePreconditions.build();
            }

            return Response.ok(entity, loader.getProfile().getDsMIME())
                    .header("Content-Disposition", "inline; filename=\"" + entity.getName() + '"')
                    .lastModified(lastModification)
//                    .cacheControl(null)
//                    .expires(new Date(2100, 1, 1))
                    .build();
        } else if (fobject instanceof RemoteObject) {
            RemoteObject remote = (RemoteObject) fobject;
            return getResponse(remote, dsId);
        }
        throw new IllegalStateException("unsupported: " + fobject.getClass());
    }
 
@PATCH
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Response patchDocumentByUnid(final String requestEntity, @Context final UriInfo uriInfo,
		@PathParam(Routes.NAMESPACE) final String namespace,
		@HeaderParam(Headers.IF_UNMODIFIED_SINCE) final String ifUnmodifiedSince, @Context final Request request)
				throws JsonException, IOException {
	ParamMap pm = Parameters.toParamMap(uriInfo);
	Response response = updateFrameByMetaid(requestEntity, namespace, ifUnmodifiedSince, pm, false, request);
	return response;
}
 
源代码25 项目: opencps-v2   文件: OneGateController.java
@GET
@Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, MediaType.APPLICATION_FORM_URLENCODED })
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
@Path("/serviceconfigs/processes")
public Response getServiceconfigs(@Context HttpServletRequest request, @Context HttpHeaders header,
		@Context Company company, @Context Locale locale, @Context User user,
		@Context ServiceContext serviceContext, @QueryParam("domain") String domain,
		@QueryParam("public_") String public_, @Context Request requestCC);
 
源代码26 项目: opencps-v2   文件: DataManagement.java
@GET
@Path("/{code}")
@Consumes({ MediaType.APPLICATION_FORM_URLENCODED })
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
public Response getDictCollectionDetail(@Context HttpServletRequest request, @Context HttpHeaders header,
		@Context Company company, @Context Locale locale, @Context User user, @Context ServiceContext serviceContext,
		@ApiParam(value = "code that need to be get detail", required = true) @PathParam("code") String code, @Context Request requestCC);
 
源代码27 项目: opencps-v2   文件: ServiceInfoManagement.java
@GET
@Path("/statistics/levels")
@Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, MediaType.APPLICATION_FORM_URLENCODED })
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, MediaType.APPLICATION_FORM_URLENCODED })
@ApiOperation(value = "Get StatisticByLevel", response = StatisticsLevelResultsModel.class)
@ApiResponses(value = {
		@ApiResponse(code = HttpURLConnection.HTTP_OK, message = "Returns a list of ServiceInfo", response = StatisticsLevelResultsModel.class),
		@ApiResponse(code = HttpURLConnection.HTTP_NOT_FOUND, message = "Not found", response = ExceptionModel.class),
		@ApiResponse(code = HttpURLConnection.HTTP_FORBIDDEN, message = "Access denied", response = ExceptionModel.class) })
public Response getStatisticByLevel(@Context HttpServletRequest request, @Context HttpHeaders header,
		@Context Company company, @Context Locale locale, @Context User user,
		@Context ServiceContext serviceContext, @Context Request requestCC);
 
源代码28 项目: opencps-v2   文件: ServiceInfoManagement.java
@GET
@Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, MediaType.APPLICATION_FORM_URLENCODED })
@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON, MediaType.APPLICATION_FORM_URLENCODED })
@ApiOperation(value = "Get ServiceInfo", response = ServiceInfoResultsModel.class)
@ApiResponses(value = {
		@ApiResponse(code = HttpURLConnection.HTTP_OK, message = "Returns a list of ServiceInfo", response = ServiceInfoResultsModel.class),
		@ApiResponse(code = HttpURLConnection.HTTP_UNAUTHORIZED, message = "Unauthorized", response = ExceptionModel.class),
		@ApiResponse(code = HttpURLConnection.HTTP_NOT_FOUND, message = "Not found", response = ExceptionModel.class),
		@ApiResponse(code = HttpURLConnection.HTTP_FORBIDDEN, message = "Access denied", response = ExceptionModel.class) })
public Response getServiceInfos(@Context HttpServletRequest request, @Context HttpHeaders header,
		@Context Company company, @Context Locale locale, @Context User user,
		@Context ServiceContext serviceContext,
		@ApiParam(value = "query params for search") @BeanParam ServiceInfoSearchModel search, @Context Request requestCC);
 
源代码29 项目: render   文件: RenderImageService.java
@Path("v1/owner/{owner}/project/{project}/stack/{stack}/z/{z}/box/{x},{y},{width},{height},{scale}/png-image")
@GET
@Produces(RenderServiceUtil.IMAGE_PNG_MIME_TYPE)
@ApiOperation(
        tags = "Bounding Box Image APIs",
        value = "Render PNG image for the specified bounding box")
public Response renderPngImageForBox(@PathParam("owner") final String owner,
                                     @PathParam("project") final String project,
                                     @PathParam("stack") final String stack,
                                     @PathParam("x") final Double x,
                                     @PathParam("y") final Double y,
                                     @PathParam("z") final Double z,
                                     @PathParam("width") final Integer width,
                                     @PathParam("height") final Integer height,
                                     @PathParam("scale") final Double scale,
                                     @BeanParam final RenderQueryParameters renderQueryParameters,
                                     @QueryParam("maxTileSpecsToRender") final Integer maxTileSpecsToRender,
                                     @Context final Request request) {

    LOG.info("renderPngImageForBox: entry");

    final ResponseHelper responseHelper = new ResponseHelper(request, getStackMetaData(owner, project, stack));
    if (responseHelper.isModified()) {
        final RenderParameters renderParameters =
                getRenderParametersForGroupBox(owner, project, stack, null,
                                               x, y, z, width, height, scale,
                                               renderQueryParameters);
        return RenderServiceUtil.renderPngImage(renderParameters, maxTileSpecsToRender, responseHelper);
    } else {
        return responseHelper.getNotModifiedResponse();
    }
}
 
源代码30 项目: opencps-v2   文件: ServiceInfoManagementImpl.java
@Override
	public Response getStatisticByLevel(HttpServletRequest request, HttpHeaders header, Company company, Locale locale,
			User user, ServiceContext serviceContext, Request requestCC) {

		ServiceInfoActions actions = new ServiceInfoActionsImpl();
		
		long groupId = GetterUtil.getLong(header.getHeaderString("groupId"));
		
		JSONObject results = JSONFactoryUtil.createJSONObject();
		
		try {
			results = actions.getStatisticByLevel(serviceContext, groupId);
			
//			_log.info(results);
//			EntityTag etag = new EntityTag(Integer.toString(Long.valueOf(groupId).hashCode()));
//		    ResponseBuilder builder = requestCC.evaluatePreconditions(etag);
//		    
//			if (OpenCPSConfigUtil.isHttpCacheEnable() && builder == null) {
//				builder = Response.status(200);
//				CacheControl cc = new CacheControl();
//				cc.setMaxAge(OpenCPSConfigUtil.getHttpCacheMaxAge());
//				cc.setPrivate(true);	
//				builder.tag(etag);
//				return builder.status(200).entity(JSONFactoryUtil.looseSerialize(results)).cacheControl(cc).build();
//			}
//			else {
//				return Response.status(200).entity(JSONFactoryUtil.looseSerialize(results)).build();				
//			}
			
			return Response.status(200).entity(JSONFactoryUtil.looseSerialize(results)).build();
		} catch (Exception e) {
			return BusinessExceptionImpl.processException(e);
		}
	}