use of javax.ws.rs.core.StreamingOutput in project mica2 by obiba.
the class PublishedNetworksSearchResource method export.
@POST
@Path("/_export")
@Produces(MediaType.APPLICATION_OCTET_STREAM)
public Response export(@FormParam("query") String query, @FormParam("locale") @DefaultValue("en") String locale) {
if (!micaConfigService.getConfig().isNetworksExportEnabled())
throw new BadRequestException("Networks export not enabled");
JoinQuery joinQuery = searcher.makeJoinQuery(query);
List<String> networkIds = joinQueryExecutor.query(QueryType.NETWORK, joinQuery).getNetworkResultDto().getExtension(MicaSearch.NetworkResultDto.result).getNetworksList().stream().map(Mica.NetworkDto::getId).collect(toList());
ReportGenerator reporter = new NetworkCsvReportGenerator(publishedNetworkService.findByIds(networkIds, true), Strings.isNullOrEmpty(locale) ? joinQuery.getLocale() : locale, personService);
StreamingOutput stream = reporter::write;
return Response.ok(stream).header("Content-Disposition", "attachment; filename=\"Networks.zip\"").build();
}
use of javax.ws.rs.core.StreamingOutput in project mica2 by obiba.
the class PublishedNetworksSetResource method reportNetworks.
@GET
@Path("/documents/_report")
@Produces(MediaType.APPLICATION_OCTET_STREAM)
public Response reportNetworks(@PathParam("id") String id, @QueryParam("locale") @DefaultValue("en") String locale) {
DocumentSet documentSet = getSecuredDocumentSet(id);
ReportGenerator reporter = new NetworkCsvReportGenerator(networkSetService.getPublishedNetworks(documentSet, true), locale, personService);
StreamingOutput stream = reporter::write;
return Response.ok(stream).header("Content-Disposition", "attachment; filename=\"Networks.zip\"").build();
}
use of javax.ws.rs.core.StreamingOutput in project mica2 by obiba.
the class PublishedStudiesSearchResource method export.
@POST
@Path("/_export")
@Produces(MediaType.APPLICATION_OCTET_STREAM)
public Response export(@FormParam("query") String query, @FormParam("locale") @DefaultValue("en") String locale) {
if (!micaConfigService.getConfig().isStudiesExportEnabled())
throw new BadRequestException("Studies export not enabled");
JoinQuery joinQuery = searcher.makeJoinQuery(query);
List<String> studyIds = joinQueryExecutor.query(QueryType.STUDY, joinQuery).getStudyResultDto().getExtension(MicaSearch.StudyResultDto.result).getSummariesList().stream().map(Mica.StudySummaryDto::getId).collect(toList());
ReportGenerator reporter = new StudyCsvReportGenerator(publishedStudyService.findByIds(studyIds, true), Strings.isNullOrEmpty(locale) ? joinQuery.getLocale() : locale, personService);
StreamingOutput stream = reporter::write;
return Response.ok(stream).header("Content-Disposition", "attachment; filename=\"Studies.zip\"").build();
}
use of javax.ws.rs.core.StreamingOutput in project coprhd-controller by CoprHD.
the class AuditServiceTest method auditServiceTestJSON.
@Test
public void auditServiceTestJSON() throws WebApplicationException, IOException, JsonParseException {
deleteIfExists(JsonTestOutputFile);
DummyAuditLogRetriever dbAuditLogRetriever = new DummyAuditLogRetriever();
AuditService auditResource = new AuditService();
auditResource.setAuditLogRetriever(dbAuditLogRetriever);
DummyHttpHeaders header = new DummyHttpHeaders(MediaType.APPLICATION_JSON_TYPE);
Response r = auditResource.getAuditLogs("2012-08-08T00", "en_US", header);
Assert.assertNotNull(r);
Assert.assertEquals(Status.OK.getStatusCode(), r.getStatus());
Assert.assertTrue(r.getEntity() instanceof StreamingOutput);
StreamingOutput so = (StreamingOutput) r.getEntity();
File of = new File(JsonTestOutputFile);
OutputStream os = new FileOutputStream(of);
so.write(os);
os.close();
ObjectMapper mapper = null;
mapper = new ObjectMapper();
AnnotationIntrospector introspector = new JaxbAnnotationIntrospector();
mapper.getDeserializationConfig().withAnnotationIntrospector(introspector);
AuditLogs auditLogs = mapper.readValue(new File(JsonTestOutputFile), AuditLogs.class);
Assert.assertEquals(100, auditLogs.auditLogs.size());
deleteIfExists(JsonTestOutputFile);
}
use of javax.ws.rs.core.StreamingOutput in project coprhd-controller by CoprHD.
the class DbAuditLogRetrieverTest method auditServiceNullDBclientTestXML.
@Test
public void auditServiceNullDBclientTestXML() throws WebApplicationException, IOException, JAXBException {
deleteIfExists(XmlTestOutputFile);
DummyDBClient dbClient = null;
AuditService auditResource = new AuditService();
DbAuditLogRetriever dummyDbAuditLogRetriever = new DbAuditLogRetriever();
dummyDbAuditLogRetriever.setDbClient(dbClient);
auditResource.setAuditLogRetriever(dummyDbAuditLogRetriever);
DummyHttpHeaders header = new DummyHttpHeaders(MediaType.APPLICATION_XML_TYPE);
Response r = auditResource.getAuditLogs("2012-01-05T00:00", "en_US", header);
Assert.assertNotNull(r);
Assert.assertEquals(Status.OK.getStatusCode(), r.getStatus());
Assert.assertTrue(r.getEntity() instanceof StreamingOutput);
StreamingOutput so = (StreamingOutput) r.getEntity();
File of = new File(XmlTestOutputFile);
OutputStream os = new FileOutputStream(of);
try {
so.write(os);
} catch (InternalServerErrorException e) {
Assert.assertTrue(e.toString().contains("DB"));
}
os.close();
}
Aggregations